diff options
| author | Woodpecker CI <emmett1.2miligrams@protonmail.com> | 2025-06-03 14:32:34 +0000 |
|---|---|---|
| committer | Woodpecker CI <emmett1.2miligrams@protonmail.com> | 2025-06-03 14:32:34 +0000 |
| commit | 8df1d35909ec2d57a6845f5b2c26ee1e83cfd032 (patch) | |
| tree | 88e5aaa8cf9d3c0538cdff935a56786705548d75 /llvm/abuild | |
| parent | 96ec28ea0d2c05032f40f50bc6b9de7020138f57 (diff) | |
| download | alicelinux-8df1d35909ec2d57a6845f5b2c26ee1e83cfd032.tar.gz alicelinux-8df1d35909ec2d57a6845f5b2c26ee1e83cfd032.zip | |
Woodpecker CI 5171f1fdd74e7137c305450dd69a29fa5be4143f [SKIP CI]
Diffstat (limited to 'llvm/abuild')
| -rw-r--r-- | llvm/abuild | 97 |
1 files changed, 97 insertions, 0 deletions
diff --git a/llvm/abuild b/llvm/abuild new file mode 100644 index 00000000..9146a9b9 --- /dev/null +++ b/llvm/abuild @@ -0,0 +1,97 @@ +name=llvm +version=20.1.5 +release=1 +source="https://github.com/llvm/llvm-project/releases/download/llvmorg-${version}/llvm-project-${version}.src.tar.xz + c89 c99 + 0012-libc-libc-abi-libunwind-disable-multiarch-locations.patch + 0014-clang-disable-multiarch-layout-on-musl.patch + 0017-clang-use-as-needed-by-default.patch + 0024-clang-link-libcxxabi-on-linux-when-using-libc.patch + compiler-rt-sanitizer-supported-arch.patch + fix-msan-with-musl.patch + musl-stack-size.patch + musl-targets.patch" +keep_static=1 +no_strip=1 +build_type="cmake_build" +build_dir="llvm-project-${version}.src/llvm" +patch_opt="-Np1 -d .." +export CFLAGS="$CFLAGS -fPIC" +export CXXFLAGS="$CXXFLAGS -fPIC" + +# llvm +build_opt=" + -DLLVM_BUILD_LLVM_DYLIB=ON + -DLLVM_LINK_LLVM_DYLIB=ON + -DLLVM_TARGETS_TO_BUILD='host;AMDGPU' + -DLLVM_HOST_TRIPLE=x86_64-pc-linux-musl + -DLLVM_INCLUDE_BENCHMARKS=OFF + -DLLVM_INCLUDE_EXAMPLES=OFF + -DLLVM_INCLUDE_DOCS=OFF + -DLLVM_INCLUDE_TESTS=OFF + -DLLVM_ENABLE_RUNTIMES='compiler-rt;libunwind;libcxx;libcxxabi' + -DLLVM_ENABLE_PROJECTS='clang;clang-tools-extra;lld' + -DLLVM_ENABLE_RTTI=ON + -DLLVM_ENABLE_EH=ON + -DLLVM_ENABLE_LIBXML2=OFF + -DLLVM_ENABLE_LIBCXX=ON + -DLLVM_ENABLE_RTTI=ON + -DLLVM_ENABLE_LLD=ON + -DLLVM_INSTALL_BINUTILS_SYMLINKS=ON + -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON" + +# clang +build_opt="$build_opt + -DCLANG_BUILD_EXAMPLES=OFF + -DCLANG_INCLUDE_DOCS=OFF + -DCLANG_INCLUDE_TESTS=OFF + -DLIBCLANG_BUILD_STATIC=ON + -DCLANG_DEFAULT_RTLIB=compiler-rt + -DCLANG_DEFAULT_UNWINDLIB=libunwind + -DCLANG_DEFAULT_CXX_STDLIB=libc++ + -DCLANG_CONFIG_FILE_SYSTEM_DIR=/etc/clang + -DCLANG_LINK_CLANG_DYLIB=Yes" + +# libcxx +build_opt="$build_opt + -DLIBCXX_HAS_MUSL_LIBC=ON + -DLIBCXX_CXX_ABI=libcxxabi + -DLIBCXX_USE_COMPILER_RT=ON + -DLIBCXX_HAS_ATOMIC_LIB=No + -DLIBCXX_ENABLE_STATIC_ABI_LIBRARY=OFF" + +# libcxxabi +build_opt="$build_opt + -DLIBCXXABI_USE_LLVM_UNWINDER=ON + -DLIBCXXABI_USE_COMPILER_RT=ON + -DLIBCXXABI_ENABLE_STATIC_UNWINDER=OFF" + +# libunwind +build_opt="$build_opt + -DLIBUNWIND_HAS_NODEFAULTLIBS_FLAG=OFF + -DLIBUNWIND_USE_COMPILER_RT=ON + -DLIBUNWIND_ENABLE_ASSERTIONS=OFF" + +# compiler-rt +build_opt="$build_opt + -DCOMPILER_RT_USE_BUILTINS_LIBRARY=ON + -DCOMPILER_RT_INCLUDE_TESTS=OFF + -DCOMPILER_RT_BUILD_SANITIZERS=ON + -DCOMPILER_RT_BUILD_GWP_ASAN=OFF" + +# etc +build_opt="$build_opt + -DMLIR_INSTALL_AGGREGATE_OBJECTS=OFF + $([ -e /usr/bin/ccache ] && echo '-DLLVM_CCACHE_BUILD=ON') +" + +postbuild() { + ln -s lld $PKG/usr/bin/ld + ln -s clang $PKG/usr/bin/cc + ln -s clang $PKG/usr/bin/gcc + ln -s clang $PKG/usr/bin/cpp + ln -s clang++ $PKG/usr/bin/c++ + ln -s clang++ $PKG/usr/bin/g++ + install -m755 $SRC/c89 $PKG/usr/bin/c89 + install -m755 $SRC/c99 $PKG/usr/bin/c99 +} |