Closed Bug 1686646 Opened 1 year ago Closed 1 year ago

Avoid having to set many things in mozconfigs

Categories

(Firefox Build System :: General, task)

task

Tracking

(firefox86 fixed)

RESOLVED FIXED
86 Branch
Tracking Status
firefox86 --- fixed

People

(Reporter: glandium, Assigned: glandium)

References

Details

Attachments

(12 files)

48 bytes, text/x-phabricator-request
Details | Review
48 bytes, text/x-phabricator-request
Details | Review
48 bytes, text/x-phabricator-request
Details | Review
48 bytes, text/x-phabricator-request
Details | Review
48 bytes, text/x-phabricator-request
Details | Review
48 bytes, text/x-phabricator-request
Details | Review
48 bytes, text/x-phabricator-request
Details | Review
48 bytes, text/x-phabricator-request
Details | Review
48 bytes, text/x-phabricator-request
Details | Review
48 bytes, text/x-phabricator-request
Details | Review
48 bytes, text/x-phabricator-request
Details | Review
48 bytes, text/x-phabricator-request
Details | Review

That's been a long lasting pet peeve of mine. I don't remember what last week brought me to actually look into this this week, but here I am. I actually started with 70% of what I'm going to attach shortly, but that led me to bug 1480005 getting in the way, so I went with that one first. And when I started working on this, I had an epiphany about how to fix bug 1553230 in a much simpler manner than I had in mind originally, so that's coming next.

As far as mozconfigs are concerned, things still remain in them that I'd eventually like to see go, but this bug will give us:
43 files changed, 12 insertions(+), 246 deletions(-)

The code in nodeutil.py, used by configure, already looks in MOZ_FETCHES_DIR.

The only thing that varies between toolchain_search_path and
host_toolchain_search_path is the path to the MSVC C/C++ compiler and
tools, because MSVC has a different compiler for each platform, and host
and target platforms may differ (when e.g. compiling for arm64 on
x86_64).

However, we don't use the MSVC compiler anymore, and the only thing we
use its path for is the assembler, which we don't use for host things
(and we don't have a HOST_AS), and to derive the path to some system
headers/SDK.

None of the paths added to the toolchain search path contain them.

We don't need to check the MSVC compiler directory for more than a few
programs.

Instead of adding all possible tool paths from ~/.mozbuild, we only
add the relevant paths for each of the tools we search for.

When MOZ_FETCHES_DIR is set, use that instead of ~/.mozbuild. This will
allow to find them on automation without explicit mozconfig help.

This will allow to find them on automation without setting anything in
mozconfigs.

Configure already figure those properly from the .

This is great stuff, and the separated patches are appreciated. Thanks for working on this!

Pushed by mh@glandium.org:
https://hg.mozilla.org/integration/autoland/rev/cb585d073253
Remove TOOLTOOL_DIR from mozconfigs where it is unused. r=firefox-build-system-reviewers,dmajor
https://hg.mozilla.org/integration/autoland/rev/02c8547c2001
Don't set NODEJS in mozconfigs. r=firefox-build-system-reviewers,dmajor
https://hg.mozilla.org/integration/autoland/rev/ea8cc5800efd
Move --enable-release and DEVELOPER_OPTIONS to top-level moz.configure. r=firefox-build-system-reviewers,dmajor
https://hg.mozilla.org/integration/autoland/rev/0f8f41082d74
Remove host_toolchain_search_path. r=firefox-build-system-reviewers,dmajor
https://hg.mozilla.org/integration/autoland/rev/9ec2175a73a1
Don't search for pdbstr and winchecksec in the toolchain search path. r=firefox-build-system-reviewers,dmajor
https://hg.mozilla.org/integration/autoland/rev/6e63e01e2a3b
Separate out MSVC compiler search path. r=firefox-build-system-reviewers,dmajor
https://hg.mozilla.org/integration/autoland/rev/2c830bafb2af
Separate out Rust compiler search path. r=firefox-build-system-reviewers,dmajor
https://hg.mozilla.org/integration/autoland/rev/62b63ac811f0
Use more targeted search paths for each tool. r=firefox-build-system-reviewers,dmajor
https://hg.mozilla.org/integration/autoland/rev/9e6cbf7d1d04
Automatically find tools in MOZ_FETCHES_DIR. r=firefox-build-system-reviewers,dmajor
https://hg.mozilla.org/integration/autoland/rev/963f5839789d
Look for more tools in MOZ_FETCHES_DIR. r=firefox-build-system-reviewers,dmajor
https://hg.mozilla.org/integration/autoland/rev/252960b9bd0e
In mozconfigs, don't set paths to tools configure can now find on its own. r=firefox-build-system-reviewers,dmajor
https://hg.mozilla.org/integration/autoland/rev/2b7973c723cc
Don't pass --with-clang-path or --with-libclang-path in mozconfigs. r=firefox-build-system-reviewers,dmajor
You need to log in before you can comment on or make changes to this bug.