fix mkdepend to work on OS/2



17 years ago
14 years ago


(Reporter: jhpedemonte, Assigned: jhpedemonte)


Firefox Tracking Flags

(Not tracked)



(3 attachments, 1 obsolete attachment)



17 years ago

Comment 1

17 years ago
Created attachment 77915 [details] [diff] [review]

Are these the only changes (in the mk files) I need to make in order to
dependencies to work on OS/2?
Comment on attachment 77915 [details] [diff] [review]


That should be all you need to get mkdepend working.  Depending upon how much
of a slowdown that you see from the depend cycle, you may want to turn
autodependencies *off* by default like it is on win32.	See .
Attachment #77915 - Flags: review+

Comment 3

17 years ago
cls: I don't know much about dependencies;  what are the
advantages/disadvantages to disabling auto dependency generation?
Speed of a clobber build is the biggest tradeoff.  To insure that individual
dependencies are correct, we run mkdepend for each srcfile that would be
compiled.  This can take awhile so most people like to disable it for clobber
builds.  For partiy with the nmake builds, we turned it off for win32 by
default.  For depend builds (make alldep), it really shouldn't matter.

Comment on attachment 77915 [details] [diff] [review]
patch for drivers
Attachment #77915 - Flags: approval+

Comment 6

17 years ago
Patch has been checked in.
Last Resolved: 17 years ago
Resolution: --- → FIXED

Comment 7

17 years ago
Reopen:  Due to a bug in our version of gmake, our build stops when updating
dependencies with an "Error 127".  Need to stop dependency checking for now.
Resolution: FIXED → ---
Eek. This is going to need to be backed out on the branch as well. :-/
Yeah I'll take care of the approvals.
Created attachment 79210 [details] [diff] [review]
Never mind - turn off mkdepend

Our gmake is broke so we can't do dependencies.

Turn it off.
Comment on attachment 79210 [details] [diff] [review]
Never mind - turn off mkdepend

Attachment #79210 - Flags: review+
Comment on attachment 79210 [details] [diff] [review]
Never mind - turn off mkdepend

a=asa (on behalf of drivers) for checkin to the 1.0 branch
Attachment #79210 - Flags: approval+
Checked in. We'll leave this around so that Javier can fix it some day :)
Assignee: seawood → pedemont
adding fixed1.0.0 keyword (branch resolution). This bug has comments saying it
was fixed on the 1.0 branch and a bonsai checkin comment that agrees. To verify
the bug has been fixed on the 1.0 branch please replace the fixed1.0.0 keyword
with verified1.0.0.
Keywords: fixed1.0.0
Oh bother. Forgot about this bug.  So we just made mkdepend failure a build
stopper (bug 179895) so the OS/2 tree burns.  I see that the OS/2 ifdefs
regarding MKDEPEND have been removed from  Is mkdepend supposed to
work or does it need to be disabled again?

Comment 16

16 years ago
Seawood:  I enabled mkdepend in my build again.  The first time through, with a
clean tree, everything is fine.  It creates the dependencies, no problems.  The
second time through, as soon as it needs to update one of the dependencies, it
fails.  Here are the final lines of my log file, with "debug" turned on in

