Move libraries and programs build to the compile tier

RESOLVED FIXED in mozilla34

Status

defect
RESOLVED FIXED
5 years ago
a year ago

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
Last Resolved: 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

4 years ago
Depends on: 1108858

Updated

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