aboutsummaryrefslogtreecommitdiffstats
path: root/main/cmake/APKBUILD
blob: cef461dd0413ae4c1f3b600a2bd95a212c8b5bd4 (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
73
74
# Contributor: Valery Kartel <valery.kartel@gmail.com>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=cmake
pkgver=3.11.4
pkgrel=1
pkgdesc="Cross-platform, open-source make system"
url="http://www.cmake.org"
arch="all"
license="BSD-3-Clause"
makedepends="bzip2-dev curl-dev expat-dev libarchive-dev
	libuv-dev ncurses-dev rhash-dev xz-dev zlib-dev"
options="!checkroot !check"
checkdepends="file musl-utils"
subpackages="$pkgname-doc $pkgname-bash-completion:bashcomp:noarch
	"
case $pkgver in
*.*.*.*) _v=v${pkgver%.*.*};;
*.*.*) _v=v${pkgver%.*};;
esac

source="http://www.cmake.org/files/$_v/cmake-${pkgver}.tar.gz
	libuv-1.21-compat.patch
	"
builddir="$srcdir/$pkgname-$pkgver"

_parallel_opt() {
	local i n
	for i in $MAKEOPTS; do
		case "$i" in
			-j*) n=${i#-j};;
		esac;
	done
	[ -n "$n" ] && echo "--parallel $n"
}

build() {
	cd "$builddir"
	# jsoncpp needs cmake to build so to avoid recursive build
	# dependency, we use the bundled version of jsoncpp.
	# Do NOT remove --no-system-jsoncpp unless you consulted
	# maintainer
	./bootstrap \
		--prefix=/usr \
		--mandir=/share/man \
		--datadir=/share/$pkgname \
		--docdir=/share/doc/$pkgname \
		--system-libs \
		--no-system-jsoncpp \
		$(_parallel_opt)
	make
}

check() {
	cd "$builddir"
	CTEST_OUTPUT_ON_FAILURE=TRUE bin/ctest
}

package() {
	cd $startdir/src/$pkgname-$pkgver
	make DESTDIR="$pkgdir" install
}

bashcomp() {
        depends=""
        pkgdesc="Bash completions for $pkgname"
        install_if="$pkgname=$pkgver-r$pkgrel bash"

        mkdir -p "$subpkgdir"/usr/share/bash-completion
        mv "$pkgdir"/usr/share/cmake/completions \
                "$subpkgdir"/usr/share/bash-completion/
}

sha512sums="c5d03ad66a004292038e49e391c390ebc328fbb089ea699742a9b75f0ada9398c3dc971b868f75d8438bf437ecbeaa62541beb53cae14a699bf244ad101a2290  cmake-3.11.4.tar.gz
38c2f594dad56cdfb24a9a272f04ccdad0151296c414c306cb552e71ac14b1c2480702620127f5af5b43875af1be25f7679abfabb3c59e8d6af110ccac4aa7d0  libuv-1.21-compat.patch"