Skip to content
Snippets Groups Projects
Commit d33e7083 authored by Eivind Uggedal's avatar Eivind Uggedal
Browse files

main/lua-rex: upgrade to 2.8.0

Introduce support for Lua 5.2 and 5.3 in addition to the existing
5.1 support.

Version 2.7.0 of lrexlib removed the make based build system
and depends on luarock for building.

To avoid a dependency on luarocks (which is in testing) a custom
build was introduced.
parent 963b0004
No related branches found
No related tags found
No related merge requests found
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
_luaversions="5.1 5.2 5.3"
pkgname=lua-rex
pkgver=2.5.3
pkgrel=1
pkgver=2.8.0
pkgrel=0
pkgdesc="Lua bindings to regular expression library pcre and posix"
url="http://lrexlib.luaforge.net/"
arch="all"
license="MIT"
depends="lua-rex-pcre lua-rex-posix"
makedepends="pcre-dev lua-dev"
makedepends="pcre-dev"
install=
subpackages="$pkgname-pcre $pkgname-posix"
source="http://luaforge.net/frs/download.php/4759/lrexlib-2.5.3.zip"
subpackages="$pkgname-pcre:_pcre $pkgname-posix:_posix"
_builddir="$srcdir"/lrexlib-$pkgver
for _i in $_luaversions; do
makedepends="$makedepends lua$_i-dev lua$_i"
subpackages="$subpackages lua$_i-rex-pcre:_pcre_${_i/./_}
lua$_i-rex-posix:_posix_${_i/./_}"
eval "_pcre_${_i/./_}() { _split $_i pcre; }"
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() {
cd "$_builddir"
sed -i -e "s/^MYCFLAGS.*/MYCFLAGS = $CFLAGS -fPIC/" src/defaults.mak
sed -i -e "s/^LD .*/LD = gcc/" \
src/common.mak
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 || return 1
ln -s $_obj.${pkgver%.*} $_obj || return 1
}
build() {
cd "$_builddir"
make -j1 -C src/pcre
make -j1 -C src/posix
local _ver
for _ver in $_luaversions; do
msg "build for Lua $_ver"
cd "$srcdir"/build-$_ver
_build_variant $_ver rex_pcre.so \
'src/common.c src/pcre/lpcre.c src/pcre/lpcre_f.c
-lpcre' || return 1
_build_variant $_ver rex_posix.so \
'src/common.c src/posix/lposix.c' || return 1
done
}
package() {
mkdir -p "$pkgdir"
}
pcre() {
_pcre() {
pkgdesc="Lua bindings to pcre regular expressions library"
depends=
cd "$_builddir"
install -d "$subpkgdir"/usr/lib/lua/5.1
cp -a src/pcre/rex_pcre.so* "$subpkgdir"/usr/lib/lua/5.1
mkdir -p "$subpkgdir"
}
posix() {
_posix() {
pkgdesc="Lua bindings to posix regular expressions library"
depends=
cd "$_builddir"
install -d "$subpkgdir"/usr/lib/lua/5.1
cp -a src/posix/rex_posix.so* "$subpkgdir"/usr/lib/lua/5.1
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 || return 1
cp -a "$srcdir"/build-$_ver/rex_$_lib.so* \
"$subpkgdir"/usr/lib/lua/$_ver || return 1
}
md5sums="a51c5ff54d85bfd1222ddbfd922a7d51 lrexlib-2.5.3.zip"
md5sums="25b88d455e3d389ab431568290060af5 lua-rex-2.8.0.tar.gz"
sha256sums="d47f2de3340b30c75a849feaf02f79de5a8adf735edf631bbd58447db2101822 lua-rex-2.8.0.tar.gz"
sha512sums="9593263541757f384df327c85a01df648767041c494f9f7b3491a521e7d4f94918b967c48adff6794bc93baf3b4a11add6feb4630de8bf53903ff7a819c1b006 lua-rex-2.8.0.tar.gz"
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment