Bug 1384422 - Use toolchain dependencies for clang. r?gps draft
authorMike Hommey <mh+mozilla@glandium.org>
Wed, 26 Jul 2017 16:32:15 +0900
changeset 616404 f20354582d4429a067ec89909b394fc7f0876ebe
parent 616335 bc9ad09e54792a2ea81eb03015c8cb2f04dedee4
child 616405 61cc8c74713ba5a9d8a2a81c2e1ce16a7141925f
push id70667
push userbmo:mh+mozilla@glandium.org
push dateThu, 27 Jul 2017 00:34:41 +0000
reviewersgps
bugs1384422
milestone56.0a1
Bug 1384422 - Use toolchain dependencies for clang. r?gps This leaves out fuzzing and linux static analysis builds, which are using, respectively, clang 4.0.1 and clang 3.8, while linux64-clang produces a 3.9 and win*-clang a 5.0
taskcluster/ci/artifact-build/kind.yml
taskcluster/ci/build/linux.yml
taskcluster/ci/build/macosx.yml
taskcluster/ci/build/windows.yml
taskcluster/ci/hazard/kind.yml
taskcluster/ci/spidermonkey/kind.yml
taskcluster/ci/static-analysis/kind.yml
taskcluster/ci/toolchain/linux.yml
taskcluster/ci/toolchain/macosx.yml
taskcluster/ci/valgrind/kind.yml
--- a/taskcluster/ci/artifact-build/kind.yml
+++ b/taskcluster/ci/artifact-build/kind.yml
@@ -37,10 +37,11 @@ jobs:
                 - builds/releng_sub_linux_configs/64_artifact.py
                 - balrog/production.py
             script: "mozharness/scripts/fx_desktop_build.py"
             secrets: true
             tooltool-downloads: public
             need-xvfb: true
             keep-artifacts: false
         toolchains:
+          - linux64-clang
           - linux64-gcc
           - linux64-sccache
--- a/taskcluster/ci/build/linux.yml
+++ b/taskcluster/ci/build/linux.yml
@@ -17,16 +17,17 @@ linux64/opt:
         config:
             - builds/releng_base_linux_64_builds.py
             - balrog/production.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         tooltool-downloads: public
         need-xvfb: true
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 linux64-dmd/opt:
     description: "Linux64 DMD Opt"
     index:
         product: firefox
         job-name: linux64-dmd-opt
@@ -46,16 +47,17 @@ linux64-dmd/opt:
             - builds/releng_base_linux_64_builds.py
         script: "mozharness/scripts/fx_desktop_build.py"
         custom-build-variant-cfg: dmd
         secrets: true
         tooltool-downloads: public
         need-xvfb: true
     run-on-projects: [ ]
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 linux64/pgo:
     description: "Linux64 PGO"
     index:
         product: firefox
         job-name: linux64-pgo
@@ -75,16 +77,17 @@ linux64/pgo:
         config:
             - builds/releng_base_linux_64_builds.py
             - balrog/production.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         tooltool-downloads: public
         need-xvfb: true
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 linux64/debug:
     description: "Linux64 Debug"
     index:
         product: firefox
         job-name: linux64-debug
@@ -103,16 +106,17 @@ linux64/debug:
             - builds/releng_base_linux_64_builds.py
             - balrog/production.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         custom-build-variant-cfg: debug
         tooltool-downloads: public
         need-xvfb: true
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 linux64-devedition-nightly/opt:
     description: "Linux64 devedition Nightly"
     attributes:
         nightly: true
     index:
@@ -136,16 +140,17 @@ linux64-devedition-nightly/opt:
             - balrog/production.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         tooltool-downloads: public
         need-xvfb: true
         custom-build-variant-cfg: devedition
     run-on-projects: [ 'mozilla-beta', ]
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 linux64-base-toolchains/opt:
     description: "Linux64 base toolchains Opt"
     index:
         product: firefox
         job-name: linux64-base-toolchains-opt
