blob: 30c59e7f36feaa9ac67e71e005d5352b330ec1f0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
|
# Contributor: Łukasz Jendrysik <scadu@yandex.com>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
_luaversions="5.1 5.2"
_drivers="mysql postgres sqlite3 odbc"
pkgname=lua-sql
pkgver=2.3.0
pkgrel=2
pkgdesc="Lua SQL drivers"
url="http://www.keplerproject.org/luasql/"
arch="all"
license="MIT"
depends=""
makedepends="mariadb-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
sqlite_v2_api.patch"
_sdir="$srcdir"/luasql-$pkgver
prepare() {
cd "$_sdir"
for i in $source; do
case $i in
*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
esac
done
# 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
656699a57b5529aa9594f0fe6bad1dd4 sqlite_v2_api.patch"
sha256sums="e173ff7b17a2757951b4b2f67d3b1bfe04caad7185b68cffa7758ce822e25e9f luasql-2.3.0.tar.gz
74fb0ad9161346a29dc133508b5b444084a46d792a9a4e987766fc3989dd0435 sqlite_v2_api.patch"
sha512sums="62309cf6241ffab1ed32e718536a5c986168a7bb6fcf2cf55e884db5043d5ec473bbbb7c93b399dfc0a19f282e850f742452583ad0d973661a7f672b0f8da2d5 luasql-2.3.0.tar.gz
7ea3eb63d4e121875033dd8b7a027eb8fd7784831f9999c880a22d64cf8d50a9ef2cde804b86b416d39262e1f7185054bac1e7fb4fb560320c0a53cce52f80cc sqlite_v2_api.patch"
|