aboutsummaryrefslogtreecommitdiffstats
path: root/community/lua-dromozoa-utf8/APKBUILD
blob: 1b57b8487fcd4dd7e5770ecab8770a49e50987c3 (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
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=lua-dromozoa-utf8
_pkgname=dromozoa-utf8
pkgver=1.3
pkgrel=1
pkgdesc="Lua 5.3 compatible pure-Lua UTF-8 implementation"
url="https://github.com/dromozoa/dromozoa-utf8/"
arch="all"
license="GPL3"
depends=""
checkdepends=""
source="$pkgname-$pkgver.tar.gz::https://github.com/dromozoa/$_pkgname/archive/v$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"

# luajit is not available for selected arches
case "$CARCH" in
	s390x) _luajit="";;
	*) checkdepends="$checkdepends luajit" _luajit="jit";;
esac

_luaversions="5.1 5.2 5.3"
for _v in $_luaversions; do
	subpackages="$subpackages lua$_v-${pkgname#lua-}:_subpackage"
	checkdepends="$checkdepends lua$_v"
done

check() {
	local out
	cd "$builddir"

	local lver; for lver in $_luaversions $_luajit; do
		msg "Testing on lua$lver"
		out=$(lua$lver test.lua test.exp 2>&1) || {
			echo "Tests failed, printing last 30 lines of the output..."
			printf '%s\n' "$out" | tail -n 30
			return 1
		}
	done
}

package() {
	mkdir -p "$pkgdir"
}

_subpackage() {
	local lver="${subpkgname:3:3}"
	pkgdesc="$pkgdesc (for Lua $lver)"
	depends="lua$lver"
	install_if="$pkgname=$pkgver-r$pkgrel lua$lver"
	local lmod_dir="$subpkgdir/usr/share/lua/$lver"
	local rockdir="$subpkgdir/usr/lib/luarocks/rocks-$lver/$_pkgname/$pkgver-1"

	cd "$builddir"
	mkdir -p "$lmod_dir"
	cp -r dromozoa "$lmod_dir"/

	mkdir -p "$rockdir"
	echo 'rock_manifest = {}' > "$rockdir"/rock_manifest
}

sha512sums="c1894692f80cc2204683b7a8f540d59b1a23447bc61492acef3c6bac7f50884ca39b0b372e2d56f4473b92a8263da2c705243e7c341eea43583578964bedd4f4  lua-dromozoa-utf8-1.3.tar.gz"