forked from Floorp-Projects/Floorp
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Bug 1821221 - Switch Android builds to compiler-rt + libunwind. r=fir…
…efox-build-system-reviewers,andi Differential Revision: https://phabricator.services.mozilla.com/D172076
- Loading branch information
Showing
9 changed files
with
258 additions
and
13 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
INPUT(-lunwind) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,171 @@ | ||
# This Source Code Form is subject to the terms of the Mozilla Public | ||
# License, v. 2.0. If a copy of the MPL was not distributed with this | ||
# file, You can obtain one at http://mozilla.org/MPL/2.0/. | ||
--- | ||
job-defaults: | ||
worker-type: b-linux-gcp | ||
worker: | ||
max-run-time: 1800 | ||
run: | ||
using: toolchain-script | ||
script: build-libunwind.sh | ||
|
||
android-aarch64-libunwind-15: | ||
description: "android aarch64 libunwind for Clang 15 toolchain build" | ||
treeherder: | ||
symbol: TA(aarch64-unwind-15) | ||
run: | ||
arguments: | ||
- build/build-clang/clang-15.json | ||
resources: | ||
- build/build-clang/clang-15.json | ||
- taskcluster/scripts/misc/build-llvm-common.sh | ||
toolchain-artifact: public/build/libunwind-aarch64-linux-android.tar.zst | ||
fetches: | ||
fetch: | ||
- clang-15 | ||
toolchain: | ||
- android-aarch64-compiler-rt-15 | ||
- linux64-clang-15-stage1 | ||
- linux64-android-ndk-linux-repack | ||
|
||
android-arm-libunwind-15: | ||
description: "android arm libunwind for Clang 15 toolchain build" | ||
treeherder: | ||
symbol: TA(arm-unwind-15) | ||
run: | ||
arguments: | ||
- build/build-clang/clang-15.json | ||
resources: | ||
- build/build-clang/clang-15.json | ||
- taskcluster/scripts/misc/build-llvm-common.sh | ||
toolchain-artifact: public/build/libunwind-armv7-linux-android.tar.zst | ||
fetches: | ||
fetch: | ||
- clang-15 | ||
toolchain: | ||
- android-arm-compiler-rt-15 | ||
- linux64-clang-15-stage1 | ||
- linux64-android-ndk-linux-repack | ||
|
||
android-x86-libunwind-15: | ||
description: "android x86 libunwind for Clang 15 toolchain build" | ||
treeherder: | ||
symbol: TA(x86-unwind-15) | ||
run: | ||
arguments: | ||
- build/build-clang/clang-15.json | ||
resources: | ||
- build/build-clang/clang-15.json | ||
- taskcluster/scripts/misc/build-llvm-common.sh | ||
toolchain-artifact: public/build/libunwind-i686-linux-android.tar.zst | ||
fetches: | ||
fetch: | ||
- clang-15 | ||
toolchain: | ||
- android-x86-compiler-rt-15 | ||
- linux64-clang-15-stage1 | ||
- linux64-android-ndk-linux-repack | ||
|
||
android-x64-libunwind-15: | ||
description: "android x64 libunwind for Clang 15 toolchain build" | ||
treeherder: | ||
symbol: TA(x64-unwind-15) | ||
run: | ||
arguments: | ||
- build/build-clang/clang-15.json | ||
resources: | ||
- build/build-clang/clang-15.json | ||
- taskcluster/scripts/misc/build-llvm-common.sh | ||
toolchain-artifact: public/build/libunwind-x86_64-linux-android.tar.zst | ||
fetches: | ||
fetch: | ||
- clang-15 | ||
toolchain: | ||
- android-x64-compiler-rt-15 | ||
- linux64-clang-15-stage1 | ||
- linux64-android-ndk-linux-repack | ||
|
||
android-aarch64-libunwind-trunk: | ||
description: "android aarch64 libunwind for Clang trunk toolchain build" | ||
attributes: | ||
cached_task: false | ||
treeherder: | ||
symbol: TA(aarch64-unwind-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/libunwind-aarch64-linux-android.tar.zst | ||
fetches: | ||
fetch: | ||
- clang-trunk | ||
toolchain: | ||
- android-aarch64-compiler-rt-trunk | ||
- linux64-clang-trunk-stage1 | ||
- linux64-android-ndk-linux-repack | ||
|
||
android-arm-libunwind-trunk: | ||
description: "android arm libunwind for Clang trunk toolchain build" | ||
attributes: | ||
cached_task: false | ||
treeherder: | ||
symbol: TA(arm-unwind-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/libunwind-armv7-linux-android.tar.zst | ||
fetches: | ||
fetch: | ||
- clang-trunk | ||
toolchain: | ||
- android-arm-compiler-rt-trunk | ||
- linux64-clang-trunk-stage1 | ||
- linux64-android-ndk-linux-repack | ||
|
||
android-x86-libunwind-trunk: | ||
description: "android x86 libunwind for Clang trunk toolchain build" | ||
attributes: | ||
cached_task: false | ||
treeherder: | ||
symbol: TA(x86-unwind-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/libunwind-i686-linux-android.tar.zst | ||
fetches: | ||
fetch: | ||
- clang-trunk | ||
toolchain: | ||
- android-x86-compiler-rt-trunk | ||
- linux64-clang-trunk-stage1 | ||
- linux64-android-ndk-linux-repack | ||
|
||
android-x64-libunwind-trunk: | ||
description: "android x64 libunwind for Clang trunk toolchain build" | ||
attributes: | ||
cached_task: false | ||
treeherder: | ||
symbol: TA(x64-unwind-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/libunwind-x86_64-linux-android.tar.zst | ||
fetches: | ||
fetch: | ||
- clang-trunk | ||
toolchain: | ||
- android-x64-compiler-rt-trunk | ||
- linux64-clang-trunk-stage1 | ||
- linux64-android-ndk-linux-repack |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
#!/bin/sh | ||
|
||
set -e -x | ||
|
||
artifact=$(basename $TOOLCHAIN_ARTIFACT) | ||
dir=${artifact%.tar.*} | ||
target=${dir#libunwind-} | ||
|
||
# Make the android compiler-rt available to clang. | ||
env UPLOAD_DIR= $GECKO_PATH/taskcluster/scripts/misc/repack-clang.sh | ||
|
||
case "$target" in | ||
armv7-linux-android) | ||
unwind_arch=arm | ||
;; | ||
aarch64-linux-android) | ||
unwind_arch=aarch64 | ||
;; | ||
i686-linux-android) | ||
unwind_arch=i386 | ||
;; | ||
x86_64-linux-android) | ||
unwind_arch=x86_64 | ||
;; | ||
*) | ||
echo $target is not supported. >&2 | ||
exit 1 | ||
;; | ||
esac | ||
|
||
EXTRA_CMAKE_FLAGS=" | ||
$EXTRA_CMAKE_FLAGS | ||
-DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=OFF | ||
-DCMAKE_C_COMPILER_WORKS=1 | ||
-DCMAKE_CXX_COMPILER_WORKS=1 | ||
-DLLVM_ENABLE_RUNTIMES=libunwind | ||
-DLIBUNWIND_LIBDIR_SUFFIX=/linux/$unwind_arch | ||
-DLIBUNWIND_ENABLE_SHARED=OFF | ||
" | ||
|
||
export EXTRA_CMAKE_FLAGS | ||
|
||
$(dirname $0)/build-llvm-common.sh runtimes install $target "$@" |
Oops, something went wrong.