forked from pool/lua-luasql
osc copypac from project:home:mcepl:work package:lua-luasql revision:13
OBS-URL: https://build.opensuse.org/package/show/devel:languages:lua/lua-luasql?expand=0&rev=1
This commit is contained in:
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
||||
.osc
|
4
_multibuild
Normal file
4
_multibuild
Normal file
@@ -0,0 +1,4 @@
|
||||
<multibuild>
|
||||
<package>lua51</package>
|
||||
<package>lua53</package>
|
||||
</multibuild>
|
19
lua-luasql.changes
Normal file
19
lua-luasql.changes
Normal file
@@ -0,0 +1,19 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Dec 5 22:14:00 CET 2018 - mcepl@suse.com
|
||||
|
||||
- Upgrade to 2.4.0:
|
||||
* Added support in MySQL driver for opening a connection
|
||||
based on a Unix socket (thanks to rafis)
|
||||
* Added connection ping method (thanks to rafis)
|
||||
* Added Makefile for mingw (thanks to watercoldyi)
|
||||
* Bug correction on retrieving varchar2 data (thanks to David
|
||||
Gao)
|
||||
- Rewrite to multibuild, standard openSUSE Lua SPEC file.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Feb 8 04:46:07 UTC 2014 - malcolmlewis@opensuse.org
|
||||
|
||||
- Initial build.
|
||||
- Add luasql-fix-configuration.patch: Clean up building and add rpm
|
||||
optflags.
|
||||
|
93
lua-luasql.spec
Normal file
93
lua-luasql.spec
Normal file
@@ -0,0 +1,93 @@
|
||||
#
|
||||
# spec file for package luasql
|
||||
#
|
||||
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
# Copyright (c) 2014 Malcolm J Lewis <malcolmlewis@opensuse.org>
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
%global flavor @BUILD_FLAVOR@%{nil}
|
||||
%define flavor_dec $(c=%{flavor}; echo ${c:0:-1}.${c: -1})
|
||||
%define flavor_ver %{lua:ver, ok = string.gsub(rpm.expand("%{flavor}"), "lua(%d)(%d)", "%1.%2"); print(ver)}
|
||||
%define mod_name luasql
|
||||
%define lua_archdir %{_libdir}/lua/%{flavor_ver}
|
||||
%define lua_incdir %{_includedir}/lua%{flavor_ver}
|
||||
%define lua_noarchdir %{_datadir}/lua/%{flavor_ver}
|
||||
|
||||
%if "%{flavor}" == ""
|
||||
Name: lua-%{mod_name}
|
||||
ExclusiveArch: do_not_build
|
||||
%else
|
||||
Name: %{flavor}-%{mod_name}
|
||||
%endif
|
||||
Version: 2.4.0
|
||||
Release: 0
|
||||
Summary: Simple interface from Lua to a DBMS
|
||||
License: MIT
|
||||
Group: Development/Libraries/Other
|
||||
URL: https://keplerproject.github.io/luasql/
|
||||
Source0: https://github.com/keplerproject/luasql/archive/v%{version}/%{mod_name}-%{version}.tar.gz
|
||||
#Source0 via https://codeload.github.com/keplerproject/luasql/tar.gz/v2.3.0
|
||||
# PATCH-FIX-OPENSUSE luasql-fix-configuration.patch malcolmlewis@opensuse.org -- Clean up building and add rpm optflags.
|
||||
Patch0: luasql-fix-configuration.patch
|
||||
BuildRequires: %{flavor}-devel
|
||||
BuildRequires: libmysqlclient-devel
|
||||
BuildRequires: postgresql-devel
|
||||
BuildRequires: sqlite3-devel
|
||||
BuildRequires: libiodbc-devel
|
||||
BuildRequires: pkg-config
|
||||
Requires: libmariadb3
|
||||
Requires: %{flavor}
|
||||
|
||||
%description
|
||||
A simple interface from Lua to a DBMS. It enables a Lua program to:
|
||||
- Connect to ODBC, ADO, Oracle, MySQL, SQLite and PostgreSQL databases;
|
||||
- Execute arbitrary SQL statements;
|
||||
- Retrieve results in a row-by-row cursor fashion.
|
||||
|
||||
%prep
|
||||
%setup -q -n %{mod_name}-%{version}
|
||||
%patch0 -p1
|
||||
|
||||
%build
|
||||
export OPTFLAGS="%{optflags}"
|
||||
export LUA_INC="%{lua_incdir}"
|
||||
|
||||
# also oci8 firebird
|
||||
make %{?_smp_mflags} \
|
||||
DRIVER_INCS="-I%{_includedir}" DRIVER_LIBS_sqlite3="-lsqlite3" sqlite3
|
||||
make %{?_smp_mflags} \
|
||||
DRIVER_INCS="-I%{_includedir}/pgsql" DRIVER_LIBS_postgres="-lpq" postgres
|
||||
make %{?_smp_mflags} \
|
||||
DRIVER_INCS="-I%{_includedir}/mysql" DRIVER_LIBS_mysql="-lmysqlclient -lz" mysql
|
||||
make %{?_smp_mflags} \
|
||||
DRIVER_INCS="-I%{_includedir}" DRIVER_LIBS_odbc="-liodbc" odbc
|
||||
|
||||
|
||||
%install
|
||||
%make_install LUA_LIBDIR='$(DESTDIR)%{lua_archdir}' sqlite3
|
||||
%make_install LUA_LIBDIR='$(DESTDIR)%{lua_archdir}' postgres
|
||||
%make_install LUA_LIBDIR='$(DESTDIR)%{lua_archdir}' mysql
|
||||
%make_install LUA_LIBDIR='$(DESTDIR)%{lua_archdir}' odbc
|
||||
|
||||
%files
|
||||
%doc doc/us/*
|
||||
%dir %{lua_archdir}/luasql
|
||||
%{lua_archdir}/luasql/
|
||||
# TODO? Split to subpackages?
|
||||
# /usr/lib64/lua/%%{lua_version}/luasql
|
||||
# /usr/lib64/lua/%%{lua_version}/luasql/mysql.so
|
||||
# /usr/lib64/lua/%%{lua_version}/luasql/postgres.so
|
||||
# /usr/lib64/lua/%%{lua_version}/luasql/sqlite3.so
|
||||
|
||||
%changelog
|
3
luasql-2.4.0.tar.gz
Normal file
3
luasql-2.4.0.tar.gz
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:db2458a8c8c5f3bc717e4030fe2878f1ad8d71e437ec6149c381eebad5d525c5
|
||||
size 103139
|
131
luasql-fix-configuration.patch
Normal file
131
luasql-fix-configuration.patch
Normal file
@@ -0,0 +1,131 @@
|
||||
--- a/config
|
||||
+++ b/config
|
||||
@@ -46,9 +46,8 @@ DRIVER_LIBS_firebird ?= -L/usr/local/fir
|
||||
DRIVER_INCS_firebird ?=
|
||||
|
||||
# general compilation parameters
|
||||
-WARN = -Wall -Wmissing-prototypes -Wmissing-declarations -pedantic
|
||||
+WARN= -fPIC $(OPTFLAGS) -Wmissing-prototypes -Wmissing-declarations -ansi -pedantic
|
||||
INCS = -I$(LUA_INC)
|
||||
-DEFS =
|
||||
-CFLAGS = -O2 -std=gnu99 $(WARN) -fPIC $(DRIVER_INCS) $(INCS) \
|
||||
- -DLUASQL_VERSION_NUMBER='"$V"' $(DEFS)
|
||||
+DEFS = -std=gnu99 -fPIC
|
||||
+CFLAGS=$(WARN) $(DRIVER_INCS) $(INCS) -DLUASQL_VERSION_NUMBER='"$V"' $(DEFS)
|
||||
CC= gcc
|
||||
--- a/src/ls_mysql.c
|
||||
+++ b/src/ls_mysql.c
|
||||
@@ -29,28 +29,28 @@
|
||||
#define LUASQL_CURSOR_MYSQL "MySQL cursor"
|
||||
|
||||
/* For compat with old version 4.0 */
|
||||
-#if (MYSQL_VERSION_ID < 40100)
|
||||
-#define MYSQL_TYPE_VAR_STRING FIELD_TYPE_VAR_STRING
|
||||
-#define MYSQL_TYPE_STRING FIELD_TYPE_STRING
|
||||
-#define MYSQL_TYPE_DECIMAL FIELD_TYPE_DECIMAL
|
||||
-#define MYSQL_TYPE_SHORT FIELD_TYPE_SHORT
|
||||
-#define MYSQL_TYPE_LONG FIELD_TYPE_LONG
|
||||
-#define MYSQL_TYPE_FLOAT FIELD_TYPE_FLOAT
|
||||
-#define MYSQL_TYPE_DOUBLE FIELD_TYPE_DOUBLE
|
||||
-#define MYSQL_TYPE_LONGLONG FIELD_TYPE_LONGLONG
|
||||
-#define MYSQL_TYPE_INT24 FIELD_TYPE_INT24
|
||||
-#define MYSQL_TYPE_YEAR FIELD_TYPE_YEAR
|
||||
-#define MYSQL_TYPE_TINY FIELD_TYPE_TINY
|
||||
-#define MYSQL_TYPE_TINY_BLOB FIELD_TYPE_TINY_BLOB
|
||||
-#define MYSQL_TYPE_MEDIUM_BLOB FIELD_TYPE_MEDIUM_BLOB
|
||||
-#define MYSQL_TYPE_LONG_BLOB FIELD_TYPE_LONG_BLOB
|
||||
-#define MYSQL_TYPE_BLOB FIELD_TYPE_BLOB
|
||||
-#define MYSQL_TYPE_DATE FIELD_TYPE_DATE
|
||||
-#define MYSQL_TYPE_NEWDATE FIELD_TYPE_NEWDATE
|
||||
-#define MYSQL_TYPE_DATETIME FIELD_TYPE_DATETIME
|
||||
-#define MYSQL_TYPE_TIME FIELD_TYPE_TIME
|
||||
-#define MYSQL_TYPE_TIMESTAMP FIELD_TYPE_TIMESTAMP
|
||||
-#define MYSQL_TYPE_ENUM FIELD_TYPE_ENUM
|
||||
+#if (MYSQL_VERSION_ID < 40100)
|
||||
+#define MYSQL_TYPE_VAR_STRING FIELD_TYPE_VAR_STRING
|
||||
+#define MYSQL_TYPE_STRING FIELD_TYPE_STRING
|
||||
+#define MYSQL_TYPE_DECIMAL FIELD_TYPE_DECIMAL
|
||||
+#define MYSQL_TYPE_SHORT FIELD_TYPE_SHORT
|
||||
+#define MYSQL_TYPE_LONG FIELD_TYPE_LONG
|
||||
+#define MYSQL_TYPE_FLOAT FIELD_TYPE_FLOAT
|
||||
+#define MYSQL_TYPE_DOUBLE FIELD_TYPE_DOUBLE
|
||||
+#define MYSQL_TYPE_LONGLONG FIELD_TYPE_LONGLONG
|
||||
+#define MYSQL_TYPE_INT24 FIELD_TYPE_INT24
|
||||
+#define MYSQL_TYPE_YEAR FIELD_TYPE_YEAR
|
||||
+#define MYSQL_TYPE_TINY FIELD_TYPE_TINY
|
||||
+#define MYSQL_TYPE_TINY_BLOB FIELD_TYPE_TINY_BLOB
|
||||
+#define MYSQL_TYPE_MEDIUM_BLOB FIELD_TYPE_MEDIUM_BLOB
|
||||
+#define MYSQL_TYPE_LONG_BLOB FIELD_TYPE_LONG_BLOB
|
||||
+#define MYSQL_TYPE_BLOB FIELD_TYPE_BLOB
|
||||
+#define MYSQL_TYPE_DATE FIELD_TYPE_DATE
|
||||
+#define MYSQL_TYPE_NEWDATE FIELD_TYPE_NEWDATE
|
||||
+#define MYSQL_TYPE_DATETIME FIELD_TYPE_DATETIME
|
||||
+#define MYSQL_TYPE_TIME FIELD_TYPE_TIME
|
||||
+#define MYSQL_TYPE_TIMESTAMP FIELD_TYPE_TIMESTAMP
|
||||
+#define MYSQL_TYPE_ENUM FIELD_TYPE_ENUM
|
||||
#define MYSQL_TYPE_SET FIELD_TYPE_SET
|
||||
#define MYSQL_TYPE_NULL FIELD_TYPE_NULL
|
||||
|
||||
@@ -135,7 +135,7 @@ static char *getcolumntype (enum enum_fi
|
||||
return "string";
|
||||
case MYSQL_TYPE_DECIMAL: case MYSQL_TYPE_SHORT: case MYSQL_TYPE_LONG:
|
||||
case MYSQL_TYPE_FLOAT: case MYSQL_TYPE_DOUBLE: case MYSQL_TYPE_LONGLONG:
|
||||
- case MYSQL_TYPE_INT24: case MYSQL_TYPE_YEAR: case MYSQL_TYPE_TINY:
|
||||
+ case MYSQL_TYPE_INT24: case MYSQL_TYPE_YEAR: case MYSQL_TYPE_TINY:
|
||||
return "number";
|
||||
case MYSQL_TYPE_TINY_BLOB: case MYSQL_TYPE_MEDIUM_BLOB:
|
||||
case MYSQL_TYPE_LONG_BLOB: case MYSQL_TYPE_BLOB:
|
||||
@@ -193,7 +193,7 @@ static void cur_nullify (lua_State *L, c
|
||||
luaL_unref (L, LUA_REGISTRYINDEX, cur->coltypes);
|
||||
}
|
||||
|
||||
-
|
||||
+
|
||||
/*
|
||||
** Get another row of the given cursor.
|
||||
*/
|
||||
@@ -225,7 +225,7 @@ static int cur_fetch (lua_State *L) {
|
||||
if (cur->colnames == LUA_NOREF)
|
||||
create_colinfo(L, cur);
|
||||
lua_rawgeti (L, LUA_REGISTRYINDEX, cur->colnames);/* Push colnames*/
|
||||
-
|
||||
+
|
||||
/* Copy values to alphanumerical indices */
|
||||
for (i = 0; i < cur->numcols; i++) {
|
||||
lua_rawgeti(L, -1, i+1); /* push the field name */
|
||||
@@ -288,7 +288,7 @@ static void _pushtable (lua_State *L, cu
|
||||
/* If colnames or coltypes do not exist, create both. */
|
||||
if (*ref == LUA_NOREF)
|
||||
create_colinfo(L, cur);
|
||||
-
|
||||
+
|
||||
/* Pushes the right table (colnames or coltypes) */
|
||||
lua_rawgeti (L, LUA_REGISTRYINDEX, *ref);
|
||||
}
|
||||
@@ -417,7 +417,7 @@ static int conn_execute (lua_State *L) {
|
||||
conn_data *conn = getconnection (L);
|
||||
size_t st_len;
|
||||
const char *statement = luaL_checklstring (L, 2, &st_len);
|
||||
- if (mysql_real_query(conn->my_conn, statement, st_len))
|
||||
+ if (mysql_real_query(conn->my_conn, statement, st_len))
|
||||
/* error executing query */
|
||||
return luasql_failmsg(L, "error executing query. MySQL: ", mysql_error(conn->my_conn));
|
||||
else
|
||||
@@ -524,7 +524,7 @@ static int env_connect (lua_State *L) {
|
||||
if (conn == NULL)
|
||||
return luasql_faildirect(L, "error connecting: Out of memory.");
|
||||
|
||||
- if (!mysql_real_connect(conn, host, username, password,
|
||||
+ if (!mysql_real_connect(conn, host, username, password,
|
||||
sourcename, port, unix_socket, client_flag))
|
||||
{
|
||||
char error_msg[100];
|
||||
@@ -618,7 +618,7 @@ static int create_environment (lua_State
|
||||
** Creates the metatables for the objects and registers the
|
||||
** driver open method.
|
||||
*/
|
||||
-LUASQL_API int luaopen_luasql_mysql (lua_State *L) {
|
||||
+LUASQL_API int luaopen_luasql_mysql (lua_State *L) {
|
||||
struct luaL_Reg driver[] = {
|
||||
{"mysql", create_environment},
|
||||
{NULL, NULL},
|
Reference in New Issue
Block a user