@@ -164,16 +169,17 @@ linux64-base-toolchains/opt:
         config:
             - builds/releng_base_linux_64_builds.py
             - balrog/production.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         tooltool-downloads: public
         need-xvfb: true
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 linux64-base-toolchains/debug:
     description: "Linux64 base toolchains Debug"
     index:
         product: firefox
         job-name: linux64-base-toolchains-debug
@@ -193,16 +199,17 @@ linux64-base-toolchains/debug:
             - builds/releng_base_linux_64_builds.py
             - balrog/production.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         custom-build-variant-cfg: debug
         tooltool-downloads: public
         need-xvfb: true
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 linux/opt:
     description: "Linux32 Opt"
     index:
         product: firefox
         job-name: linux-opt
@@ -221,16 +228,17 @@ linux/opt:
         config:
             - builds/releng_base_linux_32_builds.py
             - balrog/production.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         tooltool-downloads: public
         need-xvfb: true
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 linux/debug:
     description: "Linux32 Debug"
     index:
         product: firefox
         job-name: linux-debug
@@ -250,16 +258,17 @@ linux/debug:
             - builds/releng_base_linux_32_builds.py
             - balrog/production.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         custom-build-variant-cfg: debug
         tooltool-downloads: public
         need-xvfb: true
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 linux/pgo:
     description: "Linux32 PGO"
     index:
         product: firefox
         job-name: linux-pgo
@@ -279,16 +288,17 @@ linux/pgo:
         config:
             - builds/releng_base_linux_32_builds.py
             - balrog/production.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         tooltool-downloads: public
         need-xvfb: true
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 linux-devedition-nightly/opt:
     description: "Linux32 devedition Nightly"
     attributes:
         nightly: true
     index:
@@ -312,16 +322,17 @@ linux-devedition-nightly/opt:
             - balrog/production.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         tooltool-downloads: public
         need-xvfb: true
         custom-build-variant-cfg: devedition
     run-on-projects: [ 'mozilla-beta', ]
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 linux-nightly/opt:
     description: "Linux32 Nightly"
     attributes:
         nightly: true
     index:
@@ -343,16 +354,17 @@ linux-nightly/opt:
             - builds/releng_base_linux_32_builds.py
             - disable_signing.py
             - taskcluster_nightly.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         tooltool-downloads: public
         need-xvfb: true
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 
 linux64-asan/opt:
     description: "Linux64 Opt ASAN"
     index:
         product: firefox
@@ -373,16 +385,17 @@ linux64-asan/opt:
             - builds/releng_base_linux_64_builds.py
             - balrog/production.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         custom-build-variant-cfg: asan-tc
         tooltool-downloads: public
         need-xvfb: true
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 
 linux64-asan-fuzzing/opt:
     description: "Linux64 Fuzzing Opt ASAN"
     index:
         product: firefox
@@ -432,16 +445,17 @@ linux64-asan/debug:
             - builds/releng_base_linux_64_builds.py
             - balrog/production.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         custom-build-variant-cfg: asan-tc-and-debug
         tooltool-downloads: public
         need-xvfb: true
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 linux64-nightly/opt:
     description: "Linux64 Nightly"
     attributes:
         nightly: true
     index:
@@ -463,16 +477,17 @@ linux64-nightly/opt:
             - builds/releng_base_linux_64_builds.py
             - disable_signing.py
             - taskcluster_nightly.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         tooltool-downloads: public
         need-xvfb: true
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 linux64-noopt/debug:
     description: "Linux64 No-optimize Debug"
     index:
         product: firefox
         job-name: linux64-noopt-debug
@@ -494,16 +509,17 @@ linux64-noopt/debug:
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         custom-build-variant-cfg: noopt-debug
         tooltool-downloads: public
         keep-artifacts: false
         need-xvfb: true
     run-on-projects: [ 'trunk', 'try' ]
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 linux64-jsdcov/opt:
     description: "Linux64-JSDCov Opt"
     index:
         product: firefox
         job-name: linux64-jsdcov-opt
@@ -523,16 +539,17 @@ linux64-jsdcov/opt:
         config:
             - builds/releng_base_linux_64_builds.py
             - balrog/production.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         tooltool-downloads: public
         need-xvfb: true
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 linux64-ccov/opt:
     description: "Linux64-CCov Opt"
     index:
         product: firefox
         job-name: linux64-ccov-opt
@@ -554,16 +571,17 @@ linux64-ccov/opt:
             - builds/releng_base_linux_64_builds.py
             - balrog/production.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         custom-build-variant-cfg: code-coverage
         tooltool-downloads: public
         need-xvfb: true
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 linux64-add-on-devel/opt:
     description: "Linux64 add-on-devel"
     index:
         product: firefox
         job-name: linux64-add-on-devel
@@ -584,10 +602,11 @@ linux64-add-on-devel/opt:
             - balrog/production.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         custom-build-variant-cfg: add-on-devel
         tooltool-downloads: public
         need-xvfb: true
     run-on-projects: [ 'mozilla-beta', 'mozilla-release', 'mozilla-esr45' ]
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
--- a/taskcluster/ci/build/macosx.yml
+++ b/taskcluster/ci/build/macosx.yml
@@ -18,16 +18,17 @@ macosx64/debug:
         config:
             - builds/releng_base_mac_64_cross_builds.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         custom-build-variant-cfg: cross-debug
         tooltool-downloads: internal
     toolchains:
         - linux64-cctools-port
+        - linux64-clang
         - linux64-hfsplus
         - linux64-libdmg
         - linux64-sccache
 
 macosx64/opt:
     description: "MacOS X x64 Cross-compile"
     index:
         product: firefox
@@ -46,16 +47,17 @@ macosx64/opt:
         actions: [get-secrets build update]
         config:
             - builds/releng_base_mac_64_cross_builds.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         tooltool-downloads: internal
     toolchains:
         - linux64-cctools-port
+        - linux64-clang
         - linux64-hfsplus
         - linux64-libdmg
         - linux64-sccache
 
 macosx64-dmd/opt:
     description: "MacOS X x64 DMD Cross-compile"
     index:
         product: firefox
@@ -76,16 +78,17 @@ macosx64-dmd/opt:
             - builds/releng_base_mac_64_cross_builds.py
         script: "mozharness/scripts/fx_desktop_build.py"
         custom-build-variant-cfg: dmd
         secrets: true
         tooltool-downloads: internal
     run-on-projects: [ ]
     toolchains:
         - linux64-cctools-port
+        - linux64-clang
         - linux64-hfsplus
         - linux64-libdmg
         - linux64-sccache
 
 macosx64-devedition/opt:
     description: "MacOS X Dev Edition x64"
     index:
         product: devedition
@@ -105,16 +108,17 @@ macosx64-devedition/opt:
         config:
             - builds/releng_base_mac_64_cross_builds.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         tooltool-downloads: internal
     run-on-projects: ['mozilla-beta',]
     toolchains:
         - linux64-cctools-port
+        - linux64-clang
         - linux64-hfsplus
         - linux64-libdmg
         - linux64-sccache
 
 macosx64-noopt/debug:
     description: "MacOS X x64 No-optimize Debug"
     index:
         product: firefox
@@ -138,16 +142,17 @@ macosx64-noopt/debug:
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         custom-build-variant-cfg: cross-noopt-debug
         tooltool-downloads: internal
         keep-artifacts: false
     run-on-projects: [ 'trunk', 'try' ]
     toolchains:
         - linux64-cctools-port
+        - linux64-clang
         - linux64-hfsplus
         - linux64-libdmg
         - linux64-sccache
 
 macosx64-add-on-devel/opt:
     description: "MacOS X x64 add-on-devel"
     index:
         product: firefox
@@ -169,16 +174,17 @@ macosx64-add-on-devel/opt:
             - balrog/production.py
        script: "mozharness/scripts/fx_desktop_build.py"
        secrets: true
        custom-build-variant-cfg: add-on-devel
        tooltool-downloads: internal
     run-on-projects: [ 'mozilla-beta', 'mozilla-release', 'mozilla-esr45' ]
     toolchains:
         - linux64-cctools-port
