aboutsummaryrefslogtreecommitdiffstats
path: root/community/lua-lgi/APKBUILD
blob: cfb460b7ad769f5ae6fbc3c4ce6fbf051dbfa6b3 (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
62
63
64
65
66
67
68
69
70
71
72
73
74
# Contributor: Natanael Copa <ncopa@alpinelinux.org>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
_luaversions="5.1 5.2 5.3"
pkgname=lua-lgi
pkgver=0.9.2
pkgrel=0
pkgdesc="Dynamic Lua binding to GObject libraries using GObject-Introspection"
url="https://github.com/pavouk/lgi"
arch="all"
license="MIT"
depends=""
depends_dev=""
makedepends="glib-dev gobject-introspection-dev libffi-dev"
install=""
subpackages="$pkgname-doc"
for _i in $_luaversions; do
	makedepends="$makedepends lua$_i-dev"
	subpackages="$subpackages lua$_i-lgi:split_${_i/./_}"
done

source="lgi-$pkgver.tar.gz::https://github.com/pavouk/lgi/archive/$pkgver.tar.gz"

_sdir="$srcdir"/lgi-$pkgver
prepare() {
	local i
	cd "$_builddir"
	for i in $source; do
		case $i in
		*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
		esac
	done
	for _i in $_luaversions; do
		cp -r "$_sdir" "$srcdir"/build-$_i
	done
}

build() {
	for _i in $_luaversions; do
		msg "build for $_i"
		make -C "$srcdir"/build-$_i PREFIX=/usr LUA_VERSION=$_i \
			LUA_CFLAGS="$(pkg-config --cflags lua$_i)" \
			|| return 1
	done
}

package() {
	for _i in $_luaversions; do
		cd "$srcdir"/build-$_i
		make install PREFIX=/usr DESTDIR="$pkgdir" LUA_VERSION=$_i \
			|| return 1
	done
	cd "$_sdir"
	mkdir -p "$pkgdir"/usr/share/doc/lua-lgi
	cp -r docs/* samples "$pkgdir"/usr/share/doc/lua-lgi/
}

_split() {
	local d= _ver=$1
	pkgdesc="Lua $_ver binding to GObject libraries using introspection"
	install_if="lua$_ver $pkgname=$pkgver-r$pkgrel"
	depends=
	for d in usr/lib/lua usr/share/lua; do
		if [ -d "$pkgdir"/$d/$_ver ]; then
			mkdir -p "$subpkgdir"/$d
			mv "$pkgdir"/$d/$_ver "$subpkgdir"/$d/ || return 1
		fi
	done
}

for _i in $_luaversions; do
	eval "split_${_i/./_}() { _split $_i; }"
done

sha512sums="755a96b78530f42da6d4e2664f8e37cb07a356419e7e6448003c3f841c9d98ad18b851715d9eb203ea7eb27b13ec46223fa8a1c90a99fd12960ce85b0a695335  lgi-0.9.2.tar.gz"