blob: 1b2cb3df35eb6ad8b794f16f76c9d41acd5d5a66 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
|
#!/bin/sh
set -e
target=$1
shift
case "$target" in
aarch64-apple-darwin)
arch=arm64
sdk=11.0
extra_flags="-mcpu=apple-a12"
;;
x86_64-apple-darwin)
arch=x86_64
sdk=10.12
;;
*)
echo $target is not supported yet
exit 1
;;
esac
export PATH="$MOZ_FETCHES_DIR/cctools/bin:$PATH"
if [ -n "$TOOLTOOL_MANIFEST" ]; then
. $GECKO_PATH/taskcluster/scripts/misc/tooltool-download.sh
fi
mkdir compiler-rt
cd compiler-rt
compiler_wrapper() {
cat > $1 <<EOF
exec \$MOZ_FETCHES_DIR/clang/bin/$1 -target $target $extra_flags -isysroot \$MOZ_FETCHES_DIR/MacOSX$sdk.sdk "\$@"
EOF
chmod +x $1
}
compiler_wrapper clang
compiler_wrapper clang++
for patchfile in "$@"; do
patch -d $MOZ_FETCHES_DIR/llvm-project -p1 < $GECKO_PATH/$patchfile
done
cmake \
$MOZ_FETCHES_DIR/llvm-project/compiler-rt \
-GNinja \
-DCMAKE_C_COMPILER=$PWD/clang \
-DCMAKE_CXX_COMPILER=$PWD/clang++ \
-DCMAKE_LINKER=$MOZ_FETCHES_DIR/cctools/bin/$target-ld \
-DCMAKE_LIPO=$MOZ_FETCHES_DIR/cctools/bin/lipo \
-DCMAKE_AR=$MOZ_FETCHES_DIR/cctools/bin/$target-ar \
-DCMAKE_RANLIB=$MOZ_FETCHES_DIR/cctools/bin/$target-ranlib \
-DCMAKE_BUILD_TYPE=Release \
-DLLVM_ENABLE_ASSERTIONS=OFF \
-DLLVM_CONFIG_PATH=$MOZ_FETCHES_DIR/clang/bin/llvm-config \
-DCMAKE_SYSTEM_NAME=Darwin \
-DCMAKE_SYSTEM_VERSION=$sdk \
-DDARWIN_osx_ARCHS=$arch \
-DDARWIN_osx_SYSROOT=$MOZ_FETCHES_DIR/MacOSX$sdk.sdk \
-DLLVM_DEFAULT_TARGET_TRIPLE=$target \
-DDARWIN_macosx_OVERRIDE_SDK_VERSION=$sdk \
-DDARWIN_osx_BUILTIN_ARCHS=$arch
# compiler-rt build script expects to find `codesign` in $PATH.
# Give it a fake one.
echo "#!/bin/sh" > codesign
chmod +x codesign
PATH=$PATH:$PWD ninja -v
cd ..
tar -cf - compiler-rt/lib/darwin | python3 $GECKO_PATH/taskcluster/scripts/misc/zstdpy > "compiler-rt.tar.zst"
mkdir -p "$UPLOAD_DIR"
mv "compiler-rt.tar.zst" "$UPLOAD_DIR"
|