Closed Bug 1467327 Opened 6 years ago Closed 6 years ago

Use bootstraped clang if no system clang is found

Categories

(Firefox Build System :: General, enhancement)

enhancement
Not set
normal

Tracking

(firefox62 fixed)

RESOLVED FIXED
mozilla62
Tracking Status
firefox62 --- fixed

People

(Reporter: glandium, Assigned: glandium)

Details

Attachments

(1 file)

Once in a while, I watch mconley's live hacking sessions (not live for timezone reasons, though), and today I saw him struggle to try to use the clang we install with mach bootstrap, and we should just make that work out of the box if there is no clang installed on the system.
Attachment #8983997 - Flags: review?(core-build-config-reviews) → review?(nfroyd)
Comment on attachment 8983997 [details]
Bug 1467327 - Use bootstrapped clang if no system clang is found.

https://reviewboard.mozilla.org/r/249874/#review256060

Makes sense.
Attachment #8983997 - Flags: review?(nfroyd) → review+
Comment on attachment 8983997 [details]
Bug 1467327 - Use bootstrapped clang if no system clang is found.

https://reviewboard.mozilla.org/r/249874/#review256062

::: commit-message-4acdd:1
(Diff revision 1)
> +Bug 1467327 - Use bootstraped clang if no system clang is found. r?build

Nit: I think the spelling is "bootstrapped".
Attachment #8983997 - Flags: review?(core-build-config-reviews)
Pushed by mh@glandium.org:
https://hg.mozilla.org/integration/autoland/rev/ba02d348e3fd
Use bootstrapped clang if no system clang is found. r=froydnj
Backed out changeset ba02d348e3fd (bug 1467327) for LinuxToolchainTest bustages on a CLOSED TREE

Backout link: https://hg.mozilla.org/integration/autoland/rev/6cecb01994b962eed55b684d3007002f2c374ced

Push with failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&revision=ba02d348e3fdcc156a1f2fe2f69e2859d7f81d3c

Log link: https://treeherder.mozilla.org/logviewer.html#?job_id=182203858&repo=autoland&lineNumber=38638

Log snippet: 

