diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2014-06-05 08:02:07 +0000 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2014-06-05 08:26:16 +0000 |
commit | fa2422284685c88f06b20fd5a089ae27a0f543ab (patch) | |
tree | 4c89ed293ce0f54e31ccc3630f32bf824d44fb84 /main/lua-sql/APKBUILD | |
parent | 8d61a971f145e0f6e70e71494ebec4b4cea56ab7 (diff) | |
download | aports-fa2422284685c88f06b20fd5a089ae27a0f543ab.tar.bz2 aports-fa2422284685c88f06b20fd5a089ae27a0f543ab.tar.xz |
main/lua-sql: merge lua-sql drivers
we build all the different sql drivers for all the different lua
versions from a single APKBUILD
Diffstat (limited to 'main/lua-sql/APKBUILD')
-rw-r--r-- | main/lua-sql/APKBUILD | 115 |
1 files changed, 115 insertions, 0 deletions
diff --git a/main/lua-sql/APKBUILD b/main/lua-sql/APKBUILD new file mode 100644 index 0000000000..45eda19d03 --- /dev/null +++ b/main/lua-sql/APKBUILD @@ -0,0 +1,115 @@ +# Maintainer: Natanael Copa <ncopa@alpinelinux.org> +_luaversions="5.1 5.2" +_drivers="mysql postgres sqlite3 odbc" + +pkgname=lua-sql +pkgver=2.3.0 +pkgrel=0 +pkgdesc="Lua SQL drivers" +url="http://www.keplerproject.org/luasql/" +arch="all" +license="MIT" +depends="" +makedepends="mysql-dev postgresql-dev sqlite-dev unixodbc-dev" +install= +subpackages= +for _i in $_luaversions; do + makedepends="$makedepends lua$_i-dev" + for _j in $_drivers; do + subpackages="$subpackages lua$_i-sql-$_j:split_${_j}_${_i/./}" + done +done +for _j in $_drivers; do + subpackages="$subpackages lua-sql-$_j:split_${_j}" +done + +source="luasql-$pkgver.tar.gz::https://github.com/keplerproject/luasql/archive/v$pkgver.tar.gz + widechars.patch" + +_sdir="$srcdir"/luasql-$pkgver +prepare() { + cd "$_sdir" + # apply patches here + + # The config has DRIVER_INCS but it seems like its not respected + # so we just fix the .c file + sed -i -e 's:^\#include "mysql.h":\#include <mysql/mysql.h>:' \ + src/ls_mysql.c || return 1 + + cd "$srcdir" + for _i in $_luaversions; do + cp -r "$_sdir" "$srcdir"/build-$_i + done +} + +build() { + for _i in $_luaversions; do + msg "build for Lua $_i" + cd "$srcdir"/build-$_i + make CFLAGS="$CFLAGS $( pkg-config lua$_i --cflags ) -fPIC" \ + DRIVER_LIBS="-lmysqlclient" \ + T=mysql || return 1 + + make CFLAGS="$CFLAGS $( pkg-config lua$_i --cflags ) -fPIC" \ + DRIVER_LIBS="$(pkg-config --libs libpq)" \ + T=postgres || return 1 + + make CFLAGS="$CFLAGS $( pkg-config lua$_i --cflags ) -fPIC" \ + DRIVER_LIBS="$(pkg-config --libs sqlite3)" \ + T=sqlite3 || return 1 + + make CFLAGS="$CFLAGS $( pkg-config lua$_i --cflags ) -fPIC -DUNIXODBC" \ + DRIVER_LIBS="-lodbc"\ + T=odbc || return 1 + + done +} + +package() { + for _i in $_luaversions; do + local _install_cmod=$(pkg-config --variable INSTALL_CMOD lua$_i) + cd "$srcdir"/build-$_i + for _j in $_drivers; do + install -D src/$_j.so \ + "$pkgdir"/$_install_cmod/luasql/$_j.so \ + || return 1 + done + done +} + +_split() { + local d= _ver=$1 _driver=$2 + pkgdesc="Lua $_ver SQL driver for $2" + depends= + replaces= + if [ "$_ver" = "5.1" ]; then + replaces="lua-sql-$_driver" + fi + mkdir -p "$subpkgdir"/usr/lib/lua/$_ver/luasql + mv "$pkgdir"/usr/lib/lua/$_ver/luasql/$_driver.so \ + "$subpkgdir"/usr/lib/lua/$_ver/luasql/ || return 1 +} + +for _i in $_luaversions; do + for _j in $_drivers; do + eval "split_${_j}_${_i/./}() { _split $_i $_j; }" + done +done +for _j in $_drivers; do + _deps= + for _i in $_luaversions; do + _deps="$_deps lua${_i}-sql-${_j}" + done + eval "split_$_j() { + pkgdesc=\"Lua SQL drivers for $_j\"; + depends=\"$_deps\"; + mkdir -p \"$subpkgdir\"; + }" +done + +md5sums="af9f0f3a2313a1fcf88c40700092048d luasql-2.3.0.tar.gz +a706dfeb8cdfcca209b90755e8104545 widechars.patch" +sha256sums="e173ff7b17a2757951b4b2f67d3b1bfe04caad7185b68cffa7758ce822e25e9f luasql-2.3.0.tar.gz +89aed953834f9b6ed9998baac8454d7761f317d61513b532c17d0262c401a446 widechars.patch" +sha512sums="62309cf6241ffab1ed32e718536a5c986168a7bb6fcf2cf55e884db5043d5ec473bbbb7c93b399dfc0a19f282e850f742452583ad0d973661a7f672b0f8da2d5 luasql-2.3.0.tar.gz +b31fa46b99d06d6069c03679b7cef08412eee6d5e4606b02e02b98cb97e03c0b884d65390c1e80cf5a36fa41b3afba9cbbc441284ec3a1e725e3de7bc824908e widechars.patch" |