eval .all.pp instead of including it

RESOLVED FIXED in mozilla1.9.3a1

Status

()

Core
Build Config
RESOLVED FIXED
9 years ago
8 years ago

People

(Reporter: Benjamin Smedberg, Assigned: Benjamin Smedberg)

Tracking

Trunk
mozilla1.9.3a1
x86
Windows NT
Points:
---
Bug Flags:
in-testsuite -

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(2 attachments)

(Assignee)

Description

9 years ago
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.
(Assignee)

Comment 1

9 years ago
Created attachment 408039 [details] [diff] [review]
eval .all.pp instead of including it, rev. 1
[Checkin: Comment 7]

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+

Comment 6

8 years ago
(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
Last Resolved: 8 years ago
Resolution: --- → FIXED

Comment 8

8 years ago
(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
Created attachment 429504 [details] [diff] [review]
(Bv1-CC) Copy it to comm-central
[Checkin: Comment 11+13]
Attachment #429504 - Flags: review?(bugspam.Callek)
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)
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/7e6839c431c7
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]
You need to log in before you can comment on or make changes to this bug.