[task 2018-06-07T02:15:24.856Z] 02:15:24     INFO - /builds/worker/workspace/build/src/python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py
[task 2018-06-07T02:15:24.856Z] 02:15:24     INFO - ============================= test session starts ==============================
[task 2018-06-07T02:15:24.857Z] 02:15:24     INFO - platform linux2 -- Python 2.7.9, pytest-3.2.5, py-1.5.3, pluggy-0.4.0 -- /builds/worker/workspace/build/src/obj-firefox/_virtualenvs/init/bin/python
[task 2018-06-07T02:15:24.857Z] 02:15:24     INFO - rootdir: /builds/worker/workspace/build/src/python/mozbuild, inifile:
[task 2018-06-07T02:15:24.857Z] 02:15:24     INFO - collecting ... collected 52 items
[task 2018-06-07T02:15:24.857Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxToolchainTest::test_absolute_path PASSED
[task 2018-06-07T02:15:24.857Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxToolchainTest::test_atypical_name PASSED
[task 2018-06-07T02:15:24.857Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxToolchainTest::test_clang TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.858Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxToolchainTest::test_gcc TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.858Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxToolchainTest::test_guess_cxx PASSED
[task 2018-06-07T02:15:24.858Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxToolchainTest::test_guess_cxx_clang PASSED
[task 2018-06-07T02:15:24.858Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxToolchainTest::test_mismatched_compiler TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.858Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxToolchainTest::test_mismatched_gcc TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.858Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxToolchainTest::test_mixed_compilers TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.859Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxToolchainTest::test_no_supported_compiler TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.859Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxToolchainTest::test_overridden_gcc PASSED
[task 2018-06-07T02:15:24.859Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxToolchainTest::test_unsupported_clang PASSED
[task 2018-06-07T02:15:24.859Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxToolchainTest::test_unsupported_gcc TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.859Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxSimpleCrossToolchainTest::test_cross_clang PASSED
[task 2018-06-07T02:15:24.859Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxSimpleCrossToolchainTest::test_cross_gcc TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.859Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxX86_64CrossToolchainTest::test_cross_clang PASSED
[task 2018-06-07T02:15:24.860Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxX86_64CrossToolchainTest::test_cross_gcc TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.860Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::OSXToolchainTest::test_clang PASSED
[task 2018-06-07T02:15:24.860Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::OSXToolchainTest::test_forced_gcc PASSED
[task 2018-06-07T02:15:24.860Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::OSXToolchainTest::test_forced_unsupported_gcc PASSED
[task 2018-06-07T02:15:24.860Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::OSXToolchainTest::test_not_gcc PASSED
[task 2018-06-07T02:15:24.860Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::OSXToolchainTest::test_unsupported_clang PASSED
[task 2018-06-07T02:15:24.861Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::WindowsToolchainTest::test_cannot_cross PASSED
[task 2018-06-07T02:15:24.861Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::WindowsToolchainTest::test_clang TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.861Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::WindowsToolchainTest::test_clang_cl PASSED
[task 2018-06-07T02:15:24.861Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::WindowsToolchainTest::test_gcc TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.861Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::WindowsToolchainTest::test_msvc PASSED
[task 2018-06-07T02:15:24.861Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::WindowsToolchainTest::test_overridden_unsupported_clang PASSED
[task 2018-06-07T02:15:24.861Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::WindowsToolchainTest::test_overridden_unsupported_gcc PASSED
[task 2018-06-07T02:15:24.862Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::WindowsToolchainTest::test_unsupported_msvc PASSED
[task 2018-06-07T02:15:24.862Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::Windows64ToolchainTest::test_cannot_cross PASSED
[task 2018-06-07T02:15:24.862Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::Windows64ToolchainTest::test_clang TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.862Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::Windows64ToolchainTest::test_clang_cl PASSED
[task 2018-06-07T02:15:24.862Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::Windows64ToolchainTest::test_gcc TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.862Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::Windows64ToolchainTest::test_msvc PASSED
[task 2018-06-07T02:15:24.863Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::Windows64ToolchainTest::test_overridden_unsupported_clang PASSED
[task 2018-06-07T02:15:24.863Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::Windows64ToolchainTest::test_overridden_unsupported_gcc PASSED
[task 2018-06-07T02:15:24.863Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::Windows64ToolchainTest::test_unsupported_msvc PASSED
[task 2018-06-07T02:15:24.863Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_cannot_cross TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.863Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_cross_atypical_clang PASSED
[task 2018-06-07T02:15:24.863Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_cross_clang PASSED
[task 2018-06-07T02:15:24.863Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_cross_gcc_misc TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.864Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_cross_ppc_ppc64 TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.864Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_cross_sparc_sparc64 TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.864Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_cross_x86_x64 TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.864Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_guess_cross_cxx TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.864Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_overridden_cross_gcc TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.865Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_overridden_unsupported_cross_gcc PASSED
[task 2018-06-07T02:15:24.865Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::OSXCrossToolchainTest::test_cannot_osx_cross TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.865Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::OSXCrossToolchainTest::test_osx_cross PASSED
[task 2018-06-07T02:15:24.865Z] 02:15:24  WARNING - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::OpenBSDToolchainTest::test_gcc TEST-UNEXPECTED-FAIL
[task 2018-06-07T02:15:24.865Z] 02:15:24     INFO - ../python/mozbuild/mozbuild/test/configure/test_toolchain_configure.py::RustTest::test_rust_target PASSED
Flags: needinfo?(mh+mozilla)
Mmmmm this passes locally... which is surprising, because it shouldn't be dependent on the running environment.
Flags: needinfo?(mh+mozilla)
Comment on attachment 8983997 [details]
Bug 1467327 - Use bootstrapped clang if no system clang is found.

https://reviewboard.mozilla.org/r/249872/#review256086

::: build/moz.configure/toolchain.configure:641
(Diff revision 3)
>      return paths
>  
>  
>  @depends(vc_compiler_path)
>  @imports('os')
> +@imports(_from='os', _import='environ')

This makes the test harness happy (as in, the configure script gets a hacked environ in that case, but not when using os.environ directly ; we do this in multiple places already)
Pushed by mh@glandium.org:
https://hg.mozilla.org/integration/autoland/rev/c557100a9ea8
Use bootstrapped clang if no system clang is found. r=froydnj
https://hg.mozilla.org/mozilla-central/rev/c557100a9ea8
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla62
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: