Bug 1769174 - Add clang trunk tasks for all supported hosts/targets. r=firefox-build-system-reviewers,andi

Differential Revision: https://phabricator.services.mozilla.com/D146268
This commit is contained in:
Mike Hommey 2022-05-14 22:06:55 +00:00
Родитель 2a3f046f0d
Коммит 34be9b5fa9
5 изменённых файлов: 598 добавлений и 14 удалений

Просмотреть файл

@ -387,6 +387,101 @@ win64-clang-14-stage1:
toolchain:
- win64-vs2019
linux64-clang-trunk-mingw-x86:
description: "MinGW-Clang trunk x86 toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TMW(clang-trunk-x86)
worker-type: b-linux
run:
script: build-clang-mingw.sh
arguments:
- 'x86'
toolchain-artifact: public/build/clangmingw.tar.zst
fetches:
fetch:
- clang-trunk
- mingw-w64
- llvm-mingw
- gcc-9.4.0
toolchain:
- linux64-clang-trunk
linux64-clang-trunk-mingw-x64:
description: "MinGW-Clang trunk x64 toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TMW(clang-trunk-x64)
tier: 1
worker-type: b-linux
run:
script: build-clang-mingw.sh
arguments:
- 'x64'
toolchain-artifact: public/build/clangmingw.tar.zst
fetches:
fetch:
- clang-trunk
- mingw-w64
- llvm-mingw
- gcc-9.4.0
toolchain:
- linux64-clang-trunk
linux64-clang-trunk-stage1:
description: "Clang trunk toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TL(clang-trunk-stage1)
run:
using: toolchain-script
script: build-clang.sh
arguments:
- 'build/build-clang/linux64.json'
- 'build/build-clang/clang-trunk.json'
- 'build/build-clang/1stage.json'
resources:
- 'build/build-clang/linux64.json'
- 'build/build-clang/clang-trunk.json'
- 'build/build-clang/1stage.json'
toolchain-artifact: public/build/clang.tar.zst
fetches:
fetch:
- clang-trunk
toolchain:
- linux64-toolchain-sysroot
linux64-clang-trunk-profile:
description: "Clang trunk toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TL(clang-trunk-profile)
run:
using: toolchain-script
script: build-clang.sh
arguments:
- 'build/build-clang/linux64.json'
- 'build/build-clang/clang-trunk.json'
- 'build/build-clang/skip-stage-1.json'
- 'build/build-clang/profile.json'
resources:
- 'build/build-clang/linux64.json'
- 'build/build-clang/clang-trunk.json'
- 'build/build-clang/skip-stage-1.json'
- 'build/build-clang/profile.json'
toolchain-artifact: public/build/merged.profdata
fetches:
fetch:
- clang-trunk
toolchain:
- linux64-clang-trunk-stage1
- linux64-x64-compiler-rt-trunk
- linux64-toolchain-sysroot
linux64-clang-trunk-raw:
description: "Clang trunk toolchain build"
attributes:
@ -394,22 +489,24 @@ linux64-clang-trunk-raw:
treeherder:
symbol: TL(clang-trunk-raw)
run:
using: toolchain-script
script: build-clang.sh
arguments:
- 'build/build-clang/linux64.json'
- 'build/build-clang/clang-trunk.json'
- 'build/build-clang/2stages.json'
- 'build/build-clang/skip-3-stages.json'
- 'build/build-clang/4stages-pgo.json'
resources:
- 'build/build-clang/linux64.json'
- 'build/build-clang/clang-trunk.json'
- 'build/build-clang/2stages.json'
- 'build/build-clang/skip-3-stages.json'
- 'build/build-clang/4stages-pgo.json'
toolchain-artifact: public/build/clang.tar.zst
run-on-projects: []
fetches:
fetch:
- clang-trunk
toolchain:
- linux64-clang-trunk-stage1
- linux64-clang-trunk-profile
- linux64-toolchain-sysroot
linux64-clang-trunk:
@ -424,8 +521,221 @@ linux64-clang-trunk:
run:
script: repack-clang.sh
toolchain-artifact: public/build/clang.tar.zst
run-on-projects: []
fetches:
toolchain:
- linux64-cctools-port
- linux64-clang-trunk-raw
- wasm32-wasi-compiler-rt
- android-aarch64-compiler-rt-trunk
- android-arm-compiler-rt-trunk
- android-x64-compiler-rt-trunk
- android-x86-compiler-rt-trunk
- linux64-aarch64-compiler-rt-trunk
- linux64-x64-compiler-rt-trunk
- linux64-x86-compiler-rt-trunk
- macosx64-aarch64-compiler-rt-trunk
- macosx64-x64-compiler-rt-trunk
- wasm32-wasi-compiler-rt-trunk
- win32-compiler-rt-trunk
- win64-compiler-rt-trunk
macosx64-clang-trunk-raw:
description: "Clang trunk toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TM(clang-trunk-raw)
worker-type: b-linux-large
worker:
max-run-time: 3600
run:
script: build-clang.sh
arguments:
- 'build/build-clang/macosx64.json'
- 'build/build-clang/clang-trunk.json'
- 'build/build-clang/skip-3-stages.json'
- 'build/build-clang/4stages-pgo.json'
resources:
- 'build/build-clang/macosx64.json'
- 'build/build-clang/clang-trunk.json'
- 'build/build-clang/skip-3-stages.json'
- 'build/build-clang/4stages-pgo.json'
toolchain-artifact: public/build/clang.tar.zst
fetches:
fetch:
- clang-trunk
toolchain:
- linux64-cctools-port
- linux64-clang-trunk-stage1
- linux64-clang-trunk-profile
- macosx64-sdk-11.0
- macosx64-x64-compiler-rt-trunk
macosx64-clang-trunk:
description: "Clang trunk toolchain repack with MacOS Compiler RT libs"
attributes:
cached_task: false
treeherder:
symbol: TM(clang-trunk)
worker-type: b-linux
worker:
max-run-time: 600
run:
script: repack-clang.sh
toolchain-artifact: public/build/clang.tar.zst
fetches:
toolchain:
- linux64-cctools-port
- macosx64-clang-trunk-raw
- android-aarch64-compiler-rt-trunk
- android-arm-compiler-rt-trunk
- android-x64-compiler-rt-trunk
- android-x86-compiler-rt-trunk
- linux64-aarch64-compiler-rt-trunk
- linux64-x64-compiler-rt-trunk
- linux64-x86-compiler-rt-trunk
- macosx64-aarch64-compiler-rt-trunk
- macosx64-x64-compiler-rt-trunk
- wasm32-wasi-compiler-rt-trunk
- win32-compiler-rt-trunk
- win64-compiler-rt-trunk
macosx64-aarch64-clang-trunk-raw:
description: "Clang trunk toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TM(clang-trunk-aarch64-raw)
worker-type: b-linux-large
worker:
env:
OSX_ARCH: arm64
max-run-time: 3600
run:
script: build-clang.sh
arguments:
- 'build/build-clang/macosx64.json'
- 'build/build-clang/clang-trunk.json'
- 'build/build-clang/skip-3-stages.json'
- 'build/build-clang/4stages-pgo.json'
resources:
- 'build/build-clang/macosx64.json'
- 'build/build-clang/clang-trunk.json'
- 'build/build-clang/skip-3-stages.json'
- 'build/build-clang/4stages-pgo.json'
toolchain-artifact: public/build/clang.tar.zst
fetches:
fetch:
- clang-trunk
toolchain:
- linux64-cctools-port
- linux64-clang-trunk-stage1
- linux64-clang-trunk-profile
- macosx64-sdk-11.0
- macosx64-aarch64-compiler-rt-trunk
macosx64-aarch64-clang-trunk:
description: "Clang trunk toolchain repack with MacOS Compiler RT libs"
attributes:
cached_task: false
treeherder:
symbol: TM(clang-trunk-aarch64)
worker-type: b-linux
worker:
max-run-time: 600
run:
script: repack-clang.sh
toolchain-artifact: public/build/clang.tar.zst
fetches:
toolchain:
- linux64-cctools-port
- macosx64-aarch64-clang-trunk-raw
- macosx64-aarch64-compiler-rt-trunk
- macosx64-x64-compiler-rt-trunk
- wasm32-wasi-compiler-rt-trunk
win64-clang-trunk-raw:
description: "Clang-cl trunk toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TW64(clang-trunk-raw)
worker-type: b-win2012
worker:
max-run-time: 9000
run:
script: build-clang.sh
arguments:
- 'build/build-clang/win64.json'
- 'build/build-clang/clang-trunk.json'
- 'build/build-clang/skip-stage-1-win64.json'
- 'build/build-clang/4stages-pgo.json'
resources:
- 'build/build-clang/win64.json'
- 'build/build-clang/clang-trunk.json'
- 'build/build-clang/skip-stage-1-win64.json'
- 'build/build-clang/4stages-pgo.json'
toolchain-artifact: public/build/clang.tar.zst
fetches:
fetch:
- clang-trunk
- cmake
- ninja
toolchain:
- win64-clang-trunk-stage1
- win64-compiler-rt-trunk
- win64-vs2019
win64-clang-trunk:
description: "Clang-cl trunk toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TW64(clang-trunk)
worker-type: b-linux
worker:
max-run-time: 600
run:
script: repack-clang.sh
toolchain-artifact: public/build/clang.tar.zst
fetches:
toolchain:
- linux64-cctools-port
- win64-clang-trunk-raw
- android-aarch64-compiler-rt-trunk
- android-arm-compiler-rt-trunk
- android-x64-compiler-rt-trunk
- android-x86-compiler-rt-trunk
- linux64-aarch64-compiler-rt-trunk
- linux64-x64-compiler-rt-trunk
- linux64-x86-compiler-rt-trunk
- macosx64-aarch64-compiler-rt-trunk
- macosx64-x64-compiler-rt-trunk
- wasm32-wasi-compiler-rt-trunk
- win32-compiler-rt-trunk
- win64-compiler-rt-trunk
win64-clang-trunk-stage1:
description: "Clang-cl trunk toolchain build stage 1"
attributes:
cached_task: false
treeherder:
symbol: TW64(clang-trunk-stage1)
worker-type: b-win2012
run:
script: build-clang.sh
arguments:
- 'build/build-clang/win64.json'
- 'build/build-clang/clang-trunk.json'
- 'build/build-clang/1stage.json'
resources:
- 'build/build-clang/win64.json'
- 'build/build-clang/clang-trunk.json'
- 'build/build-clang/1stage.json'
toolchain-artifact: public/build/clang.tar.zst
fetches:
fetch:
- clang-trunk
- cmake
- ninja
toolchain:
- win64-vs2019

Просмотреть файл

@ -225,3 +225,242 @@ wasm32-wasi-compiler-rt-14:
- wasi-sdk
toolchain:
- linux64-clang-14-stage1
android-aarch64-compiler-rt-trunk:
description: "android aarch64 Compiler-rt for Clang trunk toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TA(aarch64-crt-trunk)
run:
arguments:
- build/build-clang/clang-trunk.json
resources:
- build/build-clang/clang-trunk.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-artifact: public/build/compiler-rt-aarch64-linux-android.tar.zst
fetches:
fetch:
- clang-trunk
toolchain:
- linux64-clang-trunk-stage1
- linux64-android-ndk-linux-repack
android-arm-compiler-rt-trunk:
description: "android arm Compiler-rt for Clang trunk toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TA(arm-crt-trunk)
run:
arguments:
- build/build-clang/clang-trunk.json
resources:
- build/build-clang/clang-trunk.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-artifact: public/build/compiler-rt-armv7-linux-android.tar.zst
fetches:
fetch:
- clang-trunk
toolchain:
- linux64-clang-trunk-stage1
- linux64-android-ndk-linux-repack
android-x86-compiler-rt-trunk:
description: "android x86 Compiler-rt for Clang trunk toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TA(x86-crt-trunk)
run:
arguments:
- build/build-clang/clang-trunk.json
resources:
- build/build-clang/clang-trunk.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-artifact: public/build/compiler-rt-i686-linux-android.tar.zst
fetches:
fetch:
- clang-trunk
toolchain:
- linux64-clang-trunk-stage1
- linux64-android-ndk-linux-repack
android-x64-compiler-rt-trunk:
description: "android x64 Compiler-rt for Clang trunk toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TA(x64-crt-trunk)
run:
arguments:
- build/build-clang/clang-trunk.json
resources:
- build/build-clang/clang-trunk.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-artifact: public/build/compiler-rt-x86_64-linux-android.tar.zst
fetches:
fetch:
- clang-trunk
toolchain:
- linux64-clang-trunk-stage1
- linux64-android-ndk-linux-repack
linux64-x86-compiler-rt-trunk:
description: "Linux x86 Compiler-rt for Clang trunk toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TL(x86-crt-trunk)
run:
arguments:
- build/build-clang/clang-trunk.json
resources:
- build/build-clang/clang-trunk.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-artifact: public/build/compiler-rt-i686-unknown-linux-gnu.tar.zst
fetches:
fetch:
- clang-trunk
toolchain:
- linux64-clang-trunk-stage1
- sysroot-i686-linux-gnu
linux64-x64-compiler-rt-trunk:
description: "Linux x64 Compiler-rt for Clang trunk toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TL(x64-crt-trunk)
run:
arguments:
- build/build-clang/clang-trunk.json
resources:
- build/build-clang/clang-trunk.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-artifact: public/build/compiler-rt-x86_64-unknown-linux-gnu.tar.zst
fetches:
fetch:
- clang-trunk
toolchain:
- linux64-clang-trunk-stage1
- sysroot-x86_64-linux-gnu
linux64-aarch64-compiler-rt-trunk:
description: "Linux aarch64 Compiler-rt for Clang trunk toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TL(aarch64-crt-trunk)
run:
arguments:
- build/build-clang/clang-trunk.json
resources:
- build/build-clang/clang-trunk.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-artifact: public/build/compiler-rt-aarch64-unknown-linux-gnu.tar.zst
fetches:
fetch:
- clang-trunk
toolchain:
- linux64-clang-trunk-stage1
- sysroot-aarch64-linux-gnu
macosx64-x64-compiler-rt-trunk:
description: "macOS x64 Compiler-rt for Clang trunk toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TM(x64-crt-trunk)
run:
arguments:
- build/build-clang/clang-trunk.json
resources:
- build/build-clang/clang-trunk.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-artifact: public/build/compiler-rt-x86_64-apple-darwin.tar.zst
fetches:
fetch:
- clang-trunk
toolchain:
- linux64-clang-trunk-stage1
- macosx64-sdk-11.0
macosx64-aarch64-compiler-rt-trunk:
description: "macOS aarch64 Compiler-rt for Clang trunk toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TM(aarch64-crt-trunk)
run:
arguments:
- build/build-clang/clang-trunk.json
resources:
- build/build-clang/clang-trunk.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-artifact: public/build/compiler-rt-aarch64-apple-darwin.tar.zst
fetches:
fetch:
- clang-trunk
toolchain:
- linux64-clang-trunk-stage1
- macosx64-sdk-11.0
win32-compiler-rt-trunk:
description: "win32 x86 Compiler-rt for Clang trunk toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TW32(crt-trunk)
run:
arguments:
- build/build-clang/clang-trunk.json
resources:
- build/build-clang/clang-trunk.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-artifact: public/build/compiler-rt-i686-pc-windows-msvc.tar.zst
fetches:
fetch:
- clang-trunk
toolchain:
- linux64-clang-trunk-stage1
- linux64-liblowercase
- win64-vs2019
win64-compiler-rt-trunk:
description: "win64 x64 Compiler-rt for Clang trunk toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TW64(crt-trunk)
run:
arguments:
- build/build-clang/clang-trunk.json
resources:
- build/build-clang/clang-trunk.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-artifact: public/build/compiler-rt-x86_64-pc-windows-msvc.tar.zst
fetches:
fetch:
- clang-trunk
toolchain:
- linux64-clang-trunk-stage1
- linux64-liblowercase
- win64-vs2019
wasm32-wasi-compiler-rt-trunk:
description: "wasm32-wasi Compiler-rt for Clang trunk toolchain build"
attributes:
cached_task: false
treeherder:
symbol: TL(wasi-crt-trunk)
worker-type: b-linux-xlarge
run:
script: build-compiler-rt-wasi.sh
toolchain-artifact: public/build/compiler-rt-wasm32-wasi.tar.zst
fetches:
fetch:
- clang-trunk
- wasi-sdk
toolchain:
- linux64-clang-trunk-stage1

