Closed
Bug 701822
Opened 13 years ago
Closed 13 years ago
Add TEST_DIRS Variable
Categories
(Firefox Build System :: General, defect)
Firefox Build System
General
Tracking
(Not tracked)
RESOLVED
FIXED
mozilla11
People
(Reporter: gps, Assigned: gps)
References
Details
Attachments
(1 file, 1 obsolete file)
1.61 KB,
patch
|
ted
:
review+
|
Details | Diff | Splinter Review |
In the spirit of making our Makefiles more declarative and data-driven, I'd like to introduce the TEST_DIRS variable. Instead of the current convention: ifdef ENABLE_TESTS DIRS += tests endif I'd just like to say: TEST_DIRS += tests The attached patch is very crude, but gets the job done. I could treat it like PARALLEL_DIRS and TOOL_DIRS and other variables and give it all kinds of targets, etc, but I think that is overkill at this time. If we want to treat it specially later, we can cross that bridge when we come to it. If this patch is accepted, I'll submit a follow-up patch that converts the existing Makefiles to use the new convention (when I have time). The attached patch is in Git format. I'll do the right thing for a Mercurial commit. Or, I can resubmit, if requested.
Attachment #573894 -
Flags: review?(ted.mielczarek)
Comment 1•13 years ago
|
||
Comment on attachment 573894 [details] [diff] [review] Roll TEST_DIRS into DIRS variable Review of attachment 573894 [details] [diff] [review]: ----------------------------------------------------------------- I have two qualms with this patch. (But I like the idea.) ::: config/rules.mk @@ +121,5 @@ > +# Add test directories to the regular directories list. TEST_DIRS should > +# arguably have the same status as TOOL_DIRS and other *_DIRS variables. It is > +# coded this way until Makefiles stop using the "ifdef ENABLE_TESTS; DIRS +=" > +# convention. > +DIRS += $(TEST_DIRS) I would add these to TOOL_DIRS instead of DIRS. TOOL_DIRS get built after the libs phase completes. Also, this should be inside an ifdef ENABLE_TESTS block, so that Makefiles can simply assign directly to TEST_DIRS without having to have the ifdef.
Attachment #573894 -
Flags: review?(ted.mielczarek) → review-
Assignee | ||
Comment 2•13 years ago
|
||
Thanks, Ted. Will make the changes and resubmit. Also, how do you feel about defining additional variables, like XPCSHELL_DIRS, MOCHITEST_DIRS, etc? The advantages over vanilla TEST_DIRS is a 'make tests' target (bug 697894) could be implemented easier. I also like being more explicit rather than generic. If we go with per-test-type variables, I have no clue what the exhaustive list would be...
Assignee | ||
Comment 3•13 years ago
|
||
Moved variable appending to inside "ifdef ENABLE_TESTS". Also, retained DIRS instead of TOOL_DIRS because this would mean a simple `make -C directory` wouldn't pick up test file changes. See the new comment in the patch. A "proper" implementation can be addressed sometime in the future.
Assignee: nobody → gps
Attachment #573894 -
Attachment is obsolete: true
Status: NEW → ASSIGNED
Attachment #573900 -
Flags: review?(ted.mielczarek)
Comment 4•13 years ago
|
||
Comment on attachment 573900 [details] [diff] [review] Roll TEST_DIRS into DIRS variable, v2 Review of attachment 573900 [details] [diff] [review]: ----------------------------------------------------------------- This looks good. I'm not sure about test-specific dirs, lots of directories stick all their tests in one dir.
Attachment #573900 -
Flags: review?(ted.mielczarek) → review+
Assignee | ||
Comment 5•13 years ago
|
||
Ah, didn't realize there was a lot of sharing. I guess we can cross that bridge later if we want to.
Comment 6•13 years ago
|
||
I forgot to mention, but make sure you make the same changes to js/src/config/rules.mk before you land this. (Just copy the file over to make them identical.)
Assignee | ||
Comment 7•13 years ago
|
||
pushed to b-s: https://hg.mozilla.org/projects/build-system/rev/5dfafed54b5c I'd update the docs, but MDN isn't behaving well at the moment.
Keywords: dev-doc-needed
Assignee | ||
Comment 8•13 years ago
|
||
Added docs to https://developer.mozilla.org/index.php?title=en/How_Mozilla%27s_build_system_works/Makefile_-_variables
Keywords: dev-doc-needed
Comment 9•13 years ago
|
||
Is the change checked-in in m-c branch so that bug 702388 can be worked on?
Assignee | ||
Comment 10•13 years ago
|
||
It is checked in to m-c now: https://hg.mozilla.org/mozilla-central/rev/5dfafed54b5c
Status: ASSIGNED → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla11
Updated•7 years ago
|
Product: Core → Firefox Build System
You need to log in
before you can comment on or make changes to this bug.
Description
•