Commit | Line | Data |
---|---|---|
26ea8ba0 | 1 | # Description: LLVM compiler backend |
238f890c VM |
2 | # URL: http://llvm.org/ |
3 | # Maintainer: Thomas Penteker, tek at serverop dot de | |
4 | # Depends on: cmake libxml2 ninja | |
26ea8ba0 VM |
5 | |
6 | name=llvm | |
76628bb2 | 7 | version=12.0.0 |
26ea8ba0 VM |
8 | release=1 |
9 | source=(https://github.com/llvm/llvm-project/releases/download/llvmorg-$version/$name-$version.src.tar.xz | |
10 | llvm-config.h) | |
11 | ||
12 | build() { | |
13 | export CC=gcc | |
14 | export CXX=g++ | |
15 | ||
119551e7 VM |
16 | cmake -S $name-$version.src -B build -G Ninja \ |
17 | -D CMAKE_INSTALL_PREFIX=/usr \ | |
18 | -D CMAKE_BUILD_TYPE=Release \ | |
19 | -D CMAKE_C_FLAGS_RELEASE="$CFLAGS" \ | |
20 | -D CMAKE_CXX_FLAGS_RELEASE="$CXXFLAGS" \ | |
21 | -D LLVM_TARGETS_TO_BUILD='AArch64' \ | |
22 | -D LLVM_BUILD_LLVM_DYLIB=1 \ | |
23 | -D LLVM_LINK_LLVM_DYLIB=1 \ | |
24 | -D LLVM_PARALLEL_COMPILE_JOBS="${JOBS:-1}" \ | |
25 | -D LLVM_INCLUDE_EXAMPLES=0 \ | |
26 | -D LLVM_INCLUDE_TESTS=0 \ | |
27 | -D LLVM_ENABLE_FFI=1 \ | |
28 | -D LLVM_ENABLE_RTTI=1 \ | |
29 | -D LLVM_ENABLE_OCAMLDOC=0 \ | |
30 | -D LLVM_INSTALL_UTILS=1 \ | |
26ea8ba0 VM |
31 | -Wno-dev |
32 | ||
119551e7 VM |
33 | cmake --build build |
34 | DESTDIR=$PKG cmake --install build | |
26ea8ba0 VM |
35 | |
36 | # multilib stub | |
37 | mv $PKG/usr/include/llvm/Config/llvm-config{,-64}.h | |
38 | install -m 0644 $SRC/llvm-config.h $PKG/usr/include/llvm/Config/ | |
39 | } |