Move libraries and programs build to the compile tier

RESOLVED FIXED in mozilla34

Status

defect
RESOLVED FIXED
5 years ago
Last year

People

(Reporter: glandium, Assigned: glandium)

Tracking

(Blocks 1 bug)

unspecified
mozilla34
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment, 3 obsolete attachments)

Assignee

Description

5 years ago
With all the knowledge from bug 1036894, and a few temporary hacks, it is possible to get a full compilation/linkage build in the compile tier.
Assignee

Comment 1

5 years ago
This has the nice side effect of having some things build while libxul links. This however has the caveat of making js standalone clobber builds slightly slower because building js/src now waits for icu, but with bug 1036894 (and this one, actually), it's possible to work around this in many different ways, but I'd rather not wait on figuring what to choose. There are also further improvements I'd like to make that would allow building even more things while libxul links that would make js/src wait less for intl/icu.

https://tbpl.mozilla.org/?tree=Try&rev=aa249f1b56a1
Attachment #8461498 - Flags: review?(gps)
Assignee

Updated

5 years ago
Assignee

Comment 2

5 years ago
Comment on attachment 8461498 [details] [diff] [review]
Move libraries and programs build to the compile tier

Review of attachment 8461498 [details] [diff] [review]:
-----------------------------------------------------------------

::: config/makefiles/target_binaries.mk
@@ +22,5 @@
>  
>  ifneq (,$(strip $(PROGRAM)$(SIMPLE_PROGRAMS)))
>  PROGRAMS_EXECUTABLES = $(SIMPLE_PROGRAMS) $(PROGRAM)
>  PROGRAMS_DEST ?= $(FINAL_TARGET)
> +PROGRAMS_TARGET := binaries libs target

Note I'm not removing the existing targets as a safety net.

::: config/recurse.mk
@@ +193,5 @@
>  	$$(LOOP_OVER_DIRS)
>  
>  endef
>  
> +$(foreach subtier,export binaries libs tools,$(eval $(call CREATE_SUBTIER_TRAVERSAL_RULE,$(subtier))))

This removes recursion for make -C foo compile, which is not a good thing to do now, and wouldn't be much better after this patch.
Assignee

Updated

5 years ago
Attachment #8461498 - Attachment is obsolete: true
Attachment #8461498 - Flags: review?(gps)
Assignee

Comment 4

5 years ago
I *will* get this right. (android reds were a problem with bug 1043351 in the queue, and windows red is a race condition because of the removal of the config/export dependency that I'm now readding)
https://tbpl.mozilla.org/?tree=Try&rev=640cbf58ff6c
Attachment #8461555 - Flags: review?(gps)
Assignee

Updated

5 years ago
Attachment #8461536 - Attachment is obsolete: true
Attachment #8461536 - Flags: review?(gps)
Assignee

Comment 5

5 years ago
Aaand with the toplevel Makefile.in change corresponding to last rules.mk change.
Attachment #8461564 - Flags: review?(gps)
Assignee

Updated

5 years ago
Attachment #8461555 - Attachment is obsolete: true
Attachment #8461555 - Flags: review?(gps)
Comment on attachment 8461564 [details] [diff] [review]
Move libraries and programs build to the compile tier

Review of attachment 8461564 [details] [diff] [review]:
-----------------------------------------------------------------

I am anxiously awaiting what you decide to do with all the remaining gunk in the now-emptier-and-painfully-slower-than-ever libs tier. I'm sure it will be awesome.

::: python/mozbuild/mozbuild/backend/recursivemake.py
@@ +716,5 @@
>                  self._create_makefile(obj, stub=stub)
> +                with open(obj.output_path) as fh:
> +                    content = fh.read()
> +                    for trigger, targets in self._triggers.items():
> +                        if trigger.encode('ascii') in content:

The hacks, they burn!

I can only assume from other comments in this patch that follow-ups are already in your head.
Attachment #8461564 - Flags: review?(gps) → review+
Assignee

Updated

5 years ago
Duplicate of this bug: 951109
Assignee

Updated

5 years ago
Blocks: 1043799
Assignee

Updated

5 years ago
Blocks: 1043802
Assignee

Updated

5 years ago
Blocks: 1043862
Assignee

Updated

5 years ago
Depends on: 1043954
https://hg.mozilla.org/mozilla-central/rev/0300f04572b6
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla34

Updated

5 years ago
Blocks: 1044460

Updated

5 years ago
Blocks: 1045329

Updated

5 years ago
Blocks: 1045969
No longer blocks: 1045969
Depends on: 1045969
QA Whiteboard: [qa-]
Assignee

Updated

5 years ago
Depends on: 1108858

Updated

Last year
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.