Closed Bug 781431 Opened 12 years ago Closed 12 years ago

A few minor build system improvements

Categories

(Firefox Build System :: General, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
mozilla17

People

(Reporter: rain1, Assigned: rain1)

Details

Attachments

(1 file)

Attached patch patch v1Splinter Review
1. mozconfig2client-mk still refers to $HOME/.mozconfig, even though we removed it a while ago. Thanks to Neil for pointing it out.
2. MOZCONFIG_FIND and MOZCONFIG_MODULES are no longer used by client.mk.
3. The CONFIG_GUESS script runs 7 or 8 times every time client.mk is run. It slows Windows builds without an explicit object directory down by around 10-15 seconds, at least on my computer. On the other hand, if an objdir is specified this patch will slow that down by a bit. I really wish Make had variables that are lazy but evaluated only once, but I'll take what I can get.

I'm going to need to check this patch into comm-central as well, to avoid orange there.
Attachment #650442 - Flags: review?(ted.mielczarek)
There are recipes for lazy variables in make, such as this one I'm using in debian:
lazy = $(eval $(1) = $$(if $$(___$(1)),,$$(eval ___$(1) := $(2)))$$(___$(1)))

Downside is that it requires quoting:
$(call lazy,foo,$$(shell foo))
On the other hand, considering CONFIG_GUESS is always used once... (for the CRLF check)
BTW, if you want to remove one more case of config.guess running, you can add --target=$(CONFIG_GUESS) to CONFIGURE_ARGS
Attachment #650442 - Flags: review?(ted.mielczarek) → review+
https://hg.mozilla.org/mozilla-central/rev/26b8e99cb58b
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla17
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.