build-compiler-rt, build-libcxx: Use ninja for building, if available
This commit is contained in:
1 parent
92f5caa918
commit
36fc0f6432
2 files changed
+43
-27
No files matched your search
+20
-12
@@ -38,9 +38,6 @@ mkdir -p "$PREFIX"
|
|||||||
PREFIX="$(cd "$PREFIX" && pwd)"
|
PREFIX="$(cd "$PREFIX" && pwd)"
|
||||||
export PATH="$PREFIX/bin:$PATH"
|
export PATH="$PREFIX/bin:$PATH"
|
||||||
|
|
||||||
: ${CORES:=$(nproc 2>/dev/null)}
|
|
||||||
: ${CORES:=$(sysctl -n hw.ncpu 2>/dev/null)}
|
|
||||||
: ${CORES:=4}
|
|
||||||
: ${ARCHS:=${TOOLCHAIN_ARCHS-i686 x86_64 armv7 aarch64}}
|
: ${ARCHS:=${TOOLCHAIN_ARCHS-i686 x86_64 armv7 aarch64}}
|
||||||
|
|
||||||
ANY_ARCH=$(echo $ARCHS | awk '{print $1}')
|
ANY_ARCH=$(echo $ARCHS | awk '{print $1}')
|
||||||
@@ -61,13 +58,24 @@ if [ ! -e "$PREFIX/i386-w64-mingw32" ]; then
|
|||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
|
|
||||||
case $(uname) in
|
if [ -n "$(which ninja)" ]; then
|
||||||
MINGW*)
|
CMAKE_GENERATOR="Ninja"
|
||||||
CMAKE_GENERATOR="MSYS Makefiles"
|
NINJA=1
|
||||||
;;
|
BUILDCMD=ninja
|
||||||
*)
|
else
|
||||||
;;
|
: ${CORES:=$(nproc 2>/dev/null)}
|
||||||
esac
|
: ${CORES:=$(sysctl -n hw.ncpu 2>/dev/null)}
|
||||||
|
: ${CORES:=4}
|
||||||
|
|
||||||
|
case $(uname) in
|
||||||
|
MINGW*)
|
||||||
|
CMAKE_GENERATOR="MSYS Makefiles"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
BUILDCMD=make
|
||||||
|
fi
|
||||||
|
|
||||||
cd llvm-project/compiler-rt
|
cd llvm-project/compiler-rt
|
||||||
|
|
||||||
@@ -111,7 +119,7 @@ for arch in $ARCHS; do
|
|||||||
-DCOMPILER_RT_DEFAULT_TARGET_ONLY=TRUE \
|
-DCOMPILER_RT_DEFAULT_TARGET_ONLY=TRUE \
|
||||||
-DCOMPILER_RT_USE_BUILTINS_LIBRARY=TRUE \
|
-DCOMPILER_RT_USE_BUILTINS_LIBRARY=TRUE \
|
||||||
$SRC_DIR
|
$SRC_DIR
|
||||||
make -j$CORES
|
$BUILDCMD ${CORES+-j$CORES}
|
||||||
mkdir -p "$PREFIX/lib/clang/$CLANG_VERSION/lib/windows"
|
mkdir -p "$PREFIX/lib/clang/$CLANG_VERSION/lib/windows"
|
||||||
mkdir -p "$PREFIX/$arch-w64-mingw32/bin"
|
mkdir -p "$PREFIX/$arch-w64-mingw32/bin"
|
||||||
for i in lib/windows/libclang_rt.*-$buildarchname*.a; do
|
for i in lib/windows/libclang_rt.*-$buildarchname*.a; do
|
||||||
@@ -123,7 +131,7 @@ for arch in $ARCHS; do
|
|||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
if [ -n "$SANITIZERS" ]; then
|
if [ -n "$SANITIZERS" ]; then
|
||||||
make install-compiler-rt-headers
|
$BUILDCMD install-compiler-rt-headers
|
||||||
fi
|
fi
|
||||||
cd ..
|
cd ..
|
||||||
done
|
done
|
||||||
+23
-15
@@ -43,9 +43,6 @@ PREFIX="$(cd "$PREFIX" && pwd)"
|
|||||||
|
|
||||||
export PATH="$PREFIX/bin:$PATH"
|
export PATH="$PREFIX/bin:$PATH"
|
||||||
|
|
||||||
: ${CORES:=$(nproc 2>/dev/null)}
|
|
||||||
: ${CORES:=$(sysctl -n hw.ncpu 2>/dev/null)}
|
|
||||||
: ${CORES:=4}
|
|
||||||
: ${ARCHS:=${TOOLCHAIN_ARCHS-i686 x86_64 armv7 aarch64}}
|
: ${ARCHS:=${TOOLCHAIN_ARCHS-i686 x86_64 armv7 aarch64}}
|
||||||
|
|
||||||
if [ ! -d llvm-project/libunwind ] || [ -n "$SYNC" ]; then
|
if [ ! -d llvm-project/libunwind ] || [ -n "$SYNC" ]; then
|
||||||
@@ -56,13 +53,24 @@ cd llvm-project
|
|||||||
|
|
||||||
LIBCXX=$(pwd)/libcxx
|
LIBCXX=$(pwd)/libcxx
|
||||||
|
|
||||||
case $(uname) in
|
if [ -n "$(which ninja)" ]; then
|
||||||
MINGW*)
|
CMAKE_GENERATOR="Ninja"
|
||||||
CMAKE_GENERATOR="MSYS Makefiles"
|
NINJA=1
|
||||||
;;
|
BUILDCMD=ninja
|
||||||
*)
|
else
|
||||||
;;
|
: ${CORES:=$(nproc 2>/dev/null)}
|
||||||
esac
|
: ${CORES:=$(sysctl -n hw.ncpu 2>/dev/null)}
|
||||||
|
: ${CORES:=4}
|
||||||
|
|
||||||
|
case $(uname) in
|
||||||
|
MINGW*)
|
||||||
|
CMAKE_GENERATOR="MSYS Makefiles"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
BUILDCMD=make
|
||||||
|
fi
|
||||||
|
|
||||||
build_all() {
|
build_all() {
|
||||||
type="$1"
|
type="$1"
|
||||||
@@ -105,8 +113,8 @@ build_all() {
|
|||||||
-DCMAKE_CXX_FLAGS="-Wno-dll-attribute-on-redeclaration" \
|
-DCMAKE_CXX_FLAGS="-Wno-dll-attribute-on-redeclaration" \
|
||||||
-DCMAKE_C_FLAGS="-Wno-dll-attribute-on-redeclaration" \
|
-DCMAKE_C_FLAGS="-Wno-dll-attribute-on-redeclaration" \
|
||||||
..
|
..
|
||||||
make -j$CORES
|
$BUILDCMD ${CORES+-j$CORES}
|
||||||
make install
|
$BUILDCMD install
|
||||||
if [ "$type" = "shared" ]; then
|
if [ "$type" = "shared" ]; then
|
||||||
mkdir -p "$PREFIX/$arch-w64-mingw32/bin"
|
mkdir -p "$PREFIX/$arch-w64-mingw32/bin"
|
||||||
cp lib/libunwind.dll "$PREFIX/$arch-w64-mingw32/bin"
|
cp lib/libunwind.dll "$PREFIX/$arch-w64-mingw32/bin"
|
||||||
@@ -148,7 +156,7 @@ build_all() {
|
|||||||
-DCXX_SUPPORTS_CXX_STD=TRUE \
|
-DCXX_SUPPORTS_CXX_STD=TRUE \
|
||||||
-DCMAKE_CXX_FLAGS="$LIBCXXABI_VISIBILITY_FLAGS -D_LIBCPP_HAS_THREAD_API_WIN32" \
|
-DCMAKE_CXX_FLAGS="$LIBCXXABI_VISIBILITY_FLAGS -D_LIBCPP_HAS_THREAD_API_WIN32" \
|
||||||
..
|
..
|
||||||
make -j$CORES
|
$BUILDCMD ${CORES+-j$CORES}
|
||||||
cd ..
|
cd ..
|
||||||
done
|
done
|
||||||
cd ..
|
cd ..
|
||||||
@@ -197,8 +205,8 @@ build_all() {
|
|||||||
-DCMAKE_SHARED_LINKER_FLAGS="-lunwind" \
|
-DCMAKE_SHARED_LINKER_FLAGS="-lunwind" \
|
||||||
-DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=FALSE \
|
-DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=FALSE \
|
||||||
..
|
..
|
||||||
make -j$CORES
|
$BUILDCMD ${CORES+-j$CORES}
|
||||||
make install
|
$BUILDCMD install
|
||||||
if [ "$type" = "shared" ]; then
|
if [ "$type" = "shared" ]; then
|
||||||
llvm-ar qcsL \
|
llvm-ar qcsL \
|
||||||
"$PREFIX/$arch-w64-mingw32/lib/libc++.dll.a" \
|
"$PREFIX/$arch-w64-mingw32/lib/libc++.dll.a" \
|
||||||
|
|||||||
Reference in new issue
Block a user