Closed Bug 524139 Opened 16 years ago Closed 16 years ago

eval .all.pp instead of including it

Categories

(Firefox Build System :: General, defect)

x86
Windows NT
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
mozilla1.9.3a1

People

(Reporter: benjamin, Assigned: benjamin)

References

Details

Attachments

(2 files)

Currently we -include .all.pp with a FORCE rule to regenerate it. This sucks for build speed because we're restarting the parsing process. With gmake this means re-reading all the makefiles from disk. With pymake this means rereading at least .all.pp. In both cases this means redoing a lot of stats.
Ted, ISTR you had some framework for measuring build speed; although I have a strong hunch this will improve build speed it would be good to actually measure that before committing.
Attachment #408039 - Flags: review?(ted.mielczarek)
If by "framework" you mean "run a bunch of builds and time them", then yes. :)
Somehow this hangs my windows build early in configure right after it says: creating js-config.h js-config.h is unchanged invoking make to create js-config script
I wonder how this ties in with bug 462463... (we should revisit that)
Comment on attachment 408039 [details] [diff] [review] eval .all.pp instead of including it, rev. 1 [Checkin: Comment 7] +$(patsubst %.cc,%.$(OBJ_SUFFIX),$(filter %.cc,$(CPPSRCS))): \ I think these static pattern rule changes belong in a different bug. r=me with that part removed. I'll try to do a comparison build with and without this patch.
Attachment #408039 - Flags: review?(ted.mielczarek) → review+
(In reply to comment #3) > Somehow this hangs my windows build early in configure right after it says: > > creating js-config.h > js-config.h is unchanged > invoking make to create js-config script My make doesn't like $(eval) inside an ifdef, so I had to move the $(eval $(ALL_PP_RESULTS)) to just before the bug #### separator.
What version of make are you using? Also, this landed: http://hg.mozilla.org/mozilla-central/rev/29d7c945849d
Status: NEW → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
(In reply to comment #7) > What version of make are you using? It calls itself GNU Make 3.80 > Also, this landed: > http://hg.mozilla.org/mozilla-central/rev/29d7c945849d Exactly, but my gmake doesn't like the $(eval) inside an ifdef.
Flags: in-testsuite-
Target Milestone: --- → mozilla1.9.3a1
Version: unspecified → Trunk
Comment on attachment 429504 [details] [diff] [review] (Bv1-CC) Copy it to comm-central [Checkin: Comment 11+13] serge, this looks ok to land. Asking for feedback from Neil to see if there needs to be a solution for his gmake issue (or if he got it working right)
Attachment #429504 - Flags: review?(bugspam.Callek)
Attachment #429504 - Flags: review+
Attachment #429504 - Flags: feedback?(neil)
Attachment #429504 - Attachment description: (Bv1-CC) Copy it to comm-central (1.9.2+) → (Bv1-CC) Copy it to comm-central (1.9.2+) [Checkin: Comment 11]
Comment on attachment 429504 [details] [diff] [review] (Bv1-CC) Copy it to comm-central [Checkin: Comment 11+13] Thanks for the heads-up; I'll have to apply the same workaround locally (move the eval to after all of the endifs).
Attachment #429504 - Flags: feedback?(neil)
Attachment #408039 - Attachment description: eval .all.pp instead of including it, rev. 1 → eval .all.pp instead of including it, rev. 1 [Checkin: Comment 7]
Comment on attachment 429504 [details] [diff] [review] (Bv1-CC) Copy it to comm-central [Checkin: Comment 11+13] http://hg.mozilla.org/comm-central/rev/6c761f19ee0f (Cv1-CC) Restore previous code on MOZILLA_1_9_2_BRANCH NB: mddepend.pl part didn't land on m-1.9.2, so Thunderbird 3.1 busted :-<
Attachment #429504 - Attachment description: (Bv1-CC) Copy it to comm-central (1.9.2+) [Checkin: Comment 11] → (Bv1-CC) Copy it to comm-central [Checkin: Comment 11+13]
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: