SHA256
10
0
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:
2018-12-05 22:50:08 +00:00
committed by Git OBS Bridge
commit f6d5a045b6
7 changed files with 274 additions and 0 deletions

23
.gitattributes vendored Normal file
View 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
View File

@@ -0,0 +1 @@
.osc

4
_multibuild Normal file
View File

@@ -0,0 +1,4 @@
<multibuild>
<package>lua51</package>
<package>lua53</package>
</multibuild>

19
lua-luasql.changes Normal file
View 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
View 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
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:db2458a8c8c5f3bc717e4030fe2878f1ad8d71e437ec6149c381eebad5d525c5
size 103139

View 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},