+        - linux64-clang
         - linux64-hfsplus
         - linux64-libdmg
         - linux64-sccache
 
 macosx64-nightly/opt:
     description: "MacOS X x64 Cross-compile Nightly"
     attributes:
         nightly: true
@@ -202,11 +208,12 @@ macosx64-nightly/opt:
             - builds/releng_base_mac_64_cross_builds.py
             - disable_signing.py
             - taskcluster_nightly.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         tooltool-downloads: internal
     toolchains:
         - linux64-cctools-port
+        - linux64-clang
         - linux64-hfsplus
         - linux64-libdmg
         - linux64-sccache
--- a/taskcluster/ci/build/windows.yml
+++ b/taskcluster/ci/build/windows.yml
@@ -13,16 +13,17 @@ win32/debug:
         env:
             TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win32/releng.manifest"
     run:
         using: mozharness
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/taskcluster_firefox_windows_32_debug.py
     toolchains:
+        - win32-clang-cl
         - win64-sccache
 
 win32/opt:
     description: "Win32 Opt"
     index:
         product: firefox
         job-name: win32-opt
     treeherder:
@@ -35,16 +36,17 @@ win32/opt:
         env:
             TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win32/releng.manifest"
     run:
         using: mozharness
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/taskcluster_firefox_windows_32_opt.py
     toolchains:
+        - win32-clang-cl
         - win64-sccache
 
 win32-dmd/opt:
     description: "Win32 DMD Opt"
     index:
         product: firefox
         job-name: win32-dmd-opt
     treeherder:
@@ -59,16 +61,17 @@ win32-dmd/opt:
     run:
         using: mozharness
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/taskcluster_firefox_windows_32_opt.py
         custom-build-variant-cfg: dmd
     run-on-projects: [ ]
     toolchains:
+        - win32-clang-cl
         - win64-sccache
 
 win32/pgo:
     description: "Win32 Opt PGO"
     index:
         product: firefox
         job-name: win32-pgo
     treeherder:
@@ -82,16 +85,17 @@ win32/pgo:
             TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win32/releng.manifest"
     run:
         using: mozharness
         options: [enable-pgo]
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/taskcluster_firefox_windows_32_opt.py
     toolchains:
+        - win32-clang-cl
         - win64-sccache
 
 win64/debug:
     description: "Win64 Debug"
     index:
         product: firefox
         job-name: win64-debug
     treeherder:
@@ -104,16 +108,17 @@ win64/debug:
         env:
             TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win64/releng.manifest"
     run:
         using: mozharness
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/taskcluster_firefox_windows_64_debug.py
     toolchains:
+        - win64-clang-cl
         - win64-sccache
 
 win64/opt:
     description: "Win64 Opt"
     index:
         product: firefox
         job-name: win64-opt
     treeherder:
@@ -126,16 +131,17 @@ win64/opt:
         env:
             TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win64/releng.manifest"
     run:
         using: mozharness
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/taskcluster_firefox_windows_64_opt.py
     toolchains:
+        - win64-clang-cl
         - win64-sccache
 
 win64-dmd/opt:
     description: "Win64 DMD Opt"
     index:
         product: firefox
         job-name: win64-dmd-opt
     treeherder:
@@ -150,16 +156,17 @@ win64-dmd/opt:
     run:
         using: mozharness
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/taskcluster_firefox_windows_64_opt.py
         custom-build-variant-cfg: dmd
     run-on-projects: [ ]
     toolchains:
+        - win64-clang-cl
         - win64-sccache
 
 win32-devedition/opt:
     description: "Win32 Dev Edition Opt"
     index:
         product: devedition
         job-name: win32-devedition-opt
     treeherder:
@@ -220,16 +227,17 @@ win32-nightly/opt:
         using: mozharness
         actions: [clone-tools, build, check-test, update]
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/taskcluster_firefox_windows_32_opt.py
             - disable_signing.py
             - taskcluster_nightly.py
     toolchains:
