# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
setvar pkgname = 'lua-term'
setvar pkgver = '0.07'
setvar _rockver = '0.7-1'
setvar pkgrel = '1'
setvar pkgdesc = ""Terminal operations for Lua""
setvar url = ""https://github.com/hoelzro/lua-term""
setvar arch = ""all""
setvar license = ""MIT""
setvar makedepends = """"
setvar subpackages = """"
setvar source = ""$pkgname-$pkgver.tar.gz::https://github.com/hoelzro/$pkgname/archive/$pkgver.tar.gz""
setvar builddir = ""$srcdir/$pkgname-$pkgver""
setvar options = ""!check""  # upstream does not provide tests

setvar _luaversions = ""5.1 5.2 5.3""
for _v in $_luaversions {
	setvar makedepends = ""$makedepends lua$_v-dev""
	setvar subpackages = ""$subpackages lua$_v-${pkgname#lua-}:_subpackage""
}

proc prepare {
	default_prepare || return 1

	local lver; for lver in $_luaversions {
		cp -r $builddir "$builddir-$lver" || return 1
	}
}

proc build {
	local lver; for lver in $_luaversions {
		msg "Building for Lua $lver..."
		make -C "$builddir-$lver" LUA_VER=$lver CFLAGS="$CFLAGS" || return 1
	}
}

proc package {
	mkdir -p $pkgdir
}

proc _subpackage {
	local lver="${subpkgname:3:3}"
	setvar pkgdesc = ""$pkgdesc $lver""
	setvar depends = ""lua$lver""
	setvar install_if = ""$pkgname=$pkgver-r$pkgrel lua$lver""
	local rockdir="$subpkgdir/usr/lib/luarocks/rocks-$lver/$pkgname/$_rockver"

	cd "$builddir-$lver"
	make LUA_VER=$lver LUA_DIR="$subpkgdir/usr" install

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

setvar sha512sums = ""2046ba1861ff590c191bb651941c45eb8b6e9a1252b05e78daaeb31837ce1fc7da9ba124aec34dc7842fd304e945754c463ffd75941125ff952e911ba66efa31  lua-term-0.07.tar.gz""