Просмотреть файл

@ -63,15 +63,16 @@ sysroot-x86_64-linux-gnu-x11:
arguments:
- amd64
sysroot-wasm32-wasi:
sysroot-wasm32-wasi-clang-14:
description: "Sysroot for wasi"
attributes:
local-toolchain: true
run-on-projects: [trunk]
treeherder:
symbol: TL(sysroot-wasi)
symbol: TL(sysroot-wasi-14)
run:
script: build-sysroot-wasi.sh
toolchain-alias: sysroot-wasm32-wasi
toolchain-artifact: public/build/sysroot-wasm32-wasi.tar.zst
fetches:
fetch:
@ -80,6 +81,22 @@ sysroot-wasm32-wasi:
toolchain:
- linux64-clang-14
sysroot-wasm32-wasi-clang-trunk:
description: "Sysroot for wasi"
attributes:
cached_task: false
treeherder:
symbol: TL(sysroot-wasi-trunk)
run:
script: build-sysroot-wasi.sh
toolchain-artifact: public/build/sysroot-wasm32-wasi.tar.zst
fetches:
fetch:
- clang-trunk
- wasi-sdk
toolchain:
- linux64-clang-trunk
sysroot-aarch64-linux-gnu:
description: "Sysroot for linux64 aarch64 builds"
attributes:

