CRUX-ARM : Home

Home :: Documentation :: Download :: Development :: Community :: Ports :: Packages :: Bugs :: Links :: About :: Donors
llvm: updated to 12.0.1
[ports/opt-arm64.git] / llvm / Pkgfile
1 # Description: LLVM compiler backend
2 # URL: http://llvm.org/
3 # Maintainer: Thomas Penteker, tek at serverop dot de
4 # Depends on: cmake libxml2 ninja
5
6 name=llvm
7 version=12.0.1
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
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 \
31 -Wno-dev
32
33 cmake --build build
34 DESTDIR=$PKG cmake --install build
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 }