# Maintainer: Natanael Copa <ncopa@alpinelinux.org>

setvar _luaversions = ""5.1 5.2 5.3""
setvar pkgname = 'lua-stdlib'
setvar pkgver = '41.2.0'
setvar pkgrel = '0'
setvar pkgdesc = ""Lua library of modules for common programming tasks""
setvar url = ""https://github.com/lua-stdlib/lua-stdlib""
setvar arch = ""noarch""
setvar license = ""MIT/X""
setvar depends = ''
setvar makedepends = ""autoconf automake""
setvar install = ''
setvar subpackages = ""$pkgname-doc""
for _v in $_luaversions {
	setvar makedepends = ""$makedepends lua$_v lua$_v-dev""
	setvar subpackages = ""$subpackages lua$_v-stdlib:split_${_v/./_}""
}
setvar source = ""$pkgname-$pkgver.tar.gz::https://github.com/lua-stdlib/lua-stdlib/archive/release-v$pkgver.tar.gz""

setvar _sdir = ""$srcdir"/lua-stdlib-release-v$pkgver"

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

proc build {
	for _i in $_luaversions {
		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
	}
}

proc package {
	cd $_builddir
	for _i in $_luaversions {
		cd "$srcdir"/build-$_i
		make DESTDIR="$pkgdir" luadir="/usr/share/lua/$_i" install \
			|| return 1
	}
}

proc _split {
	local d= _ver=$1
	setvar pkgdesc = ""$pkgdesc for Lua $_ver""
	setvar install_if = ""lua$_ver $pkgname=$pkgver-r$pkgrel""
	setvar depends = ''
	for d in usr/lib/lua usr/share/lua {
		if test -d "$pkgdir"/$d/$_ver {
			mkdir -p "$subpkgdir"/$d
			mv "$pkgdir"/$d/$_ver "$subpkgdir"/$d/ || return 1
		}
	}
}


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


setvar md5sums = ""5d99d87b95ca64f1e079289fe9e486ff  lua-stdlib-41.2.0.tar.gz""
setvar sha256sums = ""c9d9d11dcd2e3e956e697f5455b5f62baadf233d8726d80514d0432273cc27e9  lua-stdlib-41.2.0.tar.gz""
setvar sha512sums = ""27ee578d845b70d28e6cdeefc2d0f9163724d2ef4b5dff69820564d7ef2a3f06184b537c5796bd730653bd28cae28bffa29a28cb256f93914b9a43c50aceb8fe  lua-stdlib-41.2.0.tar.gz""