+        - win32-clang-cl
         - win64-sccache
 
 win64-nightly/opt:
     description: "Win64 Nightly"
     index:
         product: firefox
         job-name: win64-opt
         type: nightly
@@ -248,16 +256,17 @@ win64-nightly/opt:
         using: mozharness
         actions: [clone-tools, build, check-test, update]
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/taskcluster_firefox_windows_64_opt.py
             - disable_signing.py
             - taskcluster_nightly.py
     toolchains:
+        - win64-clang-cl
         - win64-sccache
 
 win64/pgo:
     description: "Win64 Opt PGO"
     index:
         product: firefox
         job-name: win64-pgo
     treeherder:
@@ -271,16 +280,17 @@ win64/pgo:
             TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win64/releng.manifest"
     run:
         using: mozharness
         options: [enable-pgo]
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/taskcluster_firefox_windows_64_opt.py
     toolchains:
+        - win64-clang-cl
         - win64-sccache
 
 win32-add-on-devel/opt:
     description: "Windows32 add-on-devel"
     index:
         product: firefox
         job-name: win32-add-on-devel
     treeherder:
@@ -295,16 +305,17 @@ win32-add-on-devel/opt:
     run:
         using: mozharness
         script: "mozharness/scripts/fx_desktop_build.py"
         config:
             - builds/taskcluster_firefox_windows_32_addondevel.py
             - balrog/production.py
     run-on-projects: [ 'mozilla-beta', 'mozilla-release', 'mozilla-esr45' ]
     toolchains:
+        - win32-clang-cl
         - win64-sccache
 
 win64-add-on-devel/opt:
     description: "Windows64 add-on-devel"
     index:
         product: firefox
         job-name: win64-add-on-devel
     treeherder:
@@ -319,16 +330,17 @@ win64-add-on-devel/opt:
     run:
         using: mozharness
         script: "mozharness/scripts/fx_desktop_build.py"
         config:
             - builds/taskcluster_firefox_windows_64_addondevel.py
             - balrog/production.py
     run-on-projects: [ 'mozilla-beta', 'mozilla-release', 'mozilla-esr45' ]
     toolchains:
+        - win64-clang-cl
         - win64-sccache
 
 win64-noopt/debug:
     description: "Win64 No-optimize Debug"
     index:
         product: firefox
         job-name: win64-noopt-debug
     treeherder:
@@ -342,16 +354,17 @@ win64-noopt/debug:
             TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win64/releng.manifest"
     run:
         using: mozharness
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/taskcluster_firefox_win64_noopt_debug.py
     run-on-projects: [ 'trunk', 'try' ]
     toolchains:
+        - win64-clang-cl
         - win64-sccache
 
 win32-noopt/debug:
     description: "Win32 No-optimize Debug"
     index:
         product: firefox
         job-name: win32-noopt-debug
     treeherder:
@@ -365,16 +378,17 @@ win32-noopt/debug:
             TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win32/releng.manifest"
     run:
         using: mozharness
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/taskcluster_firefox_win32_noopt_debug.py
     run-on-projects: [ 'trunk', 'try' ]
     toolchains:
+        - win32-clang-cl
         - win64-sccache
 
 win64-asan/debug:
     description: "Win64 Debug ASAN"
     index:
         product: firefox
         job-name: win64-asan-debug
     treeherder:
@@ -388,16 +402,17 @@ win64-asan/debug:
             TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win64/clang.manifest"
     run:
         using: mozharness
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/taskcluster_firefox_win64_asan_debug.py
     run-on-projects: []
     toolchains:
+        - win64-clang-cl
         - win64-sccache
 
 win64-asan/opt:
     description: "Win64 Opt ASAN"
     index:
         product: firefox
         job-name: win64-asan-opt
     treeherder:
@@ -411,9 +426,10 @@ win64-asan/opt:
             TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win64/clang.manifest"
     run:
         using: mozharness
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/taskcluster_firefox_win64_asan_opt.py
     run-on-projects: []
     toolchains:
