mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-09 03:15:11 +00:00
Bug 1690757 - Change compiler-rt cmake flags to better share with upcoming new platforms. r=firefox-build-system-reviewers,mhentges
- Switch to use llvm-ar and llvm-ranlib - Use CMAKE_*_COMPILER_TARGET for --target - Use CMAKE_OSX_SYSROOT for -isysroot - Limit the compiler wrapper to adding -mcpu=apple-a12 on arm64 - Remove -DLLVM_DEFAULT_TARGET_TRIPLE and add -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON - Group all the flags that are OSX-only Differential Revision: https://phabricator.services.mozilla.com/D104011
This commit is contained in:
parent
61d74bc90a
commit
250f0d4870
@ -5,11 +5,19 @@ set -e
|
|||||||
target=$1
|
target=$1
|
||||||
shift
|
shift
|
||||||
|
|
||||||
|
clang=$MOZ_FETCHES_DIR/clang/bin/clang
|
||||||
|
|
||||||
case "$target" in
|
case "$target" in
|
||||||
aarch64-apple-darwin)
|
aarch64-apple-darwin)
|
||||||
arch=arm64
|
arch=arm64
|
||||||
sdk=11.0
|
sdk=11.0
|
||||||
extra_flags="-mcpu=apple-a12"
|
compiler_wrapper() {
|
||||||
|
echo exec \$MOZ_FETCHES_DIR/clang/bin/$1 -mcpu=apple-a12 \"\$@\" > $1
|
||||||
|
chmod +x $1
|
||||||
|
}
|
||||||
|
compiler_wrapper clang
|
||||||
|
compiler_wrapper clang++
|
||||||
|
clang=$PWD/clang
|
||||||
;;
|
;;
|
||||||
x86_64-apple-darwin)
|
x86_64-apple-darwin)
|
||||||
arch=x86_64
|
arch=x86_64
|
||||||
@ -30,15 +38,6 @@ fi
|
|||||||
mkdir compiler-rt
|
mkdir compiler-rt
|
||||||
cd 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
|
for patchfile in "$@"; do
|
||||||
patch -d $MOZ_FETCHES_DIR/llvm-project -p1 < $GECKO_PATH/$patchfile
|
patch -d $MOZ_FETCHES_DIR/llvm-project -p1 < $GECKO_PATH/$patchfile
|
||||||
done
|
done
|
||||||
@ -46,20 +45,24 @@ done
|
|||||||
cmake \
|
cmake \
|
||||||
$MOZ_FETCHES_DIR/llvm-project/compiler-rt \
|
$MOZ_FETCHES_DIR/llvm-project/compiler-rt \
|
||||||
-GNinja \
|
-GNinja \
|
||||||
-DCMAKE_C_COMPILER=$PWD/clang \
|
-DCMAKE_C_COMPILER=$clang \
|
||||||
-DCMAKE_CXX_COMPILER=$PWD/clang++ \
|
-DCMAKE_CXX_COMPILER=$clang++ \
|
||||||
-DCMAKE_LINKER=$MOZ_FETCHES_DIR/cctools/bin/$target-ld \
|
-DCMAKE_C_COMPILER_TARGET=$target \
|
||||||
-DCMAKE_LIPO=$MOZ_FETCHES_DIR/cctools/bin/lipo \
|
-DCMAKE_CXX_COMPILER_TARGET=$target \
|
||||||
-DCMAKE_AR=$MOZ_FETCHES_DIR/cctools/bin/$target-ar \
|
-DCMAKE_ASM_COMPILER_TARGET=$target \
|
||||||
-DCMAKE_RANLIB=$MOZ_FETCHES_DIR/cctools/bin/$target-ranlib \
|
-DCMAKE_AR=$MOZ_FETCHES_DIR/clang/bin/llvm-ar \
|
||||||
|
-DCMAKE_RANLIB=$MOZ_FETCHES_DIR/clang/bin/llvm-ranlib \
|
||||||
-DCMAKE_BUILD_TYPE=Release \
|
-DCMAKE_BUILD_TYPE=Release \
|
||||||
-DLLVM_ENABLE_ASSERTIONS=OFF \
|
-DLLVM_ENABLE_ASSERTIONS=OFF \
|
||||||
-DLLVM_CONFIG_PATH=$MOZ_FETCHES_DIR/clang/bin/llvm-config \
|
-DLLVM_CONFIG_PATH=$MOZ_FETCHES_DIR/clang/bin/llvm-config \
|
||||||
|
-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON \
|
||||||
|
-DCMAKE_LINKER=$MOZ_FETCHES_DIR/cctools/bin/$target-ld \
|
||||||
|
-DCMAKE_LIPO=$MOZ_FETCHES_DIR/cctools/bin/lipo \
|
||||||
-DCMAKE_SYSTEM_NAME=Darwin \
|
-DCMAKE_SYSTEM_NAME=Darwin \
|
||||||
-DCMAKE_SYSTEM_VERSION=$sdk \
|
-DCMAKE_SYSTEM_VERSION=$sdk \
|
||||||
|
-DCMAKE_OSX_SYSROOT=$MOZ_FETCHES_DIR/MacOSX$sdk.sdk \
|
||||||
-DDARWIN_osx_ARCHS=$arch \
|
-DDARWIN_osx_ARCHS=$arch \
|
||||||
-DDARWIN_osx_SYSROOT=$MOZ_FETCHES_DIR/MacOSX$sdk.sdk \
|
-DDARWIN_osx_SYSROOT=$MOZ_FETCHES_DIR/MacOSX$sdk.sdk \
|
||||||
-DLLVM_DEFAULT_TARGET_TRIPLE=$target \
|
|
||||||
-DDARWIN_macosx_OVERRIDE_SDK_VERSION=$sdk \
|
-DDARWIN_macosx_OVERRIDE_SDK_VERSION=$sdk \
|
||||||
-DDARWIN_osx_BUILTIN_ARCHS=$arch
|
-DDARWIN_osx_BUILTIN_ARCHS=$arch
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user