Add wip aarch64 cross toolchain
This commit is contained in:
parent
477359c180
commit
be0f5b3775
1 changed files with 65 additions and 0 deletions
65
pkgs/toolchain-aarch64/build.sh
Normal file
65
pkgs/toolchain-aarch64/build.sh
Normal file
|
@ -0,0 +1,65 @@
|
|||
pkgname=toolchain-aarch64
|
||||
pkgver=12.0.0
|
||||
|
||||
fetch() {
|
||||
curl -L "https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver/llvm-project-$pkgver.src.tar.xz" -o llvm-$pkgver.tar.gz
|
||||
curl "https://musl.libc.org/releases/musl-1.2.2.tar.gz" -o musl-1.2.2.tar.gz
|
||||
tar -xf llvm-$pkgver.tar.gz
|
||||
tar -xf musl-1.2.2.tar.gz
|
||||
mv llvm-project-$pkgver.src llvm-$pkgver
|
||||
mkdir llvm-$pkgver/build-compiler-rt
|
||||
mkdir sysroot
|
||||
}
|
||||
|
||||
build() {
|
||||
cd llvm-$pkgver
|
||||
cd build-compiler-rt
|
||||
cmake -G Ninja ../compiler-rt \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr/aarch64-linux-musl \
|
||||
-DCMAKE_INSTALL_LIBDIR=lib \
|
||||
-DCMAKE_C_COMPILER=clang \
|
||||
-DCMAKE_C_COMPILER_TARGET=aarch64-linux-musl \
|
||||
-DCMAKE_ASM_COMPILER=clang \
|
||||
-DCMAKE_ASM_COMPILER_TARGET=aarch64-linux-musl \
|
||||
-DCOMPILER_RT_USE_BUILTINS_LIBRARY=ON \
|
||||
-DCOMPILER_RT_BUILD_BUILTINS=ON \
|
||||
-DCOMPILER_RT_DEFAULT_TARGET_ONLY=OFF \
|
||||
-DCOMPILER_RT_DEFAULT_TARGET_TRIPLE=aarch64-linux-musl \
|
||||
-DCOMPILER_RT_INCLUDE_TESTS=OFF \
|
||||
-DCOMPILER_RT_BUILD_SANITIZERS=OFF \
|
||||
-DCOMPILER_RT_BUILD_XRAY=OFF \
|
||||
-DCOMPILER_RT_BUILD_MEMPROF=OFF \
|
||||
-DCOMPILER_RT_BUILD_PROFILE=OFF \
|
||||
-DCOMPILER_RT_INCLUDE_TESTS=OFF \
|
||||
-DCOMPILER_RT_BUILD_LIBFUZZER=OFF \
|
||||
-DCMAKE_C_FLAGS='-nostdlib' \
|
||||
-DCMAKE_ASM_FLAGS='-nostdlib' \
|
||||
-DCAN_TARGET_aarch64=YES \
|
||||
-DLIBCXX_HAS_MUSL_LIBC=ON \
|
||||
-DLLVM_CONFIG_PATH=/usr/bin/llvm-config
|
||||
|
||||
DESTDIR=$(pwd)/../../sysroot samu install
|
||||
cd ../..
|
||||
|
||||
cd musl-1.2.2
|
||||
CFLAGS='--sysroot=$(pwd)/../sysroot/usr/aarch64-linux-musl/ --target=aarch64-unknown-linux-musl' AR=ar LIBCC=$(pwd)/../sysroot/usr/aarch64-linux-musl/lib/linux/libclang_rt.builtins-aarch64.a ./configure \
|
||||
--prefix=/usr/aarch64-linux-musl \
|
||||
--target=aarch64-unknown-linux-musl \
|
||||
--enable-wrappers=no
|
||||
|
||||
gmake
|
||||
gmake install DESTDIR=$(pwd)/../sysroot/
|
||||
}
|
||||
|
||||
package() {
|
||||
cd $pkgname-$pkgver
|
||||
cd build-compiler-rt
|
||||
DESTDIR=$pkgdir samu install
|
||||
}
|
||||
|
||||
license() {
|
||||
cd $pkgname-$pkgver
|
||||
cat LICENSE
|
||||
# cat COPYING
|
||||
}
|
Loading…
Reference in a new issue