aboutsummaryrefslogtreecommitdiffstats
path: root/testing/zig/APKBUILD
blob: 35d5a14d68bf7d6e481e991d3d88ae13ea25016e (plain)
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
62
63
64
65
66
67
68
69
70
71
72
# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
# Contributor: Milan P. Stanić <mps@arvanta.net>
# Maintainer: psykose <alice@ayaya.dev>
pkgname=zig
pkgver=0.10.1
pkgrel=2
pkgdesc="General-purpose programming language designed for robustness, optimality, and maintainability"
url="https://ziglang.org/"
# arm*, x86: fails to build (allocation failed)
# ppc64le,riscv64: builds but the test command crashes
# s390x: blocked by lld-dev
arch="x86_64 aarch64"
license="MIT"
install="$pkgname.pre-upgrade"
_llvmver=15
makedepends="
	clang$_llvmver-dev
	cmake
	libxml2-dev
	lld15-libs-dev
	llvm$_llvmver-dev
	samurai
	zlib-dev
	"
provides="zig-dev=$pkgver-r$pkgrel"
subpackages="$pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://github.com/ziglang/zig/archive/$pkgver.tar.gz"

build() {
	local crossopts=
	if [ "$CBUILD" != "$CHOST" ]; then
		crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
	fi
	cmake -B build -G Ninja \
		-DCMAKE_BUILD_TYPE=Release \
		-DCMAKE_INSTALL_PREFIX=/usr \
		-DCMAKE_PREFIX_PATH=/usr \
		-DCMAKE_VERBOSE_MAKEFILE=ON \
		-DZIG_VERSION="$pkgver" \
		-DZIG_SHARED_LLVM=ON \
		-DZIG_TARGET_MCPU=baseline \
		$crossopts
	cmake --build build

	# XXX: Workaround for missing zig binary in the build dir.
	DESTDIR="build/.dest" cmake --install build

	cd build
	./.dest/usr/bin/zig build docs
}

check() {
	./build/.dest/usr/bin/zig build test \
		-Dcpu=baseline \
		-Drelease \
		-Dskip-debug \
		-Dskip-release-safe \
		-Dskip-release-small \
		-Dskip-non-native \
		-Dskip-libc
}

package() {
	DESTDIR="$pkgdir" cmake --install build

	install -Dm644 zig-cache/langref.html \
		"$pkgdir"/usr/share/doc/$pkgname/langref.html
}

sha512sums="
20ff9c59cd01aa64c017c86d3ac70cf3a1efacae7a9ea3f110df028eeec3b2b9e95adc1dfdd41eb07ebcf12951fee32d429253918a7ef0a5ab0f6036751ad964  zig-0.10.1.tar.gz
"