Просмотреть файл

@ -13,6 +13,13 @@ case "$target" in
-DCOMPILER_RT_BUILD_ORC=OFF
"
;;
*-apple-darwin)
EXTRA_CMAKE_FLAGS="
-DCOMPILER_RT_ENABLE_IOS=OFF
-DCOMPILER_RT_ENABLE_WATCHOS=OFF
-DCOMPILER_RT_ENABLE_TVOS=OFF
"
;;
esac
EXTRA_CMAKE_FLAGS="

Просмотреть файл

@ -122,18 +122,29 @@ case "$target" in
*-pc-windows-msvc)
export LD_PRELOAD="/builds/worker/fetches/liblowercase/liblowercase.so"
export LOWERCASE_DIRS="/builds/worker/fetches/vs"
# WinMsvc.cmake before LLVM 15 doesn't support spaces in WINDSK_BASE. LLVM 15+ uses
# different input variables.
ln -s "windows kits/10" $MOZ_FETCHES_DIR/vs/sdk
EXTRA_CMAKE_FLAGS="
$EXTRA_CMAKE_FLAGS
-DCMAKE_TOOLCHAIN_FILE=$MOZ_FETCHES_DIR/llvm-project/llvm/cmake/platforms/WinMsvc.cmake
-DLLVM_NATIVE_TOOLCHAIN=$MOZ_FETCHES_DIR/clang
-DMSVC_BASE=$MOZ_FETCHES_DIR/vs/vc/tools/msvc/14.29.30133
-DWINSDK_BASE=$MOZ_FETCHES_DIR/vs/sdk
-DWINSDK_VER=10.0.19041.0
-DHOST_ARCH=${target%-pc-windows-msvc}
-DLLVM_DISABLE_ASSEMBLY_FILES=ON
"
# LLVM 15+ uses different input variables.
if grep -q LLVM_WINSYSROOT $MOZ_FETCHES_DIR/llvm-project/llvm/cmake/platforms/WinMsvc.cmake; then
EXTRA_CMAKE_FLAGS="
$EXTRA_CMAKE_FLAGS
-DLLVM_WINSYSROOT=$MOZ_FETCHES_DIR/vs
"
else
# WinMsvc.cmake before LLVM 15 doesn't support spaces in WINDSK_BASE.
ln -s "windows kits/10" $MOZ_FETCHES_DIR/vs/sdk
EXTRA_CMAKE_FLAGS="
$EXTRA_CMAKE_FLAGS
-DMSVC_BASE=$MOZ_FETCHES_DIR/vs/vc/tools/msvc/14.29.30133
-DWINSDK_BASE=$MOZ_FETCHES_DIR/vs/sdk
-DWINSDK_VER=10.0.19041.0
"
fi
;;
*)
echo $target is not supported yet