summaryrefslogtreecommitdiffstats
path: root/main/lua-posix/APKBUILD
blob: 2d6b2dfed40f976837978f410e263afecd1f56e1 (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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>

_luaversions="5.1 5.2"

pkgname=lua-posix
_name=luaposix
pkgver=32
pkgrel=0
pkgdesc="POSIX library for Lua $_luaver"
url="https://github.com/luaposix/luaposix"
arch="all"
license="MIT"
depends="lua5.1-posix"
makedepends="perl ncurses-dev automake autoconf"
subpackages="$pkgname-doc"

for _i in $_luaversions; do
	makedepends="$makedepends lua$_i-dev"
	subpackages="$subpackages lua$_i-posix:_posix_${_i/./_}
		lua$_i-curses:_curses_${_i/./_}"
done
source="luaposix-$pkgver.tar.gz::https://github.com/luaposix/luaposix/archive/release-v$pkgver.tar.gz
	lua-version.patch
	"



_sdir="$srcdir"/$_name-release-v$pkgver

prepare() {
	cd "$_sdir"
	for i in $source; do
		case $i in
		*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
		esac
	done
	aclocal && autoconf && automake --add-missing || return 1
	for _i in $_luaversions; do
		cp -r "$_sdir" "$srcdir"/build-$_i
	done
}

build() {
	for _i in $_luaversions; do
		msg "build for Lua $_i"
		cd "$srcdir"/build-$_i
		LUA=lua$_i LUA_INCLUDE=$(pkg-config lua$_i --cflags) \
			./configure --prefix=/usr \
			--libdir=/usr/lib/lua/$_i \
			--datadir=/usr/share/lua/$_i \
			|| return 1
		make || return 1
	done
}

package() {
	for _i in $_luaversions; do
		cd "$srcdir"/build-$_i
		make DESTDIR="$pkgdir" luadir="/usr/share/lua/$_i" install \
			|| return 1
	done
	rm "$pkgdir"/usr/lib/lua/*/*.la || return 1
}

_split() {
	depends=
	local d= _ver=$1 _f=$2
	if [ "$_ver" = "5.1" ]; then
		depends="lua-bitlib"
	fi
	for d in usr/lib/lua usr/share/lua; do
		if [ -d "$pkgdir"/$d/$_ver ]; then
			mkdir -p "$subpkgdir"/$d/$_ver
			mv "$pkgdir"/$d/$_ver/$_f* "$subpkgdir"/$d/$_ver/ \
				|| return 1
			rmdir "$pkgdir"/$d/$_ver 2>/dev/null || true
		fi
	done
}

_split_curses() {
	local _ver=$1
	pkgdesc="ncurses binding for Lua $_ver"
	_split $_ver curses
}

_split_posix() {
	local _ver=$1
	pkgdesc="POSIX library for Lua $_ver"
	replaces="lua-posix"
	_split $_ver posix
}

for _i in $_luaversions; do
	eval "_curses_${_i/./_}() { _split_curses $_i; }"
	eval "_posix_${_i/./_}() { _split_posix $_i; }"
done

md5sums="2bfede7b7cee96c5d0f6c0354e17498c  luaposix-32.tar.gz
ee005f27a774ac78e877a9484ec46cb3  lua-version.patch"
sha256sums="09dbbde825fd9b76a8a1f6a80920434f8629a392cd1840021ed4b95b21fcf073  luaposix-32.tar.gz
7a9470ff830a563f8a51b434fee637ba03fefd6405a4960ee9023713f75f457e  lua-version.patch"
sha512sums="cd0cb4a0c8eb291e11526fd1a110ed41a92ae05a656c1e5fca9fd296a5f766c04390ad9399ae2eb5d6d8f28cad1c099ffae01e8d8ea94e1e8ce4f639dc822957  luaposix-32.tar.gz
fcbd081c46910ff15ba66c76ce3d130224aa363c3e1265158f77fa244c7e16156970703ab4e57d70cb1cd4f2b2228043a2f5e1affad6bf601e0ee8ca81e2504a  lua-version.patch"