зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1913646 - Add win64-aarch64-clang-18 task r=firefox-build-system-reviewers,sergesanspaille
For now this uses Linux x64 profile for PGO as the macosx64-aarch64 task does, because we don't have aarch64 Windows worker now. Differential Revision: https://phabricator.services.mozilla.com/D219012
This commit is contained in:
Родитель
d0b2acb43f
Коммит
6bc82eb120
|
@ -25,6 +25,7 @@ import zstandard
|
|||
SUPPORTED_TARGETS = {
|
||||
"x86_64-unknown-linux-gnu": ("Linux", "x86_64"),
|
||||
"x86_64-pc-windows-msvc": ("Windows", "AMD64"),
|
||||
"aarch64-pc-windows-msvc": ("Windows", "ARM64"),
|
||||
"x86_64-apple-darwin": ("Darwin", "x86_64"),
|
||||
"aarch64-apple-darwin": ("Darwin", "arm64"),
|
||||
}
|
||||
|
@ -624,6 +625,9 @@ def main():
|
|||
exe_ext = ".exe"
|
||||
cc_name = "clang-cl"
|
||||
cxx_name = "clang-cl"
|
||||
|
||||
# Used by llvm/lib/DebugInfo/PDB
|
||||
os.environ["VSCMD_ARG_TGT_ARCH"] = SUPPORTED_TARGETS[target][1].lower()
|
||||
else:
|
||||
exe_ext = ""
|
||||
cc_name = "clang"
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"skip_stages": "3",
|
||||
"cc": "{MOZ_FETCHES_DIR}/clang/bin/clang-cl",
|
||||
"cxx": "{MOZ_FETCHES_DIR}/clang/bin/clang-cl",
|
||||
"ml": "{MOZ_FETCHES_DIR}/clang/bin/clang-cl",
|
||||
"lib": "{MOZ_FETCHES_DIR}/clang/bin/llvm-lib"
|
||||
}
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"target": "aarch64-pc-windows-msvc"
|
||||
}
|
|
@ -513,6 +513,71 @@ win64-clang-18:
|
|||
- win64-compiler-rt-18
|
||||
- win64-aarch64-compiler-rt-18
|
||||
|
||||
win64-aarch64-clang-18-raw:
|
||||
description: "Clang-cl 18 toolchain build"
|
||||
treeherder:
|
||||
symbol: TW64(clang-18-aarch64-raw)
|
||||
worker:
|
||||
max-run-time: 3600
|
||||
run:
|
||||
script: build-clang.sh
|
||||
arguments:
|
||||
- 'build/build-clang/win64.json'
|
||||
- 'build/build-clang/win64-aarch64.json'
|
||||
- 'build/build-clang/clang-18.json'
|
||||
- 'build/build-clang/skip-3-stages-win64.json'
|
||||
- 'build/build-clang/4stages-pgo.json'
|
||||
resources:
|
||||
- 'build/build-clang/win64.json'
|
||||
- 'build/build-clang/win64-aarch64.json'
|
||||
- 'build/build-clang/clang-18.json'
|
||||
- 'build/build-clang/skip-3-stages-win64.json'
|
||||
- 'build/build-clang/4stages-pgo.json'
|
||||
toolchain-artifact: public/build/clang.tar.zst
|
||||
fetches:
|
||||
fetch:
|
||||
- clang-18
|
||||
toolchain:
|
||||
- linux64-clang-18-stage1
|
||||
- linux64-clang-18-profile
|
||||
- win64-aarch64-compiler-rt-18
|
||||
- vs-toolchain
|
||||
- win64-aarch64-libxml2
|
||||
|
||||
win64-aarch64-clang-18:
|
||||
description: "Clang-cl 18 toolchain build"
|
||||
attributes:
|
||||
local-toolchain: true
|
||||
treeherder:
|
||||
symbol: TW64(clang-18-aarch64)
|
||||
worker-type: b-linux-gcp
|
||||
worker:
|
||||
max-run-time: 600
|
||||
run:
|
||||
script: repack-clang.sh
|
||||
toolchain-artifact: public/build/clang.tar.zst
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-cctools-port
|
||||
- win64-aarch64-clang-18-raw
|
||||
- android-aarch64-compiler-rt-18
|
||||
- android-aarch64-libunwind-18
|
||||
- android-arm-compiler-rt-18
|
||||
- android-arm-libunwind-18
|
||||
- android-x64-compiler-rt-18
|
||||
- android-x64-libunwind-18
|
||||
- android-x86-compiler-rt-18
|
||||
- android-x86-libunwind-18
|
||||
- linux64-aarch64-compiler-rt-18
|
||||
- linux64-x64-compiler-rt-18
|
||||
- linux64-x86-compiler-rt-18
|
||||
- macosx64-aarch64-compiler-rt-18
|
||||
- macosx64-x64-compiler-rt-18
|
||||
- wasm32-wasi-compiler-rt-18
|
||||
- win32-compiler-rt-18
|
||||
- win64-compiler-rt-18
|
||||
- win64-aarch64-compiler-rt-18
|
||||
|
||||
linux64-clang-trunk-mingw-x86:
|
||||
description: "MinGW-Clang trunk x86 toolchain build"
|
||||
attributes:
|
||||
|
|
|
@ -574,6 +574,22 @@ win64-libxml2:
|
|||
symbol: TW64(libxml2)
|
||||
run:
|
||||
script: build-libxml2.sh
|
||||
arguments: ['x86_64-pc-windows-msvc']
|
||||
toolchain-artifact: public/build/libxml2.tar.zst
|
||||
fetches:
|
||||
fetch:
|
||||
- libxml2
|
||||
toolchain:
|
||||
- linux64-clang-toolchain
|
||||
- vs-toolchain
|
||||
|
||||
win64-aarch64-libxml2:
|
||||
description: "libxml2 toolchain build"
|
||||
treeherder:
|
||||
symbol: TW64(libxml2-aarch64)
|
||||
run:
|
||||
script: build-libxml2.sh
|
||||
arguments: ['aarch64-pc-windows-msvc']
|
||||
toolchain-artifact: public/build/libxml2.tar.zst
|
||||
fetches:
|
||||
fetch:
|
||||
|
|
|
@ -7,6 +7,8 @@ cd $MOZ_FETCHES_DIR/libxml2
|
|||
|
||||
export PATH="$MOZ_FETCHES_DIR/clang/bin:$PATH"
|
||||
|
||||
TARGET=${1?"First argument must be a valid value for CMAKE_C_COMPILER_TARGET"}
|
||||
|
||||
# Building the .rc file requires some extra work, but we don't
|
||||
# actually need it, so just remove its creation.
|
||||
sed -i /libxml2\\.rc/d CMakeLists.txt
|
||||
|
@ -16,6 +18,7 @@ cmake \
|
|||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DBUILD_SHARED_LIBS=Off \
|
||||
-DCMAKE_C_COMPILER=clang-cl \
|
||||
-DCMAKE_C_COMPILER_TARGET=$TARGET \
|
||||
-DCMAKE_LINKER=lld-link \
|
||||
-DCMAKE_MT=llvm-mt \
|
||||
-DCMAKE_C_FLAGS="-fuse-ld=lld -Xclang -ivfsoverlay -Xclang $MOZ_FETCHES_DIR/vs/overlay.yaml -winsysroot $MOZ_FETCHES_DIR/vs" \
|
||||
|
|
Загрузка…
Ссылка в новой задаче