# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
setvar pkgname = 'lua-copas'
setvar _pkgname = 'copas'
setvar pkgver = '2.0.2'
setvar _pkgver = ${pkgver//./_}
setvar pkgrel = '1'
setvar pkgdesc = ""Coroutine Oriented Portable Asynchronous Services for Lua""
setvar url = ""http://keplerproject.github.io/copas/""
setvar arch = ""noarch""
setvar license = ""MIT""
setvar depends = ""lua-socket""
setvar checkdepends = ""lua5.1-coxpcall lua-sec""
setvar subpackages = """"
setvar source = ""$pkgname-$pkgver.tar.gz::https://github.com/keplerproject/$_pkgname/archive/v$_pkgver.tar.gz
	ipv4-only.patch""
setvar builddir = ""$srcdir/$_pkgname-$_pkgver""

# luajit is not available on s390x
# XXX: tests/largetransfer.lua segfaults on ppc64le LuaJIT
case (CARCH) {
	s390x | ppc64le { setvar _luajit = """"}
	* { setvar checkdepends = ""$checkdepends luajit"," _luajit = ""jit""}
}

setvar _luaversions = ""5.1 5.2 5.3""
for _v in $_luaversions {
	setvar subpackages = ""$subpackages lua$_v-$_pkgname:_subpackage""
	setvar checkdepends = ""$checkdepends lua$_v""
}

proc check {
	cd $builddir

	local lver; for lver in $_luaversions $_luajit {
		msg "Testing on lua$lver"
		make test LUA=lua$lver
	}
}

proc package {
	mkdir -p $pkgdir
}

proc _subpackage {
	local lver="${subpkgname:3:3}"
	setvar pkgdesc = ""$pkgdesc $lver""
	setvar depends = ""lua$lver ${depends//lua-/lua$lver-}""
	test $lver = 5.1 && setvar depends = ""$depends lua5.1-coxpcall""
	setvar install_if = ""lua$lver $pkgname=$pkgver-r$pkgrel""
	local rockdir="$subpkgdir/usr/lib/luarocks/rocks-$lver/$_pkgname/$pkgver-1"

	cd $builddir
	make LUA_DIR="$subpkgdir/usr/share/lua/$lver" install

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

setvar sha512sums = ""dd83a513fbddb2f0164c3573b417623f5cc556413c4937be7e362f4c1667bad83391143e1bf609480726730ce488c4080e810f2ce12a98a7abb5293993c10182  lua-copas-2.0.2.tar.gz
4fb2b65f41869b9729cc4672eebbfb2745a2d01af1cd54341b8306f57510f98e118eac77c77a980f4c8e8b181b6fda150061dc39819269e9ee64bf07656dfd54  ipv4-only.patch""