Hello community, here is the log from the commit of package sqliteodbc for openSUSE:Factory checked in at 2016-04-06 11:52:14 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/sqliteodbc (Old) and /work/SRC/openSUSE:Factory/.sqliteodbc.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "sqliteodbc" Changes: -------- --- /work/SRC/openSUSE:Factory/sqliteodbc/sqliteodbc.changes 2016-02-17 12:25:03.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.sqliteodbc.new/sqliteodbc.changes 2016-04-06 11:52:16.000000000 +0200 @@ -1,0 +2,15 @@ +Mon Apr 4 06:48:00 UTC 2016 - tuukka.pasa...@ilmi.fi + +- Update to 0.9223 + * update to SQLite 3.10.0 + * fixes in SQLStatistic() for decting unique indices + * for SQLGetPrivateProfileString() try to load libodbcinst.so.2 + first, then libodbcinst.so.1 + * eliminated some valgrind warnings regarding strcpy() + * increased max. length for data source name in Win32 + config dialog + * configure: detect presence of sqlite3_columndatabasename() + and sqlite3_columnoriginname() +- Doxygen.conf add 'HTML_TIMESTAMP = NO' (boo#969496) + +------------------------------------------------------------------- Old: ---- sqliteodbc-0.9992.tar.gz New: ---- sqliteodbc-0.9993.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ sqliteodbc.spec ++++++ --- /var/tmp/diff_new_pack.fPQ8VN/_old 2016-04-06 11:52:17.000000000 +0200 +++ /var/tmp/diff_new_pack.fPQ8VN/_new 2016-04-06 11:52:17.000000000 +0200 @@ -17,7 +17,7 @@ Name: sqliteodbc -Version: 0.9992 +Version: 0.9993 Release: 0 Summary: ODBC driver for SQLite License: BSD-2-Clause @@ -56,6 +56,9 @@ %prep %setup -q +# Fix bug https://bugzilla.novell.com/show_bug.cgi?id=969496 +# No more changing time stamp for every time this builds +echo "HTML_TIMESTAMP = NO" >> doxygen.conf %build %configure \ ++++++ sqliteodbc-0.9992.tar.gz -> sqliteodbc-0.9993.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/ChangeLog new/sqliteodbc-0.9993/ChangeLog --- old/sqliteodbc-0.9992/ChangeLog 2015-04-13 08:29:02.000000000 +0200 +++ new/sqliteodbc-0.9993/ChangeLog 2016-01-11 11:01:15.000000000 +0100 @@ -1,6 +1,18 @@ SQLite ODBC Driver ------------------ +Mon Jan 11 2016 version 0.9993 released + + * update to SQLite 3.10.0 + * fixes in SQLStatistic() for decting unique indices + * for SQLGetPrivateProfileString() try to load libodbcinst.so.2 + first, then libodbcinst.so.1 + * eliminated some valgrind warnings regarding strcpy() + * increased max. length for data source name in Win32 + config dialog + * configure: detect presence of sqlite3_columndatabasename() + and sqlite3_columnoriginname() + Mon Apr 13 2015 version 0.9992 released * update to SQLite 3.8.9 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/Makefile.in new/sqliteodbc-0.9993/Makefile.in --- old/sqliteodbc-0.9992/Makefile.in 2013-06-19 10:33:26.000000000 +0200 +++ new/sqliteodbc-0.9993/Makefile.in 2015-09-18 08:50:38.000000000 +0200 @@ -18,6 +18,8 @@ SQLITE3_INC = @SQLITE3_INC@ SQLITE3_LIB = @SQLITE3_LIB@ SQLITE3_FLAGS = -DHAVE_SQLITE3COLUMNTABLENAME=@SQLITE3_COLUMNTABLENAME@ \ + -DHAVE_SQLITE3COLUMNDATABASENAME=@SQLITE3_COLUMNDATABASENAME@ \ + -DHAVE_SQLITE3COLUMNORIGINNAME=@SQLITE3_COLUMNORIGINNAME@ \ -DHAVE_SQLITE3LOADEXTENSION=@SQLITE3_LOADEXTENSION@ \ -DHAVE_SQLITE3OVERLOADFUNCTION=@SQLITE3_OVERLOADFUNCTION@ \ -DHAVE_SQLITE3PREPAREV2=@SQLITE3_PREPARE_V2@ \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/Makefile.mingw-cross new/sqliteodbc-0.9993/Makefile.mingw-cross --- old/sqliteodbc-0.9992/Makefile.mingw-cross 2014-09-14 20:20:50.000000000 +0200 +++ new/sqliteodbc-0.9993/Makefile.mingw-cross 2015-09-23 10:07:19.000000000 +0200 @@ -44,12 +44,15 @@ SQLITE3_SRC = sqlite3/src SQLITE3_LIB = sqlite3/libsqlite3.a SQLITE3_FLAGS= -DHAVE_SQLITE3COLUMNTABLENAME=1 \ + -DHAVE_SQLITE3COLUMNDATABASENAME=1 \ + -DHAVE_SQLITE3COLUMNORIGINNAME=1 \ -DHAVE_SQLITE3LOADEXTENSION=1 \ -DHAVE_SQLITE3PREPAREV2=1 \ -DHAVE_SQLITE3VFS=1 \ -DHAVE_SQLITE3PROFILE=1 \ -DHAVE_SQLITE3CLOSEV2=1 \ - -DHAVE_SQLITE3STRNICMP=1 + -DHAVE_SQLITE3STRNICMP=1 \ + -DHAVE_SQLITE3TABLECOLUMNMETADATA=1 SQLITE3_A10N = sqlite3/sqlite3.c SQLITE3_A10N_FLAGS = \ -DWIN32=1 -DNDEBUG=1 -DNO_TCL -DTHREADSAFE=1 \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/Makefile.mingw64-cross new/sqliteodbc-0.9993/Makefile.mingw64-cross --- old/sqliteodbc-0.9992/Makefile.mingw64-cross 2013-09-03 15:33:15.000000000 +0200 +++ new/sqliteodbc-0.9993/Makefile.mingw64-cross 2015-09-23 10:08:04.000000000 +0200 @@ -43,12 +43,15 @@ SQLITE3_SRC = sqlite3/src SQLITE3_LIB = sqlite3/libsqlite3.a SQLITE3_FLAGS= -DHAVE_SQLITE3COLUMNTABLENAME=1 \ + -DHAVE_SQLITE3COLUMNDATABASENAME=1 \ + -DHAVE_SQLITE3COLUMNORIGINNAME=1 \ -DHAVE_SQLITE3LOADEXTENSION=1 \ -DHAVE_SQLITE3PREPAREV2=1 \ -DHAVE_SQLITE3VFS=1 \ -DHAVE_SQLITE3PROFILE=1 \ -DHAVE_SQLITE3CLOSEV2=1 \ - -DHAVE_SQLITE3STRNICMP=1 + -DHAVE_SQLITE3STRNICMP=1 \ + -DHAVE_SQLITE3TABLECOLUMNMETADATA=1 SQLITE3_A10N = sqlite3/sqlite3.c SQLITE3_A10N_FLAGS = \ -DWIN32=1 -DNDEBUG=1 -DNO_TCL -DTHREADSAFE=1 \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/README new/sqliteodbc-0.9993/README --- old/sqliteodbc-0.9992/README 2015-04-13 08:29:27.000000000 +0200 +++ new/sqliteodbc-0.9993/README 2016-01-11 11:00:42.000000000 +0100 @@ -352,6 +352,42 @@ must be used. +MacOSX notes (thanks Steve Palm) + + The driver requires that you have ODBC installed and set up on + your Mac. Some GUI tools are here: + + http://www.iodbc.org/dataspace/iodbc/wiki/iODBC/Downloads + http://www.odbcmanager.net + + The ODBC configuration files can be edited manually as on Linux. + The files are at: + + /Library/ODBC/odbc.ini + /Library/ODBC/odbcinst.ini + + Example for odbc.ini: + + [ODBC Data Sources] + Mail = SQLite3 Driver + + [Mail] + Driver = /usr/local/lib/libsqlite3odbc.dylib + Description = OSX Mail Database + database = /Users/n9yty/Library/Mail/V3/MailData/Envelope Index + + Example for odbcinst.ini + + [ODBC Drivers] + SQLite3 Driver = Installed + + [SQLite3 Driver] + Driver = /usr/local/lib/libsqlite3odbc.dylib + Setup = /usr/local/lib/libsqlite3odbc.dylib + + The iODBC driver manages provides the utility programs iodbctest + and iodbctestw (UNICODE) which can be run in Terminal to verify + the installed data sources. TODO: @@ -359,7 +395,7 @@ - improve documentation -2015-04-13 +2016-01-11 Christian Werner mailto:c...@ch-werner.de diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/VERSION new/sqliteodbc-0.9993/VERSION --- old/sqliteodbc-0.9992/VERSION 2015-04-12 16:10:40.000000000 +0200 +++ new/sqliteodbc-0.9993/VERSION 2016-01-11 10:58:29.000000000 +0100 @@ -1 +1 @@ -0.9992 +0.9993 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/blobtoxy.c new/sqliteodbc-0.9993/blobtoxy.c --- old/sqliteodbc-0.9992/blobtoxy.c 2014-12-29 10:53:59.000000000 +0100 +++ new/sqliteodbc-0.9993/blobtoxy.c 2016-01-05 18:49:02.000000000 +0100 @@ -4,9 +4,9 @@ * using SQLite 3.3.x virtual table API plus some useful * scalar and aggregate functions. * - * $Id: blobtoxy.c,v 1.24 2014/12/29 09:53:56 chw Exp chw $ + * $Id: blobtoxy.c,v 1.25 2016/01/05 17:48:52 chw Exp chw $ * - * Copyright (c) 2007-2014 Christian Werner <c...@ch-werner.de> + * Copyright (c) 2007-2016 Christian Werner <c...@ch-werner.de> * * See the file "license.terms" for information on usage * and redistribution of this file and for a diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/blobtoxy.rc new/sqliteodbc-0.9993/blobtoxy.rc --- old/sqliteodbc-0.9992/blobtoxy.rc 2014-03-28 10:27:10.000000000 +0100 +++ new/sqliteodbc-0.9993/blobtoxy.rc 2016-01-05 07:19:50.000000000 +0100 @@ -25,7 +25,7 @@ VALUE "FileDescription", "SQLite3 Extension BLOB to X/Y\0" VALUE "FileVersion", VERSION "\0" VALUE "InternalName", "BLOBTOXY\0" - VALUE "LegalCopyright", "Copyright � 2007-2014 <c...@ch-werner.de>\0" + VALUE "LegalCopyright", "Copyright � 2007-2016 <c...@ch-werner.de>\0" VALUE "LegalTrademarks", "\0" VALUE "OriginalFilename", "SQLITE3_MOD_BLOBTOXY.DLL\0" VALUE "PrivateBuild", "\0" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/configure new/sqliteodbc-0.9993/configure --- old/sqliteodbc-0.9992/configure 2015-01-12 11:54:38.000000000 +0100 +++ new/sqliteodbc-0.9993/configure 2015-09-18 10:46:02.000000000 +0200 @@ -822,6 +822,8 @@ SQLITE3_CLEARBINDINGS SQLITE3_PREPARE_V2 SQLITE3_OVERLOADFUNCTION +SQLITE3_COLUMNORIGINNAME +SQLITE3_COLUMNDATABASENAME SQLITE3_COLUMNTABLENAME SQLITE3_A10N_FLAGS SQLITE3_A10N_C @@ -3693,13 +3695,13 @@ else lt_cv_nm_interface="BSD nm" echo "int some_variable = 0;" > conftest.$ac_ext - (eval echo "\"\$as_me:3696: $ac_compile\"" >&5) + (eval echo "\"\$as_me:3698: $ac_compile\"" >&5) (eval "$ac_compile" 2>conftest.err) cat conftest.err >&5 - (eval echo "\"\$as_me:3699: $NM \\\"conftest.$ac_objext\\\"\"" >&5) + (eval echo "\"\$as_me:3701: $NM \\\"conftest.$ac_objext\\\"\"" >&5) (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) cat conftest.err >&5 - (eval echo "\"\$as_me:3702: output\"" >&5) + (eval echo "\"\$as_me:3704: output\"" >&5) cat conftest.out >&5 if $GREP 'External.*some_variable' conftest.out > /dev/null; then lt_cv_nm_interface="MS dumpbin" @@ -4905,7 +4907,7 @@ ;; *-*-irix6*) # Find out which ABI we are using. - echo '#line 4908 "configure"' > conftest.$ac_ext + echo '#line 4910 "configure"' > conftest.$ac_ext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -6762,11 +6764,11 @@ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:6765: $lt_compile\"" >&5) + (eval echo "\"\$as_me:6767: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:6769: \$? = $ac_status" >&5 + echo "$as_me:6771: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -7101,11 +7103,11 @@ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:7104: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7106: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:7108: \$? = $ac_status" >&5 + echo "$as_me:7110: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -7206,11 +7208,11 @@ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:7209: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7211: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:7213: \$? = $ac_status" >&5 + echo "$as_me:7215: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -7261,11 +7263,11 @@ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:7264: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7266: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:7268: \$? = $ac_status" >&5 + echo "$as_me:7270: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -10064,7 +10066,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 10067 "configure" +#line 10069 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -10160,7 +10162,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 10163 "configure" +#line 10165 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11099,6 +11101,8 @@ if test -n "$SQLITE3_A10N_C" ; then SQLITE3_LOADEXTENSION=1 SQLITE3_COLUMNTABLENAME=1 + SQLITE3_COLUMNDATABASENAME=1 + SQLITE3_COLUMNORIGINNAME=1 SQLITE3_OVERLOADFUNCTION=1 SQLITE3_PREPARE_V2=1 SQLITE3_CLEARBINDINGS=1 @@ -11334,6 +11338,148 @@ SQLITE3_COLUMNTABLENAME=0 fi + { $as_echo "$as_me:$LINENO: checking for sqlite3_column_database_name in -lsqlite3" >&5 +$as_echo_n "checking for sqlite3_column_database_name in -lsqlite3... " >&6; } +if test "${ac_cv_lib_sqlite3_sqlite3_column_database_name+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lsqlite3 $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char sqlite3_column_database_name (); +int +main () +{ +return sqlite3_column_database_name (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_lib_sqlite3_sqlite3_column_database_name=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_sqlite3_sqlite3_column_database_name=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_sqlite3_sqlite3_column_database_name" >&5 +$as_echo "$ac_cv_lib_sqlite3_sqlite3_column_database_name" >&6; } +if test "x$ac_cv_lib_sqlite3_sqlite3_column_database_name" = x""yes; then + SQLITE3_COLUMNDATABASENAME=1 +else + SQLITE3_COLUMNDATABASENAME=0 +fi + + { $as_echo "$as_me:$LINENO: checking for sqlite3_column_origin_name in -lsqlite3" >&5 +$as_echo_n "checking for sqlite3_column_origin_name in -lsqlite3... " >&6; } +if test "${ac_cv_lib_sqlite3_sqlite3_column_origin_name+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lsqlite3 $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char sqlite3_column_origin_name (); +int +main () +{ +return sqlite3_column_origin_name (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_lib_sqlite3_sqlite3_column_origin_name=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_sqlite3_sqlite3_column_origin_name=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_sqlite3_sqlite3_column_origin_name" >&5 +$as_echo "$ac_cv_lib_sqlite3_sqlite3_column_origin_name" >&6; } +if test "x$ac_cv_lib_sqlite3_sqlite3_column_origin_name" = x""yes; then + SQLITE3_COLUMNORIGINNAME=1 +else + SQLITE3_COLUMNORIGINNAME=0 +fi + { $as_echo "$as_me:$LINENO: checking for sqlite3_overload_function in -lsqlite3" >&5 $as_echo_n "checking for sqlite3_overload_function in -lsqlite3... " >&6; } if test "${ac_cv_lib_sqlite3_sqlite3_overload_function+set}" = set; then @@ -12238,6 +12384,8 @@ + + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/configure.in new/sqliteodbc-0.9993/configure.in --- old/sqliteodbc-0.9992/configure.in 2015-01-12 11:54:32.000000000 +0100 +++ new/sqliteodbc-0.9993/configure.in 2015-09-18 10:45:42.000000000 +0200 @@ -183,6 +183,8 @@ if test -n "$SQLITE3_A10N_C" ; then SQLITE3_LOADEXTENSION=1 SQLITE3_COLUMNTABLENAME=1 + SQLITE3_COLUMNDATABASENAME=1 + SQLITE3_COLUMNORIGINNAME=1 SQLITE3_OVERLOADFUNCTION=1 SQLITE3_PREPARE_V2=1 SQLITE3_CLEARBINDINGS=1 @@ -214,6 +216,12 @@ AC_CHECK_LIB(sqlite3,sqlite3_column_table_name, SQLITE3_COLUMNTABLENAME=1, SQLITE3_COLUMNTABLENAME=0) + AC_CHECK_LIB(sqlite3,sqlite3_column_database_name, + SQLITE3_COLUMNDATABASENAME=1, + SQLITE3_COLUMNDATABASENAME=0) + AC_CHECK_LIB(sqlite3,sqlite3_column_origin_name, + SQLITE3_COLUMNORIGINNAME=1, + SQLITE3_COLUMNORIGINNAME=0) AC_CHECK_LIB(sqlite3,sqlite3_overload_function, SQLITE3_OVERLOADFUNCTION=1, SQLITE3_OVERLOADFUNCTION=0) @@ -274,6 +282,8 @@ fi AC_SUBST(SQLITE3_COLUMNTABLENAME) +AC_SUBST(SQLITE3_COLUMNDATABASENAME) +AC_SUBST(SQLITE3_COLUMNORIGINNAME) AC_SUBST(SQLITE3_OVERLOADFUNCTION) AC_SUBST(SQLITE3_PREPARE_V2) AC_SUBST(SQLITE3_CLEARBINDINGS) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/debian/changelog new/sqliteodbc-0.9993/debian/changelog --- old/sqliteodbc-0.9992/debian/changelog 2015-04-13 08:32:42.000000000 +0200 +++ new/sqliteodbc-0.9993/debian/changelog 2016-01-11 10:59:00.000000000 +0100 @@ -1,6 +1,6 @@ -sqliteodbc (0.9992-1) unstable; urgency=low +sqliteodbc (0.9993-1) unstable; urgency=low * automatically recreated by configure - -- Christian Werner <c...@ch-werner.de> Mon, 13 Apr 2015 08:32:40 +0200 + -- Christian Werner <c...@ch-werner.de> Mon, 11 Jan 2016 10:58:58 +0100 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/inst.c new/sqliteodbc-0.9993/inst.c --- old/sqliteodbc-0.9992/inst.c 2014-12-29 10:53:01.000000000 +0100 +++ new/sqliteodbc-0.9993/inst.c 2016-01-05 18:49:01.000000000 +0100 @@ -2,9 +2,9 @@ * @file inst.c * SQLite ODBC Driver installer/uninstaller for WIN32 * - * $Id: inst.c,v 1.22 2014/12/29 09:52:55 chw Exp chw $ + * $Id: inst.c,v 1.23 2016/01/05 17:48:52 chw Exp chw $ * - * Copyright (c) 2001-2014 Christian Werner <c...@ch-werner.de> + * Copyright (c) 2001-2016 Christian Werner <c...@ch-werner.de> * * See the file "license.terms" for information on usage * and redistribution of this file and for a diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/mingw-cross-build.sh new/sqliteodbc-0.9993/mingw-cross-build.sh --- old/sqliteodbc-0.9992/mingw-cross-build.sh 2015-04-12 16:09:55.000000000 +0200 +++ new/sqliteodbc-0.9993/mingw-cross-build.sh 2016-01-11 10:47:09.000000000 +0100 @@ -25,8 +25,8 @@ set -e VER2=2.8.17 -VER3=3.8.9 -VER3X=3080900 +VER3=3.10.0 +VER3X=3100000 VERZ=1.2.7 TCCVER=0.9.26 @@ -89,6 +89,7 @@ $nov2 || test -r sqlite-${VER2}.tar.gz || exit 1 $nov2 || rm -f sqlite +$nov2 || rm -rf sqlite-${VER2} $nov2 || tar xzf sqlite-${VER2}.tar.gz $nov2 || ln -sf sqlite-${VER2} sqlite @@ -306,7 +307,7 @@ # use open file dialog when no database name given # need to link with -lcomdlg32 when enabled true || patch sqlite3/src/shell.c <<'EOD' ---- sqlite3.orig/src/shell.c 2006-06-06 14:32:21.000000000 +0200 +--- sqlite3.orig/src/shell.c 2006-06-06 14:32:21.000000000 +0200 +++ sqlite3/src/shell.c 2006-07-23 11:04:50.000000000 +0200 @@ -21,6 +21,10 @@ #include <ctype.h> @@ -375,6 +376,8 @@ -a "$VER3" != "3.8.3" -a "$VER3" != "3.8.4" -a "$VER3" != "3.8.4.1" \ -a "$VER3" != "3.8.4.2" -a "$VER3" != "3.8.5" -a "$VER3" != "3.8.6" \ -a "$VER3" != "3.8.7" -a "$VER3" != "3.8.8" -a "$VER3" != "3.8.9" \ + -a "$VER3" != "3.8.10" -a "$VER3" != "3.8.11" -a "$VER3" != "3.9.0" \ + -a "$VER3" != "3.9.1" -a "$VER3" != "3.9.2" -a "$VER3" != "3.10.0" \ && patch sqlite3/src/libshell.c <<'EOD' --- sqlite3.orig/src/libshell.c 2007-01-08 23:40:05.000000000 +0100 +++ sqlite3/src/libshell.c 2007-01-10 18:35:43.000000000 +0100 @@ -511,7 +514,9 @@ #else EOD -test "$VER3" = "3.8.9" \ +test "$VER3" = "3.8.9" -o "$VER3" = "3.8.10" -o "$VER3" = "3.8.11" \ + -o "$VER3" = "3.9.0" -o "$VER3" = "3.9.1" -o "$VER3" = "3.9.2" \ + -o "$VER3" = "3.10.0" \ && patch sqlite3/src/libshell.c <<'EOD' --- sqlite3.orig/src/libshell.c 2012-12-12 14:42:10.000000000 +0100 +++ sqlite3/src/libshell.c 2012-12-13 12:14:57.000000000 +0100 @@ -584,7 +589,8 @@ EOD # amalgamation: add libshell.c -test "$VER3" != "3.5.6" && test -r sqlite3/tool/mksqlite3c.tcl && patch -d sqlite3 -p1 <<'EOD' +test "$VER3" != "3.5.6" && test -r sqlite3/tool/mksqlite3c.tcl && \ + patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/tool/mksqlite3c.tcl 2007-04-02 14:20:10.000000000 +0200 +++ sqlite3/tool/mksqlite3c.tcl 2007-04-03 09:42:03.000000000 +0200 @@ -194,6 +194,7 @@ @@ -596,7 +602,8 @@ tokenize.c complete.c EOD -test "$VER3" = "3.5.6" && test -r sqlite3/tool/mksqlite3c.tcl && patch -d sqlite3 -p1 <<'EOD' +test "$VER3" = "3.5.6" && test -r sqlite3/tool/mksqlite3c.tcl && \ + patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/tool/mksqlite3c.tcl 2007-04-02 14:20:10.000000000 +0200 +++ sqlite3/tool/mksqlite3c.tcl 2007-04-03 09:42:03.000000000 +0200 @@ -200,6 +200,7 @@ @@ -627,6 +634,8 @@ -a "$VER3" != "3.8.3" -a "$VER3" != "3.8.4" -a "$VER3" != "3.8.4.1" \ -a "$VER3" != "3.8.4.2" -a "$VER3" != "3.8.5" -a "$VER3" != "3.8.6" \ -a "$VER3" != "3.8.7" -a "$VER3" != "3.8.8" -a "$VER3" != "3.8.9" \ + -a "$VER3" != "3.8.10" -a "$VER3" != "3.8.11" -a "$VER3" != "3.9.0" \ + -a "$VER3" != "3.9.1" -a "$VER3" != "3.9.2" -a "$VER3" != "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' diff -u sqlite3.orig/src/build.c sqlite3/src/build.c --- sqlite3.orig/src/build.c 2007-01-09 14:53:04.000000000 +0100 @@ -685,14 +694,16 @@ EOD # patch: re-enable NO_TCL in tclsqlite.c (3.3.15) -test "$VER3" != "3.8.8" -a "$VER3" != "3.8.9" \ +test "$VER3" != "3.8.8" -a "$VER3" != "3.8.9" -a "$VER3" != "3.8.10" \ + -a "$VER3" != "3.8.11" -a "$VER3" != "3.9.0" -a "$VER3" != "3.9.1" \ + -a "$VER3" != "3.9.2" -a "$VER3" != "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' diff -u sqlite3.orig/src/tclsqlite.c sqlite3/src/tclsqlite.c --- sqlite3.orig/src/tclsqlite.c 2007-04-06 17:02:14.000000000 +0200 +++ sqlite3/src/tclsqlite.c 2007-04-10 07:47:49.000000000 +0200 @@ -14,6 +14,7 @@ ** - ** $Id: mingw-cross-build.sh,v 1.95 2015/04/12 14:09:48 chw Exp chw $ + ** $Id: mingw-cross-build.sh,v 1.100 2016/01/11 09:47:03 chw Exp chw $ */ +#ifndef NO_TCL /* Omit this whole file if TCL is unavailable */ #include "tcl.h" @@ -706,7 +717,9 @@ +#endif /* !defined(NO_TCL) */ EOD -test "$VER3" = "3.8.8" -o "$VER3" = "3.8.9" \ +test "$VER3" = "3.8.8" -o "$VER3" = "3.8.9" -o "$VER3" = "3.8.10" \ + -o "$VER3" = "3.8.11" -o "$VER3" = "3.9.0" -o "$VER3" = "3.9.1" \ + -o "$VER3" = "3.9.2" -o "$VER3" = "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/src/tclsqlite.c 2015-01-16 14:47:26.000000000 +0100 +++ sqlite3/src/tclsqlite.c 2015-01-19 17:56:26.517386413 +0100 @@ -874,6 +887,8 @@ -a "$VER3" != "3.8.3" -a "$VER3" != "3.8.4" -a "$VER3" != "3.8.4.1" \ -a "$VER3" != "3.8.4.2" -a "$VER3" != "3.8.5" -a "$VER3" != "3.8.6" \ -a "$VER3" != "3.8.7" -a "$VER3" != "3.8.8" -a "$VER3" != "3.8.9" \ + -a "$VER3" != "3.8.10" -a "$VER3" != "3.8.11" -a "$VER3" != "3.9.0" \ + -a "$VER3" != "3.9.1" -a "$VER3" != "3.9.2" -a "$VER3" != "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/ext/fts3/fts3.c 2008-02-02 17:24:34.000000000 +0100 +++ sqlite3/ext/fts3/fts3.c 2008-03-16 11:29:02.000000000 +0100 @@ -966,7 +981,9 @@ -a "$VER3" != "3.8.2" -a "$VER3" != "3.8.3" -a "$VER3" != "3.8.4" \ -a "$VER3" != "3.8.4.1" -a "$VER3" != "3.8.4.2" -a "$VER3" != "3.8.5" \ -a "$VER3" != "3.8.6" -a "$VER3" != "3.8.7" -a "$VER3" != "3.8.8" \ - -a "$VER3" != "3.8.9" \ + -a "$VER3" != "3.8.9" -a "$VER3" != "3.8.10" -a "$VER3" != "3.8.11" \ + -a "$VER3" != "3.9.0" -a "$VER3" != "3.9.1" -a "$VER3" != "3.9.2" \ + -a "$VER3" != "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/ext/fts3/fts3_hash.c 2007-11-24 01:41:52.000000000 +0100 +++ sqlite3/ext/fts3/fts3_hash.c 2008-03-16 11:39:57.000000000 +0100 @@ -981,6 +998,7 @@ + #include "sqlite3.h" #include "fts3_hash.h" + EOD test "$VER3" = "3.6.21" && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/ext/fts3/fts3_write.c 2009-12-03 20:39:06.000000000 +0100 @@ -1272,7 +1290,7 @@ -o "$VER3" = "3.6.11" -o "$VER3" = "3.6.12" -o "$VER3" = "3.6.13" \ -o "$VER3" = "3.6.14" -o "$VER3" = "3.6.14.1" -o "$VER3" = "3.6.14.2" \ -o "$VER3" = "3.6.15" -o "$VER3" = "3.6.16" -o "$VER3" = "3.6.17" \ - -o "$VER3" = "3.6.18" -o "$VER3" = "3.6.19" -o "$VER3" = "3.6.20" && + -o "$VER3" = "3.6.18" -o "$VER3" = "3.6.19" -o "$VER3" = "3.6.20" && \ patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/ext/fts3/fts3_expr.c 2009-01-01 15:06:13.000000000 +0100 +++ sqlite3/ext/fts3/fts3_expr.c 2009-01-14 09:55:13.000000000 +0100 @@ -1309,6 +1327,8 @@ -a "$VER3" != "3.8.3" -a "$VER3" != "3.8.4" -a "$VER3" != "3.8.4.1" \ -a "$VER3" != "3.8.4.2" -a "$VER3" != "3.8.5" -a "$VER3" != "3.8.6" \ -a "$VER3" != "3.8.7" -a "$VER3" != "3.8.8" -a "$VER3" != "3.8.9" \ + -a "$VER3" != "3.8.10" -a "$VER3" != "3.8.11" -a "$VER3" != "3.9.0" \ + -a "$VER3" != "3.9.1" -a "$VER3" != "3.9.2" -a "$VER3" != "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/ext/rtree/rtree.c 2008-07-16 16:43:35.000000000 +0200 +++ sqlite3/ext/rtree/rtree.c 2008-07-17 08:59:53.000000000 +0200 @@ -1386,6 +1406,8 @@ -o "$VER3" = "3.8.3" -o "$VER3" = "3.8.4" -o "$VER3" = "3.8.4.1" \ -o "$VER3" = "3.8.4.2" -o "$VER3" = "3.8.5" -o "$VER3" = "3.8.6" \ -o "$VER3" = "3.8.7" -o "$VER3" = "3.8.8" -o "$VER3" = "3.8.9" \ + -o "$VER3" = "3.8.10" -o "$VER3" = "3.8.11" -o "$VER3" = "3.9.0" \ + -o "$VER3" = "3.9.1" -o "$VER3" = "3.9.2" -o "$VER3" = "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/ext/fts3/fts3_aux.c 2011-06-24 09:06:08.000000000 +0200 +++ sqlite3/ext/fts3/fts3_aux.c 2011-06-25 06:44:08.000000000 +0200 @@ -1435,7 +1457,9 @@ -o "$VER3" = "3.8.2" -o "$VER3" = "3.8.3" -o "$VER3" = "3.8.4" \ -o "$VER3" = "3.8.4.1" -o "$VER3" = "3.8.4.2" -o "$VER3" = "3.8.5" \ -o "$VER3" = "3.8.6" -o "$VER3" = "3.8.7" -o "$VER3" = "3.8.8" \ - -o "$VER3" = "3.8.9" \ + -o "$VER3" = "3.8.9" -o "$VER3" = "3.8.10" -o "$VER3" = "3.8.11" \ + -o "$VER3" = "3.9.0" -o "$VER3" = "3.9.1" -o "$VER3" = "3.9.2" \ + -o "$VER3" = "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/ext/fts3/fts3.c 2011-09-19 20:46:52.000000000 +0200 +++ sqlite3/ext/fts3/fts3.c 2011-09-20 09:47:40.000000000 +0200 @@ -1470,6 +1494,8 @@ -o "$VER3" = "3.8.3" -o "$VER3" = "3.8.4" -o "$VER3" = "3.8.4.1" \ -o "$VER3" = "3.8.4.2" -o "$VER3" = "3.8.5" -o "$VER3" = "3.8.6" \ -o "$VER3" = "3.8.7" -o "$VER3" = "3.8.8" -o "$VER3" = "3.8.9" \ + -o "$VER3" = "3.8.10" -o "$VER3" = "3.8.11" -o "$VER3" = "3.9.0" \ + -o "$VER3" = "3.9.1" -o "$VER3" = "3.9.2" -o "$VER3" = "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/ext/fts3/fts3_expr.c 2011-06-24 09:06:08.000000000 +0200 +++ sqlite3/ext/fts3/fts3_expr.c 2011-06-25 06:47:00.000000000 +0200 @@ -1625,6 +1651,8 @@ -o "$VER3" = "3.8.3" -o "$VER3" = "3.8.4" -o "$VER3" = "3.8.4.1" \ -o "$VER3" = "3.8.4.2" -o "$VER3" = "3.8.5" -o "$VER3" = "3.8.6" \ -o "$VER3" = "3.8.7" -o "$VER3" = "3.8.8" -o "$VER3" = "3.8.9" \ + -o "$VER3" = "3.8.10" -o "$VER3" = "3.8.11" -o "$VER3" = "3.9.0" \ + -o "$VER3" = "3.9.1" -o "$VER3" = "3.9.2" -o "$VER3" = "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/src/loadext.c 2013-09-16 06:56:48.000000000 +0200 +++ sqlite3/src/loadext.c 2013-09-16 06:58:14.000000000 +0200 @@ -1644,7 +1672,9 @@ test "$VER3" = "3.8.2" -o "$VER3" = "3.8.3" -o "$VER3" = "3.8.4" \ -o "$VER3" = "3.8.4.1" -o "$VER3" = "3.8.4.2" -o "$VER3" = "3.8.5" \ -o "$VER3" = "3.8.6" -o "$VER3" = "3.8.7" -o "$VER3" = "3.8.8" \ - -o "$VER3" = "3.8.9" \ + -o "$VER3" = "3.8.9" -o "$VER3" = "3.8.10" -o "$VER3" = "3.8.11" \ + -o "$VER3" = "3.9.0" -o "$VER3" = "3.9.1" -o "$VER3" = "3.9.2" \ + -o "$VER3" = "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/ext/fts3/fts3.c 2014-03-26 10:26:28.000000000 +0100 +++ sqlite3/ext/fts3/fts3.c 2014-03-26 16:54:39.000000000 +0100 @@ -1661,6 +1691,8 @@ # missing windows.h for DWORD, HANDLE in threads.c test "$VER3" = "3.8.7" -o "$VER3" = "3.8.8" -o "$VER3" = "3.8.9" \ + -o "$VER3" = "3.8.10" -o "$VER3" = "3.8.11" -o "$VER3" = "3.9.0" \ + -o "$VER3" = "3.9.1" -o "$VER3" = "3.9.2" -o "$VER3" = "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/src/threads.c 2014-10-17 13:38:27.000000000 +0200 +++ sqlite3/src/threads.c 2014-10-26 13:40:26.000000000 +0100 @@ -1674,6 +1706,29 @@ /* A running thread */ EOD +# tcl8.4 compatibility for mkfts5c.tcl +test "$VER3" = "3.9.0" -o "$VER3" = "3.9.1" -o "$VER3" = "3.9.2" \ + -o "$VER3" = "3.10.0" \ + && patch sqlite3/ext/fts5/tool/mkfts5c.tcl <<'EOD' +--- mkfts5c.tcl.orig 2015-10-14 14:53:26.000000000 +0200 ++++ mkfts5c.tcl 2015-10-15 08:19:25.000000000 +0200 +@@ -60,7 +60,8 @@ + + set L [split [readfile [file join $top manifest]]] + set date [lindex $L [expr [lsearch -exact $L D]+1]] +- set date [string range $date 0 [string last . $date]-1] ++ set dend [expr [string last . $date]-1] ++ set date [string range $date 0 $dend] + set date [string map {T { }} $date] + + return "fts5: $date $uuid" +EOD + +# tcl8.4 compatibility for some tools +test "$VER3" = "3.10.0" && \ + perl -pi -e 's/ rb\]/ r\]/g' sqlite3/tool/mkopcodec.tcl \ + sqlite3/tool/tostr.tcl sqlite3/tool/addopcodes.tcl + echo "====================" echo "Preparing TinyCC ..." echo "====================" @@ -1725,7 +1780,7 @@ ADD_CFLAGS="$ADD_CFLAGS -DSEEEXT=\\\"$SEEEXT\\\"" ADD_CFLAGS="$ADD_CFLAGS -DSQLITE_API=static -DWIN32=1 -DNDEBUG=1 -DNO_TCL" ADD_CFLAGS="$ADD_CFLAGS -DTHREADSAFE=1" - ADD_CFLAGS="$ADD_CFLAGS -DSQLITE_DLL=1 -DSQLITE_TRHEADSAFE=1" + ADD_CFLAGS="$ADD_CFLAGS -DSQLITE_DLL=1 -DSQLITE_THREADSAFE=1" ADD_CFLAGS="$ADD_CFLAGS -DSQLITE_OS_WIN=1 -DSQLITE_ASCII=1" ADD_CFLAGS="$ADD_CFLAGS -DSQLITE_SOUNDEX=1" ADD_CFLAGS="$ADD_CFLAGS -DSQLITE_ENABLE_COLUMN_METADATA=1" @@ -1736,7 +1791,7 @@ unset SQLITE3_EXE fi test "$VER3" = "3.8.6" -o "$VER3" = "3.8.7" -o "$VER3" = "3.8.8" \ - -o "$VER3" = "3.8.9" \ + -o "$VER3" = "3.8.9" -o "$VER3" = "3.8.10" \ && patch sqlite3/sqlite3.c <<'EOD' --- sqlite3.orig/sqlite3.c 2014-09-14 15:02:38.000000000 +0200 +++ sqlite3/sqlite3.c 2014-09-14 15:03:02.000000000 +0200 @@ -1750,6 +1805,21 @@ #ifndef access # define access(f,m) _access((f),(m)) EOD +test "$VER3" = "3.8.11" -o "$VER3" = "3.9.0" -o "$VER3" = "3.9.1" \ + -o "$VER3" = "3.9.2" -o "$VER3" = "3.10.0" \ + && patch sqlite3/sqlite3.c <<'EOD' +--- sqlite3.c.orig 2015-09-18 17:17:58.000000000 +0200 ++++ sqlite3.c 2015-09-18 17:50:01.000000000 +0200 +@@ -128353,7 +128353,7 @@ + + #if defined(_WIN32) || defined(WIN32) + # include <io.h> +-/* # include <fcntl.h> */ ++# include <fcntl.h> + # define isatty(h) _isatty(h) + # ifndef access + # define access(f,m) _access((f),(m)) +EOD if test -n "$SQLITE_DLLS" ; then make -C sqlite3 -f ../mf-sqlite3.mingw-cross sqlite3.dll fi diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/mingw64-cross-build.sh new/sqliteodbc-0.9993/mingw64-cross-build.sh --- old/sqliteodbc-0.9992/mingw64-cross-build.sh 2015-04-12 16:09:56.000000000 +0200 +++ new/sqliteodbc-0.9993/mingw64-cross-build.sh 2016-01-11 10:47:10.000000000 +0100 @@ -23,8 +23,8 @@ set -e VER2=2.8.17 -VER3=3.8.9 -VER3X=3080900 +VER3=3.10.0 +VER3X=3100000 VERZ=1.2.7 nov2=false @@ -78,6 +78,7 @@ $nov2 || test -r sqlite-${VER2}.tar.gz || exit 1 $nov2 || rm -f sqlite +$nov2 || rm -rf sqlite-${VER2} $nov2 || tar xzf sqlite-${VER2}.tar.gz $nov2 || ln -sf sqlite-${VER2} sqlite @@ -364,6 +365,8 @@ -a "$VER3" != "3.8.3" -a "$VER3" != "3.8.4" -a "$VER3" != "3.8.4.1" \ -a "$VER3" != "3.8.4.2" -a "$VER3" != "3.8.5" -a "$VER3" != "3.8.6" \ -a "$VER3" != "3.8.7" -a "$VER3" != "3.8.8" -a "$VER3" != "3.8.9" \ + -a "$VER3" != "3.8.10" -a "$VER3" != "3.8.11" -a "$VER3" != "3.9.0" \ + -a "$VER3" != "3.9.1" -a "$VER3" != "3.9.2" -a "$VER3" != "3.10.0" \ && patch sqlite3/src/libshell.c <<'EOD' --- sqlite3.orig/src/libshell.c 2007-01-08 23:40:05.000000000 +0100 +++ sqlite3/src/libshell.c 2007-01-10 18:35:43.000000000 +0100 @@ -500,7 +503,9 @@ #else EOD -test "$VER3" = "3.8.9" \ +test "$VER3" = "3.8.9" -o "$VER3" = "3.8.10" -o "$VER3" = "3.8.11" \ + -o "$VER3" = "3.9.0" -o "$VER3" = "3.9.1" -o "$VER3" = "3.9.2" \ + -o "$VER3" = "3.10.0" \ && patch sqlite3/src/libshell.c <<'EOD' --- sqlite3.orig/src/libshell.c 2012-12-12 14:42:10.000000000 +0100 +++ sqlite3/src/libshell.c 2012-12-13 12:14:57.000000000 +0100 @@ -573,7 +578,8 @@ EOD # amalgamation: add libshell.c -test "$VER3" != "3.5.6" && test -r sqlite3/tool/mksqlite3c.tcl && patch -d sqlite3 -p1 <<'EOD' +test "$VER3" != "3.5.6" && test -r sqlite3/tool/mksqlite3c.tcl && \ + patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/tool/mksqlite3c.tcl 2007-04-02 14:20:10.000000000 +0200 +++ sqlite3/tool/mksqlite3c.tcl 2007-04-03 09:42:03.000000000 +0200 @@ -194,6 +194,7 @@ @@ -585,7 +591,8 @@ tokenize.c complete.c EOD -test "$VER3" = "3.5.6" && test -r sqlite3/tool/mksqlite3c.tcl && patch -d sqlite3 -p1 <<'EOD' +test "$VER3" = "3.5.6" && test -r sqlite3/tool/mksqlite3c.tcl && \ + patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/tool/mksqlite3c.tcl 2007-04-02 14:20:10.000000000 +0200 +++ sqlite3/tool/mksqlite3c.tcl 2007-04-03 09:42:03.000000000 +0200 @@ -200,6 +200,7 @@ @@ -616,6 +623,8 @@ -a "$VER3" != "3.8.3" -a "$VER3" != "3.8.4" -a "$VER3" != "3.8.4.1" \ -a "$VER3" != "3.8.4.2" -a "$VER3" != "3.8.5" -a "$VER3" != "3.8.6" \ -a "$VER3" != "3.8.7" -a "$VER3" != "3.8.8" -a "$VER3" != "3.8.9" \ + -a "$VER3" != "3.8.10" -a "$VER3" != "3.8.11" -a "$VER3" != "3.9.0" \ + -a "$VER3" != "3.9.1" -a "$VER3" != "3.9.2" -a "$VER3" != "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' diff -u sqlite3.orig/src/build.c sqlite3/src/build.c --- sqlite3.orig/src/build.c 2007-01-09 14:53:04.000000000 +0100 @@ -674,14 +683,16 @@ EOD # patch: re-enable NO_TCL in tclsqlite.c (3.3.15) -test "$VER3" != "3.8.8" -a "$VER3" != "3.8.9" \ +test "$VER3" != "3.8.8" -a "$VER3" != "3.8.9" -a "$VER3" != "3.8.10" \ + -a "$VER3" != "3.8.11" -a "$VER3" != "3.9.0" -a "$VER3" != "3.9.1" \ + -a "$VER3" != "3.9.2" -a "$VER3" != "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' diff -u sqlite3.orig/src/tclsqlite.c sqlite3/src/tclsqlite.c --- sqlite3.orig/src/tclsqlite.c 2007-04-06 17:02:14.000000000 +0200 +++ sqlite3/src/tclsqlite.c 2007-04-10 07:47:49.000000000 +0200 @@ -14,6 +14,7 @@ ** - ** $Id: mingw64-cross-build.sh,v 1.55 2015/04/12 14:09:48 chw Exp chw $ + ** $Id: mingw64-cross-build.sh,v 1.60 2016/01/11 09:47:03 chw Exp chw $ */ +#ifndef NO_TCL /* Omit this whole file if TCL is unavailable */ #include "tcl.h" @@ -695,7 +706,9 @@ +#endif /* !defined(NO_TCL) */ EOD -test "$VER3" = "3.8.8" -o "$VER3" = "3.8.9" \ +test "$VER3" = "3.8.8" -o "$VER3" = "3.8.9" -o "$VER3" = "3.8.10" \ + -o "$VER3" = "3.8.11" -o "$VER3" = "3.9.0" -o "$VER3" = "3.9.1" \ + -o "$VER3" = "3.9.2" -o "$VER3" = "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/src/tclsqlite.c 2015-01-16 14:47:26.000000000 +0100 +++ sqlite3/src/tclsqlite.c 2015-01-19 17:56:26.517386413 +0100 @@ -863,6 +876,8 @@ -a "$VER3" != "3.8.3" -a "$VER3" != "3.8.4" -a "$VER3" != "3.8.4.1" \ -a "$VER3" != "3.8.4.2" -a "$VER3" != "3.8.5" -a "$VER3" != "3.8.6" \ -a "$VER3" != "3.8.7" -a "$VER3" != "3.8.8" -a "$VER3" != "3.8.9" \ + -a "$VER3" != "3.8.10" -a "$VER3" != "3.8.11" -a "$VER3" != "3.9.0" \ + -a "$VER3" != "3.9.1" -a "$VER3" != "3.9.2" -a "$VER3" != "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/ext/fts3/fts3.c 2008-02-02 17:24:34.000000000 +0100 +++ sqlite3/ext/fts3/fts3.c 2008-03-16 11:29:02.000000000 +0100 @@ -943,8 +958,7 @@ test "$VER3" = "3.6.21" -o "$VER3" = "3.6.22" -o "$VER3" = "3.6.23" \ -o "$VER3" = "3.6.23.1" -o "$VER3" = "3.7.0" -o "$VER3" = "3.7.0.1" \ -o "$VER3" = "3.7.1" -o "$VER3" = "3.7.2" -o "$VER3" = "3.7.3" \ - -o "$VER3" = "3.7.4" -o "$VER3" = "3.7.5" -o "$VER3" = "3.7.5" \ - -o "$VER3" = "3.7.6" \ + -o "$VER3" = "3.7.4" -o "$VER3" = "3.7.5" -o "$VER3" = "3.7.6" \ -o "$VER3" = "3.7.6.1" -o "$VER3" = "3.7.6.2" -o "$VER3" = "3.7.6.3" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/ext/fts3/fts3.c 2008-02-02 17:24:34.000000000 +0100 @@ -1009,7 +1023,9 @@ -a "$VER3" != "3.8.2" -a "$VER3" != "3.8.3" -a "$VER3" != "3.8.4" \ -a "$VER3" != "3.8.4.1" -a "$VER3" != "3.8.4.2" -a "$VER3" != "3.8.5" \ -a "$VER3" != "3.8.6" -a "$VER3" != "3.8.7" -a "$VER3" != "3.8.8" \ - -a "$VER3" != "3.8.9" \ + -a "$VER3" != "3.8.9" -a "$VER3" != "3.8.10" -a "$VER3" != "3.8.11" \ + -a "$VER3" != "3.9.0" -a "$VER3" != "3.9.1" -a "$VER3" != "3.9.2" \ + -a "$VER3" != "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/ext/fts3/fts3_hash.c 2007-11-24 01:41:52.000000000 +0100 +++ sqlite3/ext/fts3/fts3_hash.c 2008-03-16 11:39:57.000000000 +0100 @@ -1083,8 +1099,8 @@ #endif EOD -test "$VER3" = "3.7.6"\ - -o "$VER3" = "3.7.6.1" -o "$VER3" = "3.7.6.2" -o "$VER3" = "3.7.6.3" \ +test "$VER3" = "3.7.6" -o "$VER3" = "3.7.6.1" -o "$VER3" = "3.7.6.2" \ + -o "$VER3" = "3.7.6.3" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/ext/fts3/fts3_write.c 2011-04-12 11:44:56.000000000 +0200 +++ sqlite3/ext/fts3/fts3_write.c 2011-04-13 08:00:51.000000000 +0200 @@ -1353,6 +1369,8 @@ -a "$VER3" != "3.8.3" -a "$VER3" != "3.8.4" -a "$VER3" != "3.8.4.1" \ -a "$VER3" != "3.8.4.2" -a "$VER3" != "3.8.5" -a "$VER3" != "3.8.6" \ -a "$VER3" != "3.8.7" -a "$VER3" != "3.8.8" -a "$VER3" != "3.8.9" \ + -a "$VER3" != "3.8.10" -a "$VER3" != "3.8.11" -a "$VER3" != "3.9.0" \ + -a "$VER3" != "3.9.1" -a "$VER3" != "3.9.2" -a "$VER3" != "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/ext/rtree/rtree.c 2008-07-16 16:43:35.000000000 +0200 +++ sqlite3/ext/rtree/rtree.c 2008-07-17 08:59:53.000000000 +0200 @@ -1430,6 +1448,8 @@ -o "$VER3" = "3.8.3" -o "$VER3" = "3.8.4" -o "$VER3" = "3.8.4.1" \ -o "$VER3" = "3.8.4.2" -o "$VER3" = "3.8.5" -o "$VER3" = "3.8.6" \ -o "$VER3" = "3.8.7" -o "$VER3" = "3.8.8" -o "$VER3" = "3.8.9" \ + -o "$VER3" = "3.8.10" -o "$VER3" = "3.8.11" -o "$VER3" = "3.9.0" \ + -o "$VER3" = "3.9.1" -o "$VER3" = "3.9.2" -o "$VER3" = "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/ext/fts3/fts3_aux.c 2011-06-24 09:06:08.000000000 +0200 +++ sqlite3/ext/fts3/fts3_aux.c 2011-06-25 06:44:08.000000000 +0200 @@ -1479,7 +1499,9 @@ -o "$VER3" = "3.8.2" -o "$VER3" = "3.8.3" -o "$VER3" = "3.8.4" \ -o "$VER3" = "3.8.4.1" -o "$VER3" = "3.8.4.2" -o "$VER3" = "3.8.5" \ -o "$VER3" = "3.8.6" -o "$VER3" = "3.8.7" -o "$VER3" = "3.8.8" \ - -o "$VER3" = "3.8.9" \ + -o "$VER3" = "3.8.9" -o "$VER3" = "3.8.10" -o "$VER3" = "3.8.11" \ + -o "$VER3" = "3.9.0" -o "$VER3" = "3.9.1" -o "$VER3" = "3.9.2" \ + -o "$VER3" = "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/ext/fts3/fts3.c 2011-09-19 20:46:52.000000000 +0200 +++ sqlite3/ext/fts3/fts3.c 2011-09-20 09:47:40.000000000 +0200 @@ -1514,6 +1536,8 @@ -o "$VER3" = "3.8.3" -o "$VER3" = "3.8.4" -o "$VER3" = "3.8.4.1" \ -o "$VER3" = "3.8.4.2" -o "$VER3" = "3.8.5" -o "$VER3" = "3.8.6" \ -o "$VER3" = "3.8.7" -o "$VER3" = "3.8.8" -o "$VER3" = "3.8.9" \ + -o "$VER3" = "3.8.10" -o "$VER3" = "3.8.11" -o "$VER3" = "3.9.0" \ + -o "$VER3" = "3.9.1" -o "$VER3" = "3.9.2" -o "$VER3" = "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/ext/fts3/fts3_expr.c 2011-06-24 09:06:08.000000000 +0200 +++ sqlite3/ext/fts3/fts3_expr.c 2011-06-25 06:47:00.000000000 +0200 @@ -1635,8 +1659,8 @@ -o "$VER3" = "3.7.13" -o "$VER3" = "3.7.14" -o "$VER3" = "3.7.14.1" \ -o "$VER3" = "3.7.15" -o "$VER3" = "3.7.15.1" -o "$VER3" = "3.7.15.2" \ && patch -d sqlite3 -p1 <<'EOD' ---- sqlite3.orig/src/sqlite3ext.h 2012-03-22 20:13:33.000000000 +0100 -+++ sqlite3/src/sqlite3ext.h 2012-03-22 20:13:57.000000000 +0100 +--- sqlite3.orig/src/sqlite3ext.h 2012-03-22 20:13:33.000000000 +0100 ++++ sqlite3/src/sqlite3ext.h 2012-03-22 20:13:57.000000000 +0100 @@ -236,6 +236,7 @@ int (*blob_reopen)(sqlite3_blob*,sqlite3_int64); int (*vtab_config)(sqlite3*,int op,...); @@ -1653,8 +1677,8 @@ #endif /* SQLITE_CORE */ #define SQLITE_EXTENSION_INIT1 const sqlite3_api_routines *sqlite3_api = 0; ---- sqlite3.orig/src/loadext.c 2012-03-20 15:20:13.000000000 +0100 -+++ sqlite3/src/loadext.c 2012-03-22 20:16:24.000000000 +0100 +--- sqlite3.orig/src/loadext.c 2012-03-20 15:20:13.000000000 +0100 ++++ sqlite3/src/loadext.c 2012-03-22 20:16:24.000000000 +0100 @@ -378,6 +378,7 @@ sqlite3_blob_reopen, sqlite3_vtab_config, @@ -1669,6 +1693,8 @@ -o "$VER3" = "3.8.3" -o "$VER3" = "3.8.4" -o "$VER3" = "3.8.4.1" \ -o "$VER3" = "3.8.4.2" -o "$VER3" = "3.8.5" -o "$VER3" = "3.8.6" \ -o "$VER3" = "3.8.7" -o "$VER3" = "3.8.8" -o "$VER3" = "3.8.9" \ + -o "$VER3" = "3.8.10" -o "$VER3" = "3.8.11" -o "$VER3" = "3.9.0" \ + -o "$VER3" = "3.9.1" -o "$VER3" = "3.9.2" -o "$VER3" = "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/src/loadext.c 2013-09-16 06:56:48.000000000 +0200 +++ sqlite3/src/loadext.c 2013-09-16 06:58:14.000000000 +0200 @@ -1688,7 +1714,9 @@ test "$VER3" = "3.8.2" -o "$VER3" = "3.8.3" -o "$VER3" = "3.8.4" \ -o "$VER3" = "3.8.4.1" -o "$VER3" = "3.8.4.2" -o "$VER3" = "3.8.5" \ -o "$VER3" = "3.8.6" -o "$VER3" = "3.8.7" -o "$VER3" = "3.8.8" \ - -o "$VER3" = "3.8.9" \ + -o "$VER3" = "3.8.9" -o "$VER3" = "3.8.10" -o "$VER3" = "3.8.11" \ + -o "$VER3" = "3.9.0" -o "$VER3" = "3.9.1" -o "$VER3" = "3.9.2" \ + -o "$VER3" = "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/ext/fts3/fts3.c 2014-03-26 10:26:28.000000000 +0100 +++ sqlite3/ext/fts3/fts3.c 2014-03-26 16:54:39.000000000 +0100 @@ -1705,6 +1733,8 @@ # missing windows.h for DWORD, HANDLE in threads.c test "$VER3" = "3.8.7" -o "$VER3" = "3.8.8" -o "$VER3" = "3.8.9" \ + -o "$VER3" = "3.8.10" -o "$VER3" = "3.8.11" -o "$VER3" = "3.9.0" \ + -o "$VER3" = "3.9.1" -o "$VER3" = "3.9.2" -o "$VER3" = "3.10.0" \ && patch -d sqlite3 -p1 <<'EOD' --- sqlite3.orig/src/threads.c 2014-10-17 13:38:27.000000000 +0200 +++ sqlite3/src/threads.c 2014-10-26 13:40:26.000000000 +0100 @@ -1718,6 +1748,29 @@ /* A running thread */ EOD +# tcl8.4 compatibility for mkfts5c.tcl +test "$VER3" = "3.9.0" -o "$VER3" = "3.9.1" -o "$VER3" = "3.9.2" \ + -o "$VER3" = "3.10.0" \ + && patch sqlite3/ext/fts5/tool/mkfts5c.tcl <<'EOD' +--- mkfts5c.tcl.orig 2015-10-14 14:53:26.000000000 +0200 ++++ mkfts5c.tcl 2015-10-15 08:19:25.000000000 +0200 +@@ -60,7 +60,8 @@ + + set L [split [readfile [file join $top manifest]]] + set date [lindex $L [expr [lsearch -exact $L D]+1]] +- set date [string range $date 0 [string last . $date]-1] ++ set dend [expr [string last . $date]-1] ++ set date [string range $date 0 $dend] + set date [string map {T { }} $date] + + return "fts5: $date $uuid" +EOD + +# tcl8.4 compatibility for some tools +test "$VER3" = "3.10.0" && \ + perl -pi -e 's/ rb\]/ r\]/g' sqlite3/tool/mkopcodec.tcl \ + sqlite3/tool/tostr.tcl sqlite3/tool/addopcodes.tcl + echo "========================" echo "Cleanup before build ..." echo "========================" @@ -1778,7 +1831,7 @@ unset SQLITE3_EXE fi test "$VER3" = "3.8.6" -o "$VER3" = "3.8.7" -o "$VER3" = "3.8.8" \ - -o "$VER3" = "3.8.9" \ + -o "$VER3" = "3.8.9" -o "$VER3" = "3.8.10" \ && patch sqlite3/sqlite3.c <<'EOD' --- sqlite3.orig/sqlite3.c 2014-09-14 15:02:38.000000000 +0200 +++ sqlite3/sqlite3.c 2014-09-14 15:03:02.000000000 +0200 @@ -1792,6 +1845,21 @@ #ifndef access # define access(f,m) _access((f),(m)) EOD +test "$VER3" = "3.8.11" -o "$VER3" = "3.9.0" -o "$VER3" = "3.9.1" \ + -o "$VER3" = "3.9.2" -o "$VER3" = "3.10.0" \ + && patch sqlite3/sqlite3.c <<'EOD' +--- sqlite3.c.orig 2015-09-18 17:17:58.000000000 +0200 ++++ sqlite3.c 2015-09-18 17:50:01.000000000 +0200 +@@ -128353,7 +128353,7 @@ + + #if defined(_WIN32) || defined(WIN32) + # include <io.h> +-/* # include <fcntl.h> */ ++# include <fcntl.h> + # define isatty(h) _isatty(h) + # ifndef access + # define access(f,m) _access((f),(m)) +EOD if test -n "$SQLITE_DLLS" ; then make -C sqlite3 -f ../mf-sqlite3.mingw64-cross sqlite3.dll fi diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/sqlite3odbc.c new/sqliteodbc-0.9993/sqlite3odbc.c --- old/sqliteodbc-0.9992/sqlite3odbc.c 2015-04-13 08:32:03.000000000 +0200 +++ new/sqliteodbc-0.9993/sqlite3odbc.c 2016-01-05 18:51:24.000000000 +0100 @@ -2,9 +2,9 @@ * @file sqlite3odbc.c * SQLite3 ODBC Driver main module. * - * $Id: sqlite3odbc.c,v 1.169 2015/04/13 06:31:52 chw Exp chw $ + * $Id: sqlite3odbc.c,v 1.172 2016/01/05 17:51:07 chw Exp chw $ * - * Copyright (c) 2004-2015 Christian Werner <c...@ch-werner.de> + * Copyright (c) 2004-2016 Christian Werner <c...@ch-werner.de> * * See the file "license.terms" for information on usage * and redistribution of this file and for a @@ -237,6 +237,18 @@ #define verinfo(maj, min, lev) ((maj) << 16 | (min) << 8 | (lev)) +/* Column meta data from SQLite support */ +#undef FULL_METADATA +#if defined(HAVE_SQLITE3TABLECOLUMNMETADATA) && (HAVE_SQLITE3TABLECOLUMNMETADATA) +#if defined(HAVE_SQLITE3COLUMNDATABASENAME) && (HAVE_SQLITE3COLUMNDATABASENAME) +#if defined(HAVE_SQLITE3COLUMNTABLENAME) && (HAVE_SQLITE3COLUMNTABLENAME) +#if defined(HAVE_SQLITE3COLUMNORIGINNAME) && (HAVE_SQLITE3COLUMNORIGINNAME) +#define FULL_METADATA 1 +#endif +#endif +#endif +#endif + /* Column types for static string column descriptions (SQLTables etc.) */ #if defined(WINTERFACE) && !defined(_WIN32) && !defined(_WIN64) @@ -1261,7 +1273,10 @@ void *lib; int (*gpps)(); - lib = dlopen("libodbcinst.so.1", RTLD_LAZY); + lib = dlopen("libodbcinst.so.2", RTLD_LAZY); + if (!lib) { + lib = dlopen("libodbcinst.so.1", RTLD_LAZY); + } if (!lib) { lib = dlopen("libodbcinst.so", RTLD_LAZY); } @@ -1903,11 +1918,13 @@ int len = strlen(str); if (len > 1) { - if ((str[0] == '\'' && str[len - 1] == '\'') || - (str[0] == '"' && str[len - 1] == '"') || - (str[0] == '[' && str[len - 1] == ']')) { - str[len - 1] = '\0'; - strcpy(str, str + 1); + int end = len - 1; + + if ((str[0] == '\'' && str[end] == '\'') || + (str[0] == '"' && str[end] == '"') || + (str[0] == '[' && str[end] == ']')) { + memmove(str, str + 1, end - 1); + str[end - 1] = '\0'; } } } @@ -1944,7 +1961,7 @@ p = str; while ((q = strchr(p, '\\')) != NULL) { if (q[1] == '\\' || q[1] == '_' || q[1] == '%') { - strcpy(q, q + 1); + memmove(q, q + 1, strlen(q)); } p = q + 1; } @@ -2791,7 +2808,7 @@ fixupdyncols(STMT *s, DBC *d) { int i, k; -#if !defined(HAVE_SQLITE3TABLECOLUMNMETADATA) || !(HAVE_SQLITE3TABLECOLUMNMETADATA) +#ifndef FULL_METADATA int pk, nn, t, r, nrows, ncols; char **rowp, *flagp, flags[128]; #endif @@ -2843,7 +2860,7 @@ s->dyncols[i].type = SQL_LONGVARBINARY; } } -#if !defined(HAVE_SQLITE3TABLECOLUMNMETADATA) || !(HAVE_SQLITE3TABLECOLUMNMETADATA) +#ifndef FULL_METADATA if (s->dcols > array_size(flags)) { flagp = xmalloc(sizeof (flags[0]) * s->dcols); if (flagp == NULL) { @@ -4222,7 +4239,7 @@ return typename; } -#if defined(HAVE_SQLITE3TABLECOLUMNMETADATA) && (HAVE_SQLITE3TABLECOLUMNMETADATA) +#ifdef FULL_METADATA /** * Add meta data for column @@ -4236,7 +4253,7 @@ s3stmt_addmeta(sqlite3_stmt *s3stmt, int col, DBC *d, COL *ci) { int nn = 0, pk = 0, ai = 0; - const char *dn, *tn, *cn, *dummy[4]; + const char *dn = NULL, *tn = NULL, *cn = NULL, *dummy[4]; dn = sqlite3_column_database_name(s3stmt, col); tn = sqlite3_column_table_name(s3stmt, col); @@ -4396,13 +4413,12 @@ dyncols[i].scale = 0; dyncols[i].prec = 0; dyncols[i].nosign = 1; -#if defined(HAVE_SQLITE3TABLECOLUMNMETADATA) && (HAVE_SQLITE3TABLECOLUMNMETADATA) - s3stmt_addmeta(s->s3stmt, i, d, &dyncols[i]); -#else dyncols[i].autoinc = SQL_FALSE; dyncols[i].notnull = SQL_NULLABLE; dyncols[i].ispk = -1; dyncols[i].isrowid = -1; +#ifdef FULL_METADATA + s3stmt_addmeta(s->s3stmt, i, d, &dyncols[i]); #endif dyncols[i].typename = xstrdup(typename); } @@ -7981,7 +7997,7 @@ static SQLRETURN drvendtran(SQLSMALLINT type, SQLHANDLE handle, SQLSMALLINT comptype) { - DBC *d; + DBC *d = NULL; int fail = 0; SQLRETURN ret; #if defined(_WIN32) || defined(_WIN64) @@ -15878,7 +15894,7 @@ sqlite3_free(sql); } if (ret == SQLITE_OK) { - int colid, typec, npk = 0; + int colid, typec, npk = 0, npkint = 0; namec = findcol(rowp, ncols, "name"); uniquec = findcol(rowp, ncols, "pk"); @@ -15888,14 +15904,16 @@ goto noipk; } for (i = 1; i <= nrows; i++) { - if (*rowp[i * ncols + uniquec] != '0' && - strlen(rowp[i * ncols + typec]) == 7 && - strncasecmp(rowp[i * ncols + typec], "integer", 7) - == 0) { + if (*rowp[i * ncols + uniquec] != '0') { npk++; + if (strlen(rowp[i * ncols + typec]) == 7 && + strncasecmp(rowp[i * ncols + typec], "integer", 7) + == 0) { + npkint++; + } } } - if (npk == 1) { + if (npkint == 1 && npk == npkint) { addipk = 1; } } @@ -18291,13 +18309,12 @@ dyncols[i].scale = 0; dyncols[i].prec = 0; dyncols[i].nosign = 1; -#if defined(HAVE_SQLITE3TABLECOLUMNMETADATA) && (HAVE_SQLITE3TABLECOLUMNMETADATA) - s3stmt_addmeta(s3stmt, i, d, &dyncols[i]); -#else dyncols[i].autoinc = SQL_FALSE; dyncols[i].notnull = SQL_NULLABLE; dyncols[i].ispk = -1; dyncols[i].isrowid = -1; +#ifdef FULL_METADATA + s3stmt_addmeta(s3stmt, i, d, &dyncols[i]); #endif dyncols[i].typename = xstrdup(typename); } @@ -18830,7 +18847,7 @@ #define MAXPATHLEN (259+1) /* Max path length */ #define MAXKEYLEN (15+1) /* Max keyword length */ #define MAXDESC (255+1) /* Max description length */ -#define MAXDSNAME (32+1) /* Max data source name length */ +#define MAXDSNAME (255+1) /* Max data source name length */ #define MAXTONAME (32+1) /* Max timeout length */ #define MAXDBNAME MAXPATHLEN diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/sqlite3odbc.h new/sqliteodbc-0.9993/sqlite3odbc.h --- old/sqliteodbc-0.9992/sqlite3odbc.h 2015-04-13 08:32:03.000000000 +0200 +++ new/sqliteodbc-0.9993/sqlite3odbc.h 2016-01-05 18:48:58.000000000 +0100 @@ -15,9 +15,9 @@ * @file sqlite3odbc.h * Header file for SQLite3 ODBC driver. * - * $Id: sqlite3odbc.h,v 1.46 2015/04/13 06:31:52 chw Exp chw $ + * $Id: sqlite3odbc.h,v 1.47 2016/01/05 17:48:52 chw Exp chw $ * - * Copyright (c) 2004-2015 Christian Werner <c...@ch-werner.de> + * Copyright (c) 2004-2016 Christian Werner <c...@ch-werner.de> * * See the file "license.terms" for information on usage * and redistribution of this file and for a diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/sqlite3odbc.rc new/sqliteodbc-0.9993/sqlite3odbc.rc --- old/sqliteodbc-0.9992/sqlite3odbc.rc 2014-03-26 09:22:06.000000000 +0100 +++ new/sqliteodbc-0.9993/sqlite3odbc.rc 2016-01-05 07:21:01.000000000 +0100 @@ -120,7 +120,7 @@ VALUE "FileDescription", "SQLite3 ODBC Driver\0" VALUE "FileVersion", VERSION "\0" VALUE "InternalName", "SQLITE3ODBC\0" - VALUE "LegalCopyright", "Copyright � 2004-2014 <c...@ch-werner.de>\0" + VALUE "LegalCopyright", "Copyright � 2004-2016 <c...@ch-werner.de>\0" VALUE "LegalTrademarks", "\0" VALUE "OriginalFilename", "SQLITE3ODBC.DLL\0" VALUE "PrivateBuild", "\0" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/sqlite4odbc.c new/sqliteodbc-0.9993/sqlite4odbc.c --- old/sqliteodbc-0.9992/sqlite4odbc.c 2015-04-13 08:32:05.000000000 +0200 +++ new/sqliteodbc-0.9993/sqlite4odbc.c 2016-01-05 18:51:25.000000000 +0100 @@ -2,9 +2,9 @@ * @file sqlite4odbc.c * SQLite4 ODBC Driver main module. * - * $Id: sqlite4odbc.c,v 1.15 2015/04/13 06:31:52 chw Exp chw $ + * $Id: sqlite4odbc.c,v 1.18 2016/01/05 17:51:07 chw Exp chw $ * - * Copyright (c) 2014-2015 Christian Werner <c...@ch-werner.de> + * Copyright (c) 2014-2016 Christian Werner <c...@ch-werner.de> * * See the file "license.terms" for information on usage * and redistribution of this file and for a @@ -1246,7 +1246,10 @@ void *lib; int (*gpps)(); - lib = dlopen("libodbcinst.so.1", RTLD_LAZY); + lib = dlopen("libodbcinst.so.2", RTLD_LAZY); + if (!lib) { + lib = dlopen("libodbcinst.so.1", RTLD_LAZY); + } if (!lib) { lib = dlopen("libodbcinst.so", RTLD_LAZY); } @@ -1978,11 +1981,13 @@ int len = strlen(str); if (len > 1) { - if ((str[0] == '\'' && str[len - 1] == '\'') || - (str[0] == '"' && str[len - 1] == '"') || - (str[0] == '[' && str[len - 1] == ']')) { - str[len - 1] = '\0'; - strcpy(str, str + 1); + int end = len - 1; + + if ((str[0] == '\'' && str[end] == '\'') || + (str[0] == '"' && str[end] == '"') || + (str[0] == '[' && str[end] == ']')) { + memmove(str, str + 1, end - 1); + str[end - 1] = '\0'; } } } @@ -2019,7 +2024,7 @@ p = str; while ((q = strchr(p, '\\')) != NULL) { if (q[1] == '\\' || q[1] == '_' || q[1] == '%') { - strcpy(q, q + 1); + memmove(q, q + 1, strlen(q)); } p = q + 1; } @@ -7550,7 +7555,7 @@ static SQLRETURN drvendtran(SQLSMALLINT type, SQLHANDLE handle, SQLSMALLINT comptype) { - DBC *d; + DBC *d = NULL; int fail = 0; SQLRETURN ret; #if defined(_WIN32) || defined(_WIN64) @@ -11293,7 +11298,7 @@ } #if defined(_WIN32) || defined(_WIN64) d->owner = 0; - LeaveCrititcalSection(&d->cs); + LeaveCriticalSection(&d->cs); DeleteCriticalSection(&d->cs); #endif xfree(d); @@ -15249,7 +15254,7 @@ sqlite4_free(0, sql); } if (ret == SQLITE4_OK) { - int colid, typec, npk = 0; + int colid, typec, npk = 0, npkint = 0; namec = findcol(rowp, ncols, "name"); uniquec = findcol(rowp, ncols, "pk"); @@ -15259,14 +15264,16 @@ goto noipk; } for (i = 1; i <= nrows; i++) { - if (*rowp[i * ncols + uniquec] != '0' && - strlen(rowp[i * ncols + typec]) == 7 && - strncasecmp(rowp[i * ncols + typec], "integer", 7) - == 0) { + if (*rowp[i * ncols + uniquec] != '0') { npk++; + if (strlen(rowp[i * ncols + typec]) == 7 && + strncasecmp(rowp[i * ncols + typec], "integer", 7) + == 0) { + npkint++; + } } } - if (npk == 1) { + if (npkint == 1 && npk == nkpint) { addipk = 1; } } @@ -18147,7 +18154,7 @@ #define MAXPATHLEN (259+1) /* Max path length */ #define MAXKEYLEN (15+1) /* Max keyword length */ #define MAXDESC (255+1) /* Max description length */ -#define MAXDSNAME (32+1) /* Max data source name length */ +#define MAXDSNAME (255+1) /* Max data source name length */ #define MAXTONAME (32+1) /* Max timeout length */ #define MAXDBNAME MAXPATHLEN diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/sqlite4odbc.h new/sqliteodbc-0.9993/sqlite4odbc.h --- old/sqliteodbc-0.9992/sqlite4odbc.h 2015-04-13 08:32:06.000000000 +0200 +++ new/sqliteodbc-0.9993/sqlite4odbc.h 2016-01-05 18:48:59.000000000 +0100 @@ -15,9 +15,9 @@ * @file sqlite4odbc.h * Header file for SQLite4 ODBC driver. * - * $Id: sqlite4odbc.h,v 1.5 2015/04/13 06:31:52 chw Exp chw $ + * $Id: sqlite4odbc.h,v 1.6 2016/01/05 17:48:52 chw Exp chw $ * - * Copyright (c) 2013-2015 Christian Werner <c...@ch-werner.de> + * Copyright (c) 2013-2016 Christian Werner <c...@ch-werner.de> * * See the file "license.terms" for information on usage * and redistribution of this file and for a diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/sqlite4odbc.rc new/sqliteodbc-0.9993/sqlite4odbc.rc --- old/sqliteodbc-0.9992/sqlite4odbc.rc 2014-03-26 09:22:58.000000000 +0100 +++ new/sqliteodbc-0.9993/sqlite4odbc.rc 2016-01-05 07:21:07.000000000 +0100 @@ -116,7 +116,7 @@ VALUE "FileDescription", "SQLite4 ODBC Driver\0" VALUE "FileVersion", VERSION "\0" VALUE "InternalName", "SQLITE4ODBC\0" - VALUE "LegalCopyright", "Copyright � 2013-2014 <c...@ch-werner.de>\0" + VALUE "LegalCopyright", "Copyright � 2013-2016 <c...@ch-werner.de>\0" VALUE "LegalTrademarks", "\0" VALUE "OriginalFilename", "SQLITE4ODBC.DLL\0" VALUE "PrivateBuild", "\0" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/sqliteodbc.c new/sqliteodbc-0.9993/sqliteodbc.c --- old/sqliteodbc-0.9992/sqliteodbc.c 2015-04-13 08:32:04.000000000 +0200 +++ new/sqliteodbc-0.9993/sqliteodbc.c 2016-01-05 18:51:25.000000000 +0100 @@ -2,9 +2,9 @@ * @file sqliteodbc.c * SQLite ODBC Driver main module. * - * $Id: sqliteodbc.c,v 1.216 2015/04/13 06:31:52 chw Exp chw $ + * $Id: sqliteodbc.c,v 1.219 2016/01/05 17:51:07 chw Exp chw $ * - * Copyright (c) 2001-2015 Christian Werner <c...@ch-werner.de> + * Copyright (c) 2001-2016 Christian Werner <c...@ch-werner.de> * OS/2 Port Copyright (c) 2004 Lorne R. Sunley <lsun...@mb.sympatico.ca> * * See the file "license.terms" for information on usage @@ -741,7 +741,10 @@ void *lib; int (*gpps)(); - lib = dlopen("libodbcinst.so.1", RTLD_LAZY); + lib = dlopen("libodbcinst.so.2", RTLD_LAZY); + if (!lib) { + lib = dlopen("libodbcinst.so.1", RTLD_LAZY); + } if (!lib) { lib = dlopen("libodbcinst.so", RTLD_LAZY); } @@ -1044,11 +1047,13 @@ int len = strlen(str); if (len > 1) { - if ((str[0] == '\'' && str[len - 1] == '\'') || - (str[0] == '"' && str[len - 1] == '"') || - (str[0] == '[' && str[len - 1] == ']')) { - str[len - 1] = '\0'; - strcpy(str, str + 1); + int end = len - 1; + + if ((str[0] == '\'' && str[end] == '\'') || + (str[0] == '"' && str[end] == '"') || + (str[0] == '[' && str[end] == ']')) { + memmove(str, str + 1, end - 1); + str[end - 1] = '\0'; } } } @@ -1085,7 +1090,7 @@ p = str; while ((q = strchr(p, '\\')) != NULL) { if (q[1] == '\\' || q[1] == '_' || q[1] == '%') { - strcpy(q, q + 1); + memmove(q, q + 1, strlen(q)); } p = q + 1; } @@ -6245,7 +6250,7 @@ static SQLRETURN drvendtran(SQLSMALLINT type, SQLHANDLE handle, SQLSMALLINT comptype) { - DBC *d; + DBC *d = NULL; int fail = 0; SQLRETURN ret; #if defined(_WIN32) || defined(_WIN64) @@ -12387,7 +12392,7 @@ * Try integer primary key (autoincrement) first */ if (itype == SQL_INDEX_UNIQUE || itype == SQL_INDEX_ALL) { - int colid, typec, npk = 0; + int colid, typec, npk = 0, npkint = 0; rowp = 0; ret = sqlite_get_table_printf(d->sqlite, @@ -12404,14 +12409,16 @@ goto noipk; } for (i = 1; i <= nrows; i++) { - if (*rowp[i * ncols + uniquec] != '0' && - strlen(rowp[i * ncols + typec]) == 7 && - strncasecmp(rowp[i * ncols + typec], "integer", 7) - == 0) { + if (*rowp[i * ncols + uniquec] != '0') { npk++; + if (strlen(rowp[i * ncols + typec]) == 7 && + strncasecmp(rowp[i * ncols + typec], "integer", 7) + == 0) { + npkint++; + } } } - if (npk == 1) { + if (npkint == 1 && npk == npkint) { addipk = 1; } noipk: @@ -15037,7 +15044,7 @@ #define MAXPATHLEN (259+1) /* Max path length */ #define MAXKEYLEN (15+1) /* Max keyword length */ #define MAXDESC (255+1) /* Max description length */ -#define MAXDSNAME (32+1) /* Max data source name length */ +#define MAXDSNAME (255+1) /* Max data source name length */ #define MAXTONAME (32+1) /* Max timeout length */ #define MAXDBNAME MAXPATHLEN diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/sqliteodbc.h new/sqliteodbc-0.9993/sqliteodbc.h --- old/sqliteodbc-0.9992/sqliteodbc.h 2015-04-13 08:32:04.000000000 +0200 +++ new/sqliteodbc-0.9993/sqliteodbc.h 2016-01-05 18:49:00.000000000 +0100 @@ -15,9 +15,9 @@ * @file sqliteodbc.h * Header file for SQLite ODBC driver. * - * $Id: sqliteodbc.h,v 1.62 2015/04/13 06:31:52 chw Exp chw $ + * $Id: sqliteodbc.h,v 1.63 2016/01/05 17:48:52 chw Exp chw $ * - * Copyright (c) 2001-2015 Christian Werner <c...@ch-werner.de> + * Copyright (c) 2001-2016 Christian Werner <c...@ch-werner.de> * * See the file "license.terms" for information on usage * and redistribution of this file and for a diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/sqliteodbc.rc new/sqliteodbc-0.9993/sqliteodbc.rc --- old/sqliteodbc-0.9992/sqliteodbc.rc 2014-03-26 09:22:17.000000000 +0100 +++ new/sqliteodbc-0.9993/sqliteodbc.rc 2016-01-05 07:21:17.000000000 +0100 @@ -102,7 +102,7 @@ #endif VALUE "FileVersion", VERSION "\0" VALUE "InternalName", "SQLITEODBC\0" - VALUE "LegalCopyright", "Copyright � 2001-2014 <c...@ch-werner.de>\0" + VALUE "LegalCopyright", "Copyright � 2001-2016 <c...@ch-werner.de>\0" VALUE "LegalTrademarks", "\0" #ifdef SQLITE_UTF8 VALUE "OriginalFilename", "SQLITEODBCU.DLL\0" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sqliteodbc-0.9992/sqliteodbc.spec new/sqliteodbc-0.9993/sqliteodbc.spec --- old/sqliteodbc-0.9992/sqliteodbc.spec 2015-04-13 08:32:42.000000000 +0200 +++ new/sqliteodbc-0.9993/sqliteodbc.spec 2016-01-11 10:59:00.000000000 +0100 @@ -1,5 +1,5 @@ %define name sqliteodbc -%define version 0.9992 +%define version 0.9993 %define release 1 Name: %{name} @@ -102,5 +102,5 @@ %{_libdir}/*.so* %changelog -* Mon Apr 13 2015 ... +* Mon Jan 11 2016 ... - automatically recreated by configure ...