# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
_luaversions="5.1 5.2"
pkgname=lua-xml
_name=LuaXML
pkgver=130610
pkgrel=3
pkgdesc="a minimal set of functions for the processing of XML data in Lua"
url="http://viremo.eludi.net/LuaXML/index.html"
arch="all"
license="MIT"
depends=
makedepends=""
install=
subpackages=
for _v in $_luaversions; do
	makedepends="$makedepends lua$_v-dev"
	subpackages="$subpackages lua$_v-xml:split_${_v/./_}"
done

source="http://viremo.eludi.net/LuaXML/LuaXML_$pkgver.zip
0001-Fix-error-where-TAG-should-be-xml.TAG.patch"

_builddir="$srcdir"

prepare() {
	cd "$_builddir"
	for i in $source; do
		case $i in
		*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
		esac
	done

	for i in $_luaversions; do
		mkdir $i
		cp *.c Makefile *.lua $i/ || return 1
	done
}

build() {
	for i in $_luaversions; do
		cd "$_builddir"/$i
		make INCDIR="$CFLAGS $(pkg-config --cflags lua$i)" \
			LIBS= \
			|| return 1
	done
}

package() {
	for i in $_luaversions; do
		cd "$_builddir"/$i
		install -m755 -D LuaXML_lib.so \
			"$pkgdir"/usr/lib/lua/$i/LuaXML_lib.so || return 1
		install -m755 -D LuaXml.lua \
			"$pkgdir"/usr/share/lua/$i/LuaXml.lua || return 1
	done
}

_split() {
	local d= _ver=$1
	pkgdesc="$pkgdesc for Lua $_ver"
	install_if="lua$_ver $pkgname=$pkgver-r$pkgrel"
	depends=
	for d in usr/lib/lua usr/share/lua; do
		if [ -d "$pkgdir"/$d/$_ver ]; then
			mkdir -p "$subpkgdir"/$d
			mv "$pkgdir"/$d/$_ver "$subpkgdir"/$d/ || return 1
		fi
	done
}

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

md5sums="25e4c276c5d8716af1de0c7853aec2b4  LuaXML_130610.zip
a22f3177c2e00c5e51836a4a49c70321  0001-Fix-error-where-TAG-should-be-xml.TAG.patch"
sha256sums="f2c7475c9ff842d110cfcbc0d0859856b4df18baea3edb5b9379c41a92415e6e  LuaXML_130610.zip
979ec2c6610651bcbb6dd8184ca6d673e98cb2adfe5af83b1366f48ce6cfb398  0001-Fix-error-where-TAG-should-be-xml.TAG.patch"
sha512sums="8f4ab1ba0b186ae8778ec7e2cdf5ebb403233ac9a551c6e476d0554bc27b0eb16a69a070c56747d59d6ee7aa53be70245d9be302ca69ea02226c3543b0ca654f  LuaXML_130610.zip
60ba65a0d47065e2609ca4d5c8d994fc29b9d4c6b5b0a060fa7f83612c71937999648e48dd26063f6528811eb053fe912ee5b6c4465576912c9dacb9bb406cae  0001-Fix-error-where-TAG-should-be-xml.TAG.patch"
