summaryrefslogtreecommitdiff
path: root/llvm-32/Pkgfile
blob: 8bd49a9b8026a4d2c4c63157b67e310f7ba578b5 (plain)
    1 # Description: LLVM
    2 # URL: http://llvm.org
    3 # Maintainer: CRUX compat-32 Team, compat-32-ports at crux dot nu
    4 # Depends on: libffi-32 llvm
    5 
    6 name=llvm-32
    7 version=8.0.0
    8 release=1
    9 source=(https://llvm.org/releases/$version/llvm-$version.src.tar.xz)
   10 
   11 build() {
   12 	export CC=gcc
   13 	export CXX=g++
   14 
   15 	cd llvm-$version.src
   16 
   17 	mkdir -p build $SRC/keep
   18 	cd build
   19 
   20 	cmake .. -G Ninja \
   21 		-DLLVM_PARALLEL_COMPILE_JOBS="${JOBS:-1}" \
   22 		-DLLVM_ENABLE_CXX1Y=1 \
   23 		-DLLVM_INCLUDE_EXAMPLES=0 \
   24 		-DLLVM_ENABLE_OCAMLDOC=0 \
   25 		-DLLVM_INCLUDE_TESTS=0 \
   26 		-DLLVM_ENABLE_FFI=1 \
   27 		-DLLVM_ENABLE_RTTI=1 \
   28 		-DLLVM_TARGETS_TO_BUILD='X86;AMDGPU;BPF' \
   29 		-DLLVM_BUILD_LLVM_DYLIB=1 \
   30 		-DLLVM_LINK_LLVM_DYLIB=1 \
   31 		-DCMAKE_BUILD_TYPE=Release \
   32 		-DCMAKE_INSTALL_PREFIX=/usr \
   33 		-DLLVM_LIBDIR_SUFFIX=32 \
   34 		-DLLVM_DEFAULT_TARGET_TRIPLE="i686-pc-linux-gnu" \
   35 		-Wno-dev
   36 
   37 	ninja
   38 	DESTDIR=$PKG ninja install
   39 
   40 	# keep 32bit header and config
   41 	install -t $SRC/keep $PKG/usr/bin/llvm-config $PKG/usr/include/llvm/Config/llvm-config.h
   42 
   43 	# remove unneeded files
   44 	rm -r $PKG/usr/{bin,include,share/opt-viewer}
   45 
   46 	# install 32bit header and config
   47 	install -m 0755 -D $SRC/keep/llvm-config $PKG/usr/bin/llvm-config-32
   48 	install -m 0644 -D $SRC/keep/llvm-config.h $PKG/usr/include/llvm/Config/llvm-config-32.h
   49 }

Generated by cgit