# Contributor: Mika Havela <mika.havela@gmail.com>
# Maintainer: Mika Havela <mika.havela@gmail.com>
setvar _luaversions = ""5.1 5.2 5.3""
setvar pkgname = 'lua-socket'
setvar _name = 'luasocket'
setvar pkgver = '3.0_rc1_git20160306'
setvar pkgrel = '2'
setvar _ver = ${pkgver%_git*}
setvar _ver = ${_ver/_rc/-rc}
setvar pkgdesc = ""Networking library for Lua""
setvar url = ""http://luaforge.net/projects/luasocket/""
setvar arch = ""all""
setvar license = ""MIT""
setvar install = """"
setvar depends = """"
setvar makedepends = """"
setvar subpackages = """"
for _i in $_luaversions {
	setvar makedepends = ""$makedepends lua$_i-dev""
	setvar subpackages = ""$subpackages lua$_i-socket:split_${_i/./_}""
}
setvar source = ""luasocket-$_ver.tar.gz::https://github.com/diegonehab/luasocket/archive/v$_ver.tar.gz
	git.patch
	lua-cflags.patch
	0001-Create-socket-on-first-sendto-if-family-agnostic-udp.patch
	""

# default_prepare assumes $_builddir
setvar builddir = ""$srcdir/$_name-$_ver""

proc prepare {
	default_prepare
	for _i in $_luaversions {
		cp -r $builddir "$srcdir"/build-$_i
	}
}

proc build {
	for _i in $_luaversions {
		make -C "$srcdir"/build-$_i/src  LUAV=$_i \
			all-unix || return 1
	}
}

proc package {
	for _i in $_luaversions {
		cd "$srcdir"/build-$_i
		make prefix=/usr DESTDIR="$pkgdir" LUAV=$_i \
			install-unix || return 1
	}
}

proc _split {
	local d= _ver=$1
	setvar pkgdesc = ""Networking library for Lua $_ver""
	setvar install_if = ""lua$_ver $pkgname=$pkgver-r$pkgrel""
	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 _i in $_luaversions {
	eval "split_${_i/./_}() { _split $_i; }"
}

setvar md5sums = ""08bd2f265b244eb4bf5c2c36bf89b759  luasocket-3.0-rc1.tar.gz
44c07dc3dd311541a50b21aaa40e36d7  git.patch
d4319e4a20d476ea8d77a3421fca1808  lua-cflags.patch
f91f7da1120e0c9f24d7df1fa31f2576  0001-Create-socket-on-first-sendto-if-family-agnostic-udp.patch""
setvar sha256sums = ""8b67d9b5b545e1b694753dab7bd6cdbc24c290f2b21ba1e14c77b32817ea1249  luasocket-3.0-rc1.tar.gz
414cfe53e4455fc2b416779d5eaa3ade6d97c01fa62dbffb6c9d4d4ad84bdd76  git.patch
77d77fe688b27ae51bcf9d3ae51d43141ab85d95fd322b3904b55dbc76900418  lua-cflags.patch
f8ef57a31c95076438f22eccfbbae16e8767033269fd748dce0d0f919c8d660b  0001-Create-socket-on-first-sendto-if-family-agnostic-udp.patch""
setvar sha512sums = ""f6efce259aaacaa11472911471f8a13b118fe009b8953a82c6aa18b9ec829cd1293180904e56935cb130d36d267e3f27c91db2d78e03f7488f3e100571ed0540  luasocket-3.0-rc1.tar.gz
45c80e488fedc879f0217bc8a654d80da003039f5d1ff21b0dea0eb769151787dbe793e44a3dfd72cb07ff2697eceaf4fc7b55b4634cd170fa71281f19f025a5  git.patch
fb482ad22b5caa2054b25c86edc01d1a666035930f6b55e7d12704dd78b9c31343c39eab5f13958941180d819aa37470c75fe27f1b206a4b431fb589663e2685  lua-cflags.patch
c45a12e17771a1b3b71154b5415421f524cd10b7969b4649a5f37b652cdc826721e117edb8fe64758d3520e59946e2f755b814f72cbb39ff42bf59bbcf9a64e9  0001-Create-socket-on-first-sendto-if-family-agnostic-udp.patch""