# Contributor: Leo # Maintainer: Natanael Copa _luaversions="5.1 5.2 5.3 5.4" pkgname=lua-rex pkgver=2.9.1 pkgrel=3 pkgdesc="Lua bindings to regular expression library pcre2 and posix" options="!check" # TODO: get testsuite url="http://lrexlib.luaforge.net/" arch="all" license="MIT" depends="lua-rex-pcre2 lua-rex-posix" makedepends="pcre2-dev" subpackages="$pkgname-pcre2:_pcre2 $pkgname-posix:_posix" for _i in $_luaversions; do makedepends="$makedepends lua$_i-dev lua$_i" subpackages="$subpackages lua$_i-rex-pcre2:_pcre2_${_i/./_} lua$_i-rex-posix:_posix_${_i/./_}" eval "_pcre2_${_i/./_}() { _split $_i pcre2; }" eval "_posix_${_i/./_}() { _split $_i posix; }" done source="$pkgname-$pkgver.tar.gz::https://github.com/rrthomas/lrexlib/archive/rel-${pkgver//./-}.tar.gz" builddir="$srcdir"/lrexlib-rel-${pkgver//./-} prepare() { default_prepare local _ver for _ver in $_luaversions; do cp -r "$builddir" "$srcdir"/build-$_ver done } _build_variant() { local _ver=$1 local _obj=$2 local _flags="$3" ${CC:-gcc} \ $CFLAGS \ $(pkg-config --cflags lua$_ver) \ -shared \ -fPIC \ -o $_obj.${pkgver%.*} \ $_flags \ -DVERSION=\"$pkgver\" \ -DLUA_COMPAT_5_2 ln -s $_obj.${pkgver%.*} $_obj } build() { local _ver for _ver in $_luaversions; do msg "build for Lua $_ver" cd "$srcdir"/build-$_ver _build_variant $_ver rex_pcre2.so \ 'src/common.c src/pcre2/lpcre2.c src/pcre2/lpcre2_f.c -lpcre2-8 -DPCRE2_CODE_UNIT_WIDTH=8' _build_variant $_ver rex_posix.so \ 'src/common.c src/posix/lposix.c' done } package() { mkdir -p "$pkgdir" } _pcre2() { pkgdesc="Lua bindings to pcre2 regular expressions library" depends= mkdir -p "$subpkgdir" } _posix() { pkgdesc="Lua bindings to posix regular expressions library" depends= mkdir -p "$subpkgdir" } _split() { local _ver=$1 local _lib=$2 pkgdesc="Lua $_ver bindings to $_lib regular expressions library" install_if="lua$_ver lua-rex-$_lib=$pkgver-r$pkgrel" depends= install -d "$subpkgdir"/usr/lib/lua/$_ver cp -a "$srcdir"/build-$_ver/rex_$_lib.so* \ "$subpkgdir"/usr/lib/lua/$_ver } sha512sums=" 05f9305b76791521f0fcc0010c96dc883542acf97597ad15d448fdaf3d2deb7dd09919c052b974c6de3cb7e3cf4980b73b51d4482c6e25dfaf055a62e46205b9 lua-rex-2.9.1.tar.gz "