gmake.exe[4]: Entering directory `/builds/trunk/mozilla/obj/modules/libreg/src'
add VerReg.obj D:/builds/trunk/mozilla/modules/libreg/src/reg.h
add VerReg.obj D:/builds/trunk/mozilla/modules/libreg/src/vr_stubs.h
add VerReg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prio.h
add VerReg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prlong.h
add VerReg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prtypes.h
add VerReg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prcpucfg.h
add VerReg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/obsolete/protypes.h
add VerReg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prtime.h
add VerReg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prinrval.h
add VerReg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prinet.h
add VerReg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prlog.h
add VerReg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prmem.h
add VerReg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/plstr.h
add VerReg.obj D:/builds/trunk/mozilla/modules/libreg/src/nr_bufio.h
add VerReg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prlock.h
add VerReg.obj ../../../dist/include/libreg/NSReg.h
add VerReg.obj ../../../dist/include/libreg/VerReg.h
add nr_bufio.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prerror.h
add nr_bufio.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prtypes.h
add nr_bufio.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prcpucfg.h
add nr_bufio.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/obsolete/protypes.h
add nr_bufio.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prerr.h
add nr_bufio.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prlog.h
add nr_bufio.obj D:/builds/trunk/mozilla/modules/libreg/src/vr_stubs.h
add nr_bufio.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prio.h
add nr_bufio.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prlong.h
add nr_bufio.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prtime.h
add nr_bufio.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prinrval.h
add nr_bufio.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prinet.h
add nr_bufio.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prmem.h
add nr_bufio.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/plstr.h
add nr_bufio.obj D:/builds/trunk/mozilla/modules/libreg/src/nr_bufio.h
add reg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prtypes.h
add reg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prcpucfg.h
add reg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/obsolete/protypes.h
add reg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prlog.h
add reg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prerror.h
add reg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prerr.h
add reg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prprf.h
add reg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prio.h
add reg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prlong.h
add reg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prtime.h
add reg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prinrval.h
add reg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prinet.h
add reg.obj D:/builds/trunk/mozilla/modules/libreg/src/reg.h
add reg.obj D:/builds/trunk/mozilla/modules/libreg/src/vr_stubs.h
add reg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prmem.h
add reg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/plstr.h
add reg.obj D:/builds/trunk/mozilla/modules/libreg/src/nr_bufio.h
add reg.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prlock.h
add reg.obj ../../../dist/include/libreg/NSReg.h
add reg.obj ../../../dist/include/libreg/VerReg.h
add vr_stubs.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prtypes.h
add vr_stubs.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prcpucfg.h
add vr_stubs.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/obsolete/protypes.h
add vr_stubs.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/plstr.h
add vr_stubs.obj D:/builds/trunk/mozilla/modules/libreg/src/vr_stubs.h
add vr_stubs.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prio.h
add vr_stubs.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prlong.h
add vr_stubs.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prtime.h
add vr_stubs.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prinrval.h
add vr_stubs.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prinet.h
add vr_stubs.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prlog.h
add vr_stubs.obj D:/builds/trunk/mozilla/obj/dist/include/nspr/prmem.h
add vr_stubs.obj D:/builds/trunk/mozilla/modules/libreg/src/nr_bufio.h
add vr_stubs.obj ../../../dist/include/libreg/NSReg.h
add vr_stubs.obj ../../../dist/include/libreg/VerReg.h
add vr_stubs.obj ../../../dist/include/nsBuildID.h
vr_stubs.obj(1037395748) older than ../../../dist/include/nsBuildID.h(1037397876)
Updating dependencies file, .deps/.all.pp
new: vr_stubs.obj: FORCE

gmake.exe[4]: Leaving directory `/builds/trunk/mozilla/obj/modules/libreg/src'
gmake.exe[4]: Entering directory `/builds/trunk/mozilla/obj/modules/libreg/src'
gmake.exe[4]: Nothing to be done for `export'.
gmake.exe[4]: Leaving directory `/builds/trunk/mozilla/obj/modules/libreg/src'
gmake.exe[3]: *** [export] Error 255
gmake.exe[3]: Leaving directory `/builds/trunk/mozilla/obj/modules/libreg'
gmake.exe[2]: *** [export] Error 2
gmake.exe[2]: Leaving directory `/builds/trunk/mozilla/obj'
gmake.exe[1]: *** [alldep] Error 2
gmake.exe[1]: Leaving directory `/builds/trunk/mozilla/obj'
make: *** [alldep] Error 2

Do you see any reason why this would be failing on OS/2?  Please note that we
are still using GNU Make 3.76.1.  Is there anything in this code that requires a
later Make?

Comment 17

16 years ago
Just got GNU Make 3.79.1 working on OS/2, but I still get this same error.

Comment 18

16 years ago
If I touch nsBuildID.h, then go into mozilla/obj/modules/libreg/src and run a
make, I don't get the "Updating dependencies file" line.  Instead I get
"Building deps for ...".  I only get the error when the "Updating" line appears.

Comment 19

16 years ago
Created attachment 107388 [details] [diff] [review]
patch to reenable mkdepend

We need GNU Make 3.79.1 in order to use mkdepend.  This patch reenables
mkdepend on OS/2.  Once we have our tinderboxes and nightlies using make
3.79.1, we can check this in.


16 years ago
Attachment #107388 - Flags: review?(seawood)

Comment 20

16 years ago
Cannot start using make 3.79.1 on tinderbox/nightly machines until patch in bug
181913 is checked in.
Depends on: 181913
Comment on attachment 107388 [details] [diff] [review]
patch to reenable mkdepend

OS/2 shouldn't use the win32 rules for generating dependencies as win32
currently requires that srcfiles are in the srcdir which OS/2 doesn't.
Attachment #107388 - Flags: review?(seawood) → review-

Comment 22

16 years ago
Created attachment 107944 [details] [diff] [review]
patch w/ seawood's comments
Attachment #107388 - Attachment is obsolete: true


16 years ago
Attachment #107944 - Flags: review?(seawood)
Comment on attachment 107944 [details] [diff] [review]
patch w/ seawood's comments

Attachment #107944 - Flags: review?(seawood) → review+

Comment 24

16 years ago
Chris:  Is this the only place that I need to worry about mkdepend?  I see some
references to it in nspr and security files, but it doesn't look like it's
turned on there.

Comment 25

16 years ago
Chris: Also, don't check this in yet.  We need to check in bug 181913 first,
then upgrade to GNU make 3.79 before we can check this in.  Thanks.
mkdepend is in.

Now we have to turn it on on the TB.
Last Resolved: 17 years ago16 years ago
Resolution: --- → FIXED
Product: Browser → Seamonkey
You need to log in before you can comment on or make changes to this bug.