# Contributor: Ɓukasz Jendrysik # Maintainer: Natanael Copa setvar _luaversions = ""5.1 5.2 5.3"" setvar _drivers = ""mysql postgres sqlite3 odbc"" setvar pkgname = 'lua-sql' setvar _pkgname = 'luasql' setvar pkgver = '2.3.5' setvar pkgrel = '1' setvar pkgdesc = ""Lua SQL drivers"" setvar url = ""http://keplerproject.github.io/luasql/doc/us/"" setvar arch = ""all"" setvar license = ""MIT"" setvar makedepends = ""mariadb-dev postgresql-dev sqlite-dev unixodbc-dev"" setvar subpackages = """" for _v in $_luaversions { setvar makedepends = ""$makedepends lua$_v-dev"" for _d in $_drivers { setvar subpackages = ""$subpackages lua$_v-sql-$_d:_subpackage"" } } for _d in $_drivers { setvar subpackages = ""$subpackages lua-sql-$_d:_meta_subpackage"" } setvar source = ""$_pkgname-$pkgver.tar.gz::https://github.com/keplerproject/$_pkgname/archive/v$pkgver.tar.gz"" setvar builddir = ""$srcdir/$_pkgname-$pkgver"" proc prepare { default_prepare || return 1 cd $builddir # The config has DRIVER_INCS but it seems like its not respected # so we just fix the .c file. sed -i 's:^\#include "mysql.h":\#include :' \ src/ls_mysql.c || return 1 local lver; for lver in $_luaversions { cp -r $builddir "$builddir-$lver" || return 1 } } proc build { local cflags lver for lver in $_luaversions { setvar cflags = ""$CFLAGS $(pkg-config lua$lver --cflags) -fPIC"" msg "Building for Lua $lver..." cd "$builddir-$lver" make CFLAGS="$cflags" DRIVER_LIBS="-lmysqlclient" \ mysql || return 1 make CFLAGS="$cflags" DRIVER_LIBS="$(pkg-config --libs libpq)" \ postgres || return 1 make CFLAGS="$cflags" DRIVER_LIBS="$(pkg-config --libs sqlite3)" \ sqlite3 || return 1 make CFLAGS="$cflags -DUNIXODBC" DRIVER_LIBS="-lodbc" \ odbc || return 1 } } proc package { mkdir -p $pkgdir } proc _meta_subpackage { local driver="${subpkgname##*-}" setvar pkgdesc = ""$pkgdesc for $driver"" mkdir -p $subpkgdir } proc _subpackage { local lver="${subpkgname:3:3}" local driver="${subpkgname##*-}" setvar pkgdesc = ""Lua $lver SQL driver for $driver"" setvar depends = ""lua$lver"" setvar install_if = ""lua-sql-$driver=$pkgver-r$pkgrel lua$lver"" local rockdir="$subpkgdir/usr/lib/luarocks/rocks-$lver/$_pkgname/$pkgver-1" cd "$builddir-$lver" local install_cmod="$(pkg-config --variable INSTALL_CMOD lua$lver)" install -D src/$driver.so \ "$subpkgdir"/$install_cmod/luasql/$driver.so mkdir -p $rockdir echo 'rock_manifest = {}' > "$rockdir"/rock_manifest } setvar sha512sums = ""28e25998366a2517cdd37933f0f00e0bb4b06bd9b6731209361777d6b755d62d763168dc78177cab5dfeee667deea04ff775912fb148ed145d64cea5407df4e7 luasql-2.3.5.tar.gz""