summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: df83397782617cc9715401b6597953d5ab6853c0 (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
# Maintainer: Adrián Pérez de Castro <aperez@igalia.com>
# Maintainer: Alexandre Macabies <web+oss@zopieux.com>
#
pkgname=gn-git
pkgdesc='Meta-build system which generates Ninja build files'
pkgver=r1642.546edf82
pkgrel=1
license=('BSD')
arch=('x86_64' 'i686')
conflicts=(gn-bin gn)
provides=(gn)
depends=(gcc-libs)
makedepends=(python ninja git)
url='https://gn.googlesource.com/gn'
source=("gn::git+${url}" gcc-support.patch)
sha512sums=('SKIP'
            'fe2576ac88859494f7829de8b4fec1dc87ba9a418ac5b80028dea52471ffdfb65570728f5b2e8a9328d404394e6e22a5ebfd3765660e27324918f7a23fea3854')

pkgver () {
	export GIT_DIR="${startdir}/gn"
	printf "r%s.%s" "$(git --bare rev-list --count HEAD)" "$(git --bare rev-parse --short HEAD)"
}

prepare () {
	cd gn
	patch -p1 < "${srcdir}/gcc-support.patch"
}

build () {
	cd gn
	CC=cc CXX=c++ AR=ar \
	CFLAGS="${CFLAGS} -pthread" \
	CXXFLAGS="${CXXFLAGS} -pthread" \
	LDFLAGS="${LDFLAGS} -pthread" \
		python build/gen.py --use-lto --no-strip
	ninja -C out
}

package () {
	install -Dm755 gn/out/gn "${pkgdir}/usr/bin/gn"

	# Documentation
	install -Dm644 -t "${pkgdir}/usr/share/doc/${pkgname}" \
		gn/docs/*.md gn/README.md

	install -Dm644 -t "${pkgdir}/usr/share/doc/${pkgname}/example" \
		gn/examples/simple_build/*.*
	install -Dm644 -t "${pkgdir}/usr/share/doc/${pkgname}/example/build" \
		gn/examples/simple_build/build/*.*
	install -Dm644 -t "${pkgdir}/usr/share/doc/${pkgname}/example/build/toolchain" \
		gn/examples/simple_build/build/toolchain/*.*

	# Vim support
	local item
	for item in autoload ftplugin ftdetect syntax ; do
		install -Dm 644 -t "${pkgdir}/usr/share/vim/vimfiles/${item}" \
			"gn/tools/gn/misc/vim/${item}"/*.vim
	done
		
	# License
	install -m 644 -D gn/LICENSE \
		"${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}