Closed Bug 912292 Opened 6 years ago Closed 6 years ago

Straighten up directory traversal

Categories

(Firefox Build System :: General, defect)

defect
Not set

Tracking

(Not tracked)

RESOLVED FIXED
mozilla26

People

(Reporter: glandium, Assigned: glandium)

References

Details

Attachments

(2 files, 1 obsolete file)

Currently, this is what happens when we do directory traversal for $target:
- do a bit of $target in current directory
- do $target in PARALLEL_DIRS
- do a bit more $target in current directory
- do $target in DIRS
- do a bit more $target in current directory

The fun part is that some parts of the build rely on this weird order so that we effectively have some directories relying on their parents having been built and some others relying on their children having been built. Which is all too fragile, and gets in the way of pseudo-derecursification.

I have a WiP that changes the order to:
- do $target in the current directory
- do $target in PARALLEL_DIRS
- do $target in DIRS

which I /think/ is the order that requires fixing up the less.
Assignee: nobody → mh+mozilla
Blocks: 905973
OS: Linux → All
Hardware: x86_64 → All
Depends on: 912293
Attached patch WiP (obsolete) — Splinter Review
This builds fine on linux, I'm pretty sure it will fail on windows and android (from different past experiments)
As mentioned on irc, i didn't feel like spending time actually fixing those awful rules.
Attachment #799480 - Flags: review?(gps)
Attachment #799184 - Attachment is obsolete: true
Blocks: 907365
Comment on attachment 799481 [details] [diff] [review]
Always traverse sub-directories after executing rules in the current directory

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

Don't forget to add license headers to the new files.
Attachment #799480 - Flags: review?(gps) → review+
Comment on attachment 799481 [details] [diff] [review]
Always traverse sub-directories after executing rules in the current directory

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

Nice. This may also unbust bug 909508 and some other NONRECURSIVE_* rules issues.

::: config/recurse.mk
@@ +1,1 @@
> +ifndef INCLUDED_RULES_MK

Moar MPL.
Attachment #799481 - Flags: review?(gps) → review+
https://hg.mozilla.org/mozilla-central/rev/fc9fb405796e
https://hg.mozilla.org/mozilla-central/rev/0413092be43d

Note that this appears to have caused intermittent Android build bustage in bug 913134.
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla26
Blocks: 930976
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.