aboutsummaryrefslogtreecommitdiffstats
path: root/community/lld/APKBUILD
blob: 63d8c6e9e2bf3261ca1b4a220ed8211a5d551730 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# Contributor: Eric Molitor <eric@molitor.org>
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=lld
pkgver=7.0.1
pkgrel=1
_llvmver=${pkgver%%.*}
pkgdesc="The LLVM Linker"
url="http://llvm.org"
arch="all"
license="NCSA"
makedepends="
	cmake
	libedit-dev
	llvm-dev>=$_llvmver
	llvm-static>=$_llvmver
	llvm-test-utils=>$_llvmver
	zlib-dev"
checkdepends="gtest gtest-dev"
subpackages="$pkgname-dev"
source="https://llvm.org/releases/$pkgver/$pkgname-$pkgver.src.tar.xz"
builddir="$srcdir/$pkgname-$pkgver.src"

build() {
	mkdir -p "$builddir"/build
	cd "$builddir"/build

	cmake .. \
		-DCMAKE_BUILD_TYPE=MinSizeRel \
		-DCMAKE_VERBOSE_MAKEFILE=OFF \
		-DCMAKE_C_FLAGS_MINSIZEREL_INIT="$CFLAGS" \
		-DCMAKE_CXX_FLAGS_MINSIZEREL_INIT="$CXXFLAGS -fpermissive" \
		-DCMAKE_EXE_LINKER_FLAGS_MINSIZEREL_INIT="$LDFLAGS" \
		-DCMAKE_INSTALL_PREFIX=/usr \
		-DCMAKE_SKIP_INSTALL_RPATH=ON \
		-DLLVM_INCLUDE_TESTS=ON
	make
}

check() {
	cd "$builddir/build"

	# ELF/eh-frame-hdr-augmentation.s is broken on armhf & armv7
	case "$CARCH" in
		armhf|armv7) rm ../test/ELF/eh-frame-hdr-augmentation.s;;
	esac

	#make check-lld
	lit -sv \
		--param lld_site_config=$builddir/build/test/lit.site.cfg \
		--param lld_unit_site_config=$builddir/build/test/Unit/lit.site.cfg \
		$builddir/build/test
}

package() {
	cd "$builddir"/build

	make install DESTDIR="$pkgdir"
}

sha512sums="e5d3ed280d8ac6014cd6bbe080b11e2c4ebbae81dc14b637e779ec027d818dbae91c6f0de9e94bcecd6bdaa37f12c35141b5d81f0a15251d27932aa9bebd4047  lld-7.0.1.src.tar.xz"