# Contributor: Will Sinatra # Maintainer: Will Sinatra pkgname=lua-cmark _pkgname=cmark pkgver=0.31.1 _rockrel=1 pkgrel=0 pkgdesc="Lua wrapper for libcmark CommonMark parser" url="https://github.com/jgm/cmark-lua" arch="all" license="BSD-2-Clause" depends="libcmark" source="$pkgname-$pkgver.tar.gz::https://github.com/jgm/cmark-lua/archive/$pkgver.tar.gz" builddir="$srcdir/cmark-lua-$pkgver" _luaversions="5.1 5.2 5.3 5.4" for _v in $_luaversions; do makedepends="$makedepends lua$_v lua$_v-dev luarocks$_v" subpackages="$subpackages lua$_v-${pkgname#lua-}:_subpackage" done prepare() { default_prepare # Generate rockspec from template sed -e "s/_VERSION/$pkgver/g; s/_REVISION/$_rockrel/g" \ "$builddir"/rockspec.in > "$builddir"/$_pkgname-$pkgver-$_rockrel.rockspec for _v in $_luaversions; do cp -r "$builddir" "$builddir-$_v" done } build() { local _v; for _v in $_luaversions; do msg "Building for Lua $_v..." cd "$builddir-$_v" luarocks-$_v \ CC="$CC" \ CFLAGS="$CFLAGS -fPIC" \ LUA_INCDIR="$(pkg-config --variable=includedir "lua$_v")" \ LUA_LIBDIR="$(pkg-config --variable=libdir "lua$_v")" \ LUA_VERSION="$_v" \ make --tree "./build-$_v" \ --deps-mode=none \ "$_pkgname-$pkgver-$_rockrel.rockspec" done } check() { local _v; for _v in $_luaversions; do msg "Testing on lua$_v" cd "$builddir-$_v" # Tests require lua-TestMore which isn't packaged yet # lua$_v test.t || true done } package() { mkdir -p "$pkgdir" } _subpackage() { local _v="${subpkgname:3:3}" pkgdesc="$pkgdesc (for Lua $_v)" depends="lua$_v libcmark" install_if="$pkgname=$pkgver-r$pkgrel lua$_v" local rockdir="$subpkgdir/usr/lib/luarocks/rocks-$_v/$_pkgname/$pkgver-$_rockrel" cd "$builddir-$_v" # Install the compiled module and lua files from the luarocks build tree mkdir -p "$subpkgdir/usr/lib/lua/$_v" mkdir -p "$subpkgdir/usr/share/lua/$_v" if [ -d "build-$_v/lib/lua/$_v" ]; then cp -a "build-$_v"/lib/lua/$_v/* "$subpkgdir/usr/lib/lua/$_v/" fi if [ -d "build-$_v/share/lua/$_v" ]; then cp -a "build-$_v"/share/lua/$_v/* "$subpkgdir/usr/share/lua/$_v/" fi mkdir -p "$rockdir" echo 'rock_manifest = {}' > "$rockdir"/rock_manifest } sha512sums=" 3bf101c10e6e726d224f1f84502f909209679a894becde61e0b920d9d54caee185f3cd13610a5427e750e5327c8bf7e7a9367cec929a9e05209120cc26aabead lua-cmark-0.31.1.tar.gz "