# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
setvar _luaversions = ""5.1 5.2 5.3""
setvar pkgname = 'lua-evdev'
setvar _rockname = 'evdev'
setvar pkgver = '2.2.1'
setvar pkgrel = '1'
setvar pkgdesc = ""Lua module for reading input events""
setvar url = ""https://github.com/Tangent128/lua-evdev""
setvar arch = ""all""
setvar license = ""MIT""
setvar depends = """"
setvar makedepends = ""linux-headers""
setvar subpackages = """"
for _v in $_luaversions {
	setvar makedepends = ""$makedepends lua$_v-dev""
	setvar subpackages = ""$subpackages lua$_v-${pkgname#lua-}:_package""
}
setvar source = ""$pkgname-$pkgver.tar.gz::https://github.com/Tangent128/$pkgname/archive/evdev-$pkgver.tar.gz""
setvar builddir = ""$srcdir/$pkgname-evdev-$pkgver""

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..."

		cd "$builddir-$lver"
		make MYCFLAGS="$CFLAGS $(pkg-config --cflags lua$lver)" || return 1
	}
}

proc package {
	mkdir -p $pkgdir
}

proc _package {
	local lver="${subpkgname:3:3}"
	setvar pkgdesc = ""$pkgdesc (for Lua $lver)""
	setvar depends = ""$depends lua$lver""
	setvar install_if = ""$pkgname=$pkgver-r$pkgrel lua$lver""
	local rockdir="$subpkgdir/usr/lib/luarocks/rocks-$lver/$_rockname/$pkgver-1"

	cd "$builddir-$lver"

	local f; for f in evdev.lua evdev/constants.lua {
		install -D $f "$subpkgdir"/usr/share/lua/$lver/$f || return 1
	}
	install -D evdev/core.so "$subpkgdir"/usr/lib/lua/$lver/evdev/core.so

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

setvar md5sums = ""8db10a3079bda7acd20046e0793df678  lua-evdev-2.2.1.tar.gz""
setvar sha256sums = ""8ccec638250a839e8567f55e5c61982396ec81f9e339dbf36ee809cb5375c0ae  lua-evdev-2.2.1.tar.gz""
setvar sha512sums = ""6d8bfb148013c780f7276c884e297b7d6ea55c0c257ac074c677b0dc6495a6087e0e1cb671d844b22d13c9a4c19c544d22a10f3ded5ad3580ccce33c74690871  lua-evdev-2.2.1.tar.gz""