+        - win64-clang-cl
         - win64-sccache
--- a/taskcluster/ci/hazard/kind.yml
+++ b/taskcluster/ci/hazard/kind.yml
@@ -39,16 +39,17 @@ jobs:
             command: >
                 cd /home/worker/checkouts/gecko/taskcluster/scripts/builder
                 && ./build-haz-linux.sh --project shell $HOME/workspace
         when:
             files-changed:
                 - js/public/**
                 - js/src/**
         toolchains:
+            - linux64-clang
             - linux64-gcc
             - linux64-sccache
 
     linux64-haz/debug:
         description: "Browser Hazard Analysis Linux"
         index:
             product: firefox
             job-name: browser-haz-debug
@@ -60,10 +61,11 @@ jobs:
                 TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/linux64/hazard.manifest"
         run:
             using: hazard
             mozconfig: "browser/config/mozconfigs/linux64/hazards"
             command: >
                 cd /home/worker/checkouts/gecko/taskcluster/scripts/builder
                 && ./build-haz-linux.sh --project browser $HOME/workspace
         toolchains:
+            - linux64-clang
             - linux64-gcc
             - linux64-sccache
--- a/taskcluster/ci/spidermonkey/kind.yml
+++ b/taskcluster/ci/spidermonkey/kind.yml
@@ -54,16 +54,17 @@ job-defaults:
             - python/**
             - taskcluster/moz.build
             - taskcluster/ci/spidermonkey/kind.yml
             - testing/mozbase/**
             - test.mozbuild
             - toolkit/mozapps/installer/package-name.mk
             - toolkit/mozapps/installer/upload-files.mk
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 jobs:
     sm-package/opt:
         description: "Spidermonkey source package and test"
         index:
             job-name: sm-package-opt
--- a/taskcluster/ci/static-analysis/kind.yml
+++ b/taskcluster/ci/static-analysis/kind.yml
@@ -85,16 +85,17 @@ jobs:
             env:
                 TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win32/clang.manifest"
         run:
             using: mozharness
             script: mozharness/scripts/fx_desktop_build.py
             config:
                 - builds/taskcluster_firefox_win32_clang_debug.py
         toolchains:
+            - win32-clang-cl
             - win64-sccache
 
     win32-st-an/opt:
         description: "Win32 Static Analysis Opt (clang-cl)"
         index:
             product: firefox
             job-name: win32-st-an-opt
         treeherder:
@@ -107,16 +108,17 @@ jobs:
             env:
                 TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win32/clang.manifest"
         run:
             using: mozharness
             script: mozharness/scripts/fx_desktop_build.py
             config:
                 - builds/taskcluster_firefox_win32_clang.py
         toolchains:
+            - win32-clang-cl
             - win64-sccache
 
     win64-st-an/debug:
         description: "Win64 Static Analysis Debug (clang-cl)"
         index:
             product: firefox
             job-name: win64-st-an-debug
         treeherder:
@@ -129,16 +131,17 @@ jobs:
             env:
                 TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win64/clang.manifest"
         run:
             using: mozharness
             script: mozharness/scripts/fx_desktop_build.py
             config:
                 - builds/taskcluster_firefox_win64_clang_debug.py
         toolchains:
+            - win64-clang-cl
             - win64-sccache
 
     win64-st-an/opt:
         description: "Win64 Static Analysis Opt (clang-cl)"
         index:
             product: firefox
             job-name: win64-st-an-opt
         treeherder:
@@ -151,9 +154,10 @@ jobs:
             env:
                 TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win64/clang.manifest"
         run:
             using: mozharness
             script: mozharness/scripts/fx_desktop_build.py
             config:
                 - builds/taskcluster_firefox_win64_clang.py
         toolchains:
+            - win64-clang-cl
             - win64-sccache
--- a/taskcluster/ci/toolchain/linux.yml
+++ b/taskcluster/ci/toolchain/linux.yml
@@ -46,16 +46,17 @@ linux64-clang-tidy:
         using: toolchain-script
         script: build-clang-tidy-linux.sh
         resources:
             - 'build/clang-plugin/**'
             - 'build/build-clang/**'
             - 'taskcluster/scripts/misc/tooltool-download.sh'
         toolchain-artifact: public/build/clang-tidy.tar.xz
     toolchains:
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 linux64-gcc:
     description: "GCC toolchain build"
     treeherder:
         kind: build
         platform: toolchains/opt
@@ -105,16 +106,17 @@ linux64-cctools-port:
             TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/linux64/clang.manifest"
     run:
         using: toolchain-script
         script: build-cctools-port.sh
         resources:
             - 'taskcluster/scripts/misc/tooltool-download.sh'
         toolchain-artifact: public/build/cctools.tar.xz
     toolchains:
+        - linux64-clang
         - linux64-sccache
 
 linux64-hfsplus:
     description: "hfsplus toolchain build"
     treeherder:
         kind: build
         platform: toolchains/opt
         symbol: TL(hfs+)
@@ -128,16 +130,17 @@ linux64-hfsplus:
     run:
         using: toolchain-script
         script: build-hfsplus-linux.sh
         resources:
             - 'build/unix/build-hfsplus/**'
             - 'taskcluster/scripts/misc/tooltool-download.sh'
         toolchain-artifact: public/build/hfsplus-tools.tar.xz
     toolchains:
+        - linux64-clang
         - linux64-sccache
 
 linux64-libdmg:
     description: "libdmg-hfsplus toolchain build"
     treeherder:
         kind: build
         platform: toolchains/opt
         symbol: TL(libdmg-hfs+)
@@ -165,8 +168,10 @@ linux64-sccache:
         env:
             TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/linux64/clang.manifest"
     run:
         using: toolchain-script
         script: build-sccache.sh
         resources:
             - 'taskcluster/scripts/misc/tooltool-download.sh'
         toolchain-artifact: public/build/sccache2.tar.xz
+    toolchains:
+        - linux64-clang
--- a/taskcluster/ci/toolchain/macosx.yml
+++ b/taskcluster/ci/toolchain/macosx.yml
@@ -20,16 +20,17 @@ macosx64-clang:
         script: build-clang-macosx.sh
         tooltool-downloads: internal
         resources:
             - 'build/build-clang/**'
             - 'taskcluster/scripts/misc/tooltool-download.sh'
         toolchain-artifact: public/build/clang.tar.xz
     toolchains:
         - linux64-cctools-port
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 macosx64-clang-tidy:
     description: "Clang-tidy build"
     index:
         product: static-analysis
         job-name: macosx64-clang-tidy
@@ -50,16 +51,17 @@ macosx64-clang-tidy:
         tooltool-downloads: internal
         resources:
             - 'build/clang-plugin/**'
             - 'build/build-clang/**'
             - 'taskcluster/scripts/misc/tooltool-download.sh'
         toolchain-artifact: public/build/clang-tidy.tar.xz
     toolchains:
         - linux64-cctools-port
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
 
 macosx64-cctools-port:
     description: "cctools-port toolchain build"
     treeherder:
         kind: build
         platform: toolchains/opt
@@ -75,10 +77,11 @@ macosx64-cctools-port:
         using: toolchain-script
         script: build-cctools-port-macosx.sh
         tooltool-downloads: internal
         resources:
             - 'taskcluster/scripts/misc/tooltool-download.sh'
         toolchain-artifact: public/build/cctools.tar.bz2
     toolchains:
         - linux64-cctools-port
+        - linux64-clang
         - linux64-gcc
         - linux64-sccache
--- a/taskcluster/ci/valgrind/kind.yml
+++ b/taskcluster/ci/valgrind/kind.yml
@@ -37,10 +37,11 @@ jobs:
             config:
                 - builds/releng_base_linux_64_builds.py
                 - balrog/production.py
             script: "mozharness/scripts/fx_desktop_build.py"
             secrets: true
             tooltool-downloads: public
             need-xvfb: true
         toolchains:
+            - linux64-clang
             - linux64-gcc
             - linux64-sccache