commit 3f4e62bc91a342d09e3a6b5020bfaa439910e6c8b78a18dce91d53096ab262ea Author: Martin Pluskal Date: Thu Mar 23 12:15:46 2017 +0000 Accepting request 482195 from home:adamm:branches:server:database Initial package of MariaDB Connector/C This package is required for other connectors, like MariaDB Connector/ODBC OBS-URL: https://build.opensuse.org/request/show/482195 OBS-URL: https://build.opensuse.org/package/show/server:database/mariadb-connector-c?expand=0&rev=1 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -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 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/absolute_path_fix.patch b/absolute_path_fix.patch new file mode 100644 index 0000000..32e0298 --- /dev/null +++ b/absolute_path_fix.patch @@ -0,0 +1,41 @@ +Author: Adam Majer +Date: Fri Mar 3 15:59:09 CET 2017 +Summary: Remove pure ugliness with paths + +Index: mariadb-connector-c-2.3.2-src/mariadb_config/mariadb_config.c.in +=================================================================== +--- mariadb-connector-c-2.3.2-src.orig/mariadb_config/mariadb_config.c.in ++++ mariadb-connector-c-2.3.2-src/mariadb_config/mariadb_config.c.in +@@ -3,12 +3,12 @@ + #include + #include + +-#define INCLUDE "-I@PREFIX_INSTALL_DIR@/@INCLUDE_INSTALL_DIR@/@SUFFIX_INSTALL_DIR@ -I@PREFIX_INSTALL_DIR@/@INCLUDE_INSTALL_DIR@/@SUFFIX_INSTALL_DIR@/mysql" +-#define LIBS "-L@PREFIX_INSTALL_DIR@/@LIB_INSTALL_DIR@/@SUFFIX_INSTALL_DIR@ -lmariadb" \ ++#define INCLUDE "-I@INCLUDE_INSTALL_DIR@ -I@INCLUDE_INSTALL_DIR@/mariadb" ++#define LIBS "-L@LIB_INSTALL_DIR@/mariadb -lmariadb" \ + "@extra_dynamic_LDFLAGS@" + #define CFLAGS INCLUDE " @CMAKE_C_FLAGS@" + #define VERSION "@MYSQL_CLIENT_VERSION@" +-#define PLUGIN_DIR "@PREFIX_INSTALL_DIR@/@SUFFIX_INSTALL_DIR@/@PLUGIN_INSTALL_DIR@" ++#define PLUGIN_DIR "@PLUGIN_INSTALL_DIR@" + #define SOCKET "@MYSQL_UNIX_ADDR@" + #define PORT "@MYSQL_PORT@" + +Index: mariadb-connector-c-2.3.2-src/libmariadb/CMakeLists.txt +=================================================================== +--- mariadb-connector-c-2.3.2-src.orig/libmariadb/CMakeLists.txt ++++ mariadb-connector-c-2.3.2-src/libmariadb/CMakeLists.txt +@@ -430,9 +430,9 @@ ENDIF() + + INSTALL(TARGETS + libmariadb mariadbclient +- RUNTIME DESTINATION "${LIB_INSTALL_DIR}/${SUFFIX_INSTALL_DIR}" +- LIBRARY DESTINATION "${LIB_INSTALL_DIR}/${SUFFIX_INSTALL_DIR}" +- ARCHIVE DESTINATION "${LIB_INSTALL_DIR}/${SUFFIX_INSTALL_DIR}") ++ RUNTIME DESTINATION "${LIB_INSTALL_DIR}" ++ LIBRARY DESTINATION "${LIB_INSTALL_DIR}" ++ ARCHIVE DESTINATION "${LIB_INSTALL_DIR}") + + INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/include/ + DESTINATION ${INCLUDE_INSTALL_DIR}/${SUFFIX_INSTALL_DIR}) diff --git a/bigendian_type_fixes.patch b/bigendian_type_fixes.patch new file mode 100644 index 0000000..abc9335 --- /dev/null +++ b/bigendian_type_fixes.patch @@ -0,0 +1,25 @@ +Author: Adam Majer +Date: Fri Mar 3 14:57:53 CET 2017 +Summary: Fix build failure on Big Endien machines + +include/my_global.h:930:31: warning: dereferencing 'void *' pointer [enabled by default] + *((T)+2)=(char) ((uchar *) &A)[1];\ + ^ +libmariadb/my_stmt_codec.c:361:7: note: in expansion of macro 'float4store' + float4store(r_param->buffer, fval); + ^ +libmariadb/my_stmt_codec.c:361:7: error: invalid use of void expression + +Index: mariadb-connector-c-2.3.2-src/libmariadb/my_stmt_codec.c +=================================================================== +--- mariadb-connector-c-2.3.2-src.orig/libmariadb/my_stmt_codec.c ++++ mariadb-connector-c-2.3.2-src/libmariadb/my_stmt_codec.c +@@ -358,7 +358,7 @@ static void convert_from_long(MYSQL_BIND + { + float fval; + fval= is_unsigned ? (float)(ulonglong)(val) : (float)val; +- float4store(r_param->buffer, fval); ++ float4store((uchar *)r_param->buffer, fval); + *r_param->error= is_unsigned ? (ulonglong)fval != (ulonglong)val : (longlong)fval != val; + r_param->buffer_length= 4; + } diff --git a/mariadb-connector-c-2.3.1_unresolved_symbols.patch b/mariadb-connector-c-2.3.1_unresolved_symbols.patch new file mode 100644 index 0000000..34fa82b --- /dev/null +++ b/mariadb-connector-c-2.3.1_unresolved_symbols.patch @@ -0,0 +1,12 @@ +Index: mariadb-connector-c-2.3.1/plugins/auth/CMakeLists.txt +=================================================================== +--- mariadb-connector-c-2.3.1.orig/plugins/auth/CMakeLists.txt ++++ mariadb-connector-c-2.3.1/plugins/auth/CMakeLists.txt +@@ -11,6 +11,7 @@ IF(WIN32) + SET(DIALOG_SOURCES ${DIALOG_SOURCES} ${CMAKE_SOURCE_DIR}/plugins/plugin.def) + ENDIF() + ADD_LIBRARY(dialog SHARED ${dialog_RC} ${DIALOG_SOURCES}) ++TARGET_LINK_LIBRARIES(dialog dl) + SET_TARGET_PROPERTIES(dialog PROPERTIES PREFIX "") + SIGN_TARGET(dialog) + diff --git a/mariadb-connector-c-2.3.2-src.tar.gz b/mariadb-connector-c-2.3.2-src.tar.gz new file mode 100644 index 0000000..c8c4247 --- /dev/null +++ b/mariadb-connector-c-2.3.2-src.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4063c8655dc37608d4eade981e25b76f67f5d36e8426dc7f20d59e48ebba628a +size 538172 diff --git a/mariadb-connector-c-2.3.2-src.tar.gz.asc b/mariadb-connector-c-2.3.2-src.tar.gz.asc new file mode 100644 index 0000000..1f813f0 --- /dev/null +++ b/mariadb-connector-c-2.3.2-src.tar.gz.asc @@ -0,0 +1,11 @@ +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2 + +iQEcBAABCAAGBQJYfrGoAAoJEM4aPdXjyU9J1U0H/0U+qBNVoVTSXh++rWofQ2Mq +aC0qtyRe2eZ9ybuW2qRntDgix8tv8xY9edjMPI8huZqEKKyNCa+KkC2z5vdduRo9 +KpWqzAGuTGrHfiSFFx8uYa7DJMz++rApNsPVclCV5l/KqYpDHnjP1nvjBDAkksj9 +570DhN+lfW4jPb6YU8cZ21k1k6oJTi/tXaxletrXeu8erab2Srf17LbNCXV4fMid +u+LfDfqCJ0XsUobEDnxMYpNGOhv8ZEqQh6mdIbND4alqS8ty5vcvWAJtRXaMjhaA +nOscbaWlWnuy0e0lZXCHd7hZFdSpQNGYfIOJ1uizjhXKYUZo9vE4lNqIE4sWbF4= +=ZhvH +-----END PGP SIGNATURE----- diff --git a/mariadb-connector-c.changes b/mariadb-connector-c.changes new file mode 100644 index 0000000..96ed210 --- /dev/null +++ b/mariadb-connector-c.changes @@ -0,0 +1,34 @@ +------------------------------------------------------------------- +Thu Mar 23 10:56:02 UTC 2017 - adam.majer@suse.de + +- Update to version 2.3.2 + * Plugin API interface change: Changed the interface of + authentication plugins, allowing plugins from C/C 3.0 + (like GSSAPI/Kerberos plugin) + * CONC-205: Any field going after a TEXT field in the selecion + list is fetched incorrectly (prepared statements) + * CONC-198: Can't use more than one statement per connection + * CONC-223: Add client support for missing collations + * MDEV-10894: big endian conversion + * fixed packet_length in dialog plugin + * fixed include of my_stmt.h + * fixed wrong behavior of read_timeout + * fixed timeout for non-blocking operations + * fixed output for plugindir in mariadb_config + * removed extra check for non binary result types in fetch_bin + (prepared statements) +- mariadb.keyring: add MariaDB Enterprise signing key +- bigendian_type_fixes.patch: fix build failure on Big endien +- absolute_path_fix.patch: + * remove ugly paths in mariadb_config + * list correct include paths +- private_library.patch: shared library with exported private + symbols in place of a static library +- mariadb-connector-c-2.3.1_unresolved_symbols.patch: add missing + library to link requirements. + +------------------------------------------------------------------- +Mon Aug 22 14:57:06 UTC 2016 - mrueckert@suse.de + +- initial package + diff --git a/mariadb-connector-c.spec b/mariadb-connector-c.spec new file mode 100644 index 0000000..2084bc3 --- /dev/null +++ b/mariadb-connector-c.spec @@ -0,0 +1,142 @@ +# +# spec file for package mariadb-connector-c +# +# Copyright (c) 2016 SUSE LINUX Products GmbH, Nuernberg, Germany. +# +# 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 http://bugs.opensuse.org/ +# + +%bcond_with sqlite3 +%define sover 2 +%define libname libmariadb + +Name: mariadb-connector-c +Version: 2.3.2 +Release: 0 +License: LGPL-2.1+ +Summary: MariaDB Connector/C +Url: https://github.com/MariaDB/mariadb-connector-c +Group: Development/Libraries/C and C++ +Source: https://downloads.mariadb.com/Connectors/c/connector-c-2.3.2/%{name}-%{version}-src.tar.gz +Source1: https://downloads.mariadb.com/Connectors/c/connector-c-2.3.2/%{name}-%{version}-src.tar.gz.asc +# Imported from keyserver based on keyid @ https://mariadb.com/kb/en/mariadb-enterprise/mariadb-enterprise-installation-guide/ +Source2: mariadb.keyring +Patch1: mariadb-connector-c-2.3.1_unresolved_symbols.patch +Patch2: bigendian_type_fixes.patch +Patch3: absolute_path_fix.patch +Patch4: private_library.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-build +BuildRequires: cmake +BuildRequires: curl-devel +BuildRequires: pkgconfig(gnutls) +BuildRequires: pkgconfig(krb5) +BuildRequires: pkgconfig(krb5-gssapi) +BuildRequires: pkgconfig(openssl) +BuildRequires: pkgconfig(zlib) +%if %{with sqlite3} +BuildRequires: sqlite3-devel +%endif + +%description +MariaDB Connector/C is used to connect applications developed in C/C++ to MariaDB and MySQL databases. + +%package -n %{libname}%{sover} +Group: Development/Libraries/C and C++ +Summary: MariaDB Connector/C + +%description -n %{libname}%{sover} +MariaDB Connector/C is used to connect applications developed in C/C++ to MariaDB and MySQL databases. + +This package holds the runtime components. + +%package -n %{libname}_plugins +Group: Development/Libraries/C and C++ +Summary: MariaDB Connector/C + +%description -n %{libname}_plugins +MariaDB Connector/C is used to connect applications developed in C/C++ to MariaDB and MySQL databases. + +This package holds MariaDB library plugins. + +%package -n %{libname}private +Group: Development/Libraries/C and C++ +Summary: MariaDB Connector/C + +%description -n %{libname}private +MariaDB Connector/C is used to connect applications developed in C/C++ to MariaDB and MySQL databases. + +This package holds the runtime components with private API. + +%package -n %{libname}-devel +Group: Development/Libraries/C and C++ +Requires: %{libname}%{sover} = %{version} +Requires: pkgconfig(openssl) +# +Summary: Development files for MariaDB Connector/C +%description -n %{libname}-devel +MariaDB Connector/C is used to connect applications developed in C/C++ to MariaDB and MySQL databases. + +This package holds the development files. + +%prep +%setup -q -n %{name}-%{version}-src +%patch1 -p1 +%patch2 -p1 +%patch3 -p1 +%patch4 -p1 + +%build +%cmake \ + %if %{with sqlite3} + -DWITH_SQLITE:BOOL=ON \ + %endif + -DWITH_EXTERNAL_ZLIB:BOOL=ON \ + -DPLUGIN_INSTALL_DIR:STRING=%{_libdir}/mariadb/plugin/ +make %{?_smp_mflags} + +%install +%cmake_install + +rm %{buildroot}%{_includedir}/mariadb/CMakeLists.txt \ + %{buildroot}%{_includedir}/mariadb/*.am + +rm %{buildroot}%{_libdir}/mariadb/*.a +rm %{buildroot}%{_libdir}/*.a + +%files -n %{libname}%{sover} +%defattr(-,root,root) +%{_libdir}/libmariadb.so.%{sover} + +%files -n %{libname}_plugins +%dir %{_libdir}/mariadb/ +%dir %{_libdir}/mariadb/plugin/ +%{_libdir}/mariadb/plugin/dialog.so +%{_libdir}/mariadb/plugin/mysql_clear_password.so + +%files -n %{libname}private +%{_libdir}/libmariadbprivate.so + +%files -n %{libname}-devel +%defattr(-,root,root) +%{_bindir}/mariadb_config +%{_includedir}/mariadb/ +%{_libdir}/libmariadb.so +%{_libdir}/mariadb/libmysqlclient.so +%{_libdir}/mariadb/libmysqlclient_r.so + +%post -n %{libname}%{sover} -p /sbin/ldconfig +%post -n %{libname}private -p /sbin/ldconfig +%postun -n %{libname}%{sover} -p /sbin/ldconfig +%postun -n %{libname}private -p /sbin/ldconfig + +%changelog + diff --git a/mariadb.keyring b/mariadb.keyring new file mode 100644 index 0000000..301f49a --- /dev/null +++ b/mariadb.keyring @@ -0,0 +1,43 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v2 + +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 +Tmu3wSPRFsnHsQksxFhCqGYdUKyfRsobs/Ns +=ovQp +-----END PGP PUBLIC KEY BLOCK----- diff --git a/private_library.patch b/private_library.patch new file mode 100644 index 0000000..cfefab9 --- /dev/null +++ b/private_library.patch @@ -0,0 +1,107 @@ +Author: Adam Majer +Date: Thu Mar 23 11:54:11 CET 2017 +Summary: Build private symbols library + +Some of the private symbols have very generic names and are required +by other connectors, like the ODBC connector. Instead of using +static linking, create a private shared library that simply +exports all symbols. With the exception of exported symbols, it is +identical to the regular library. + +Index: mariadb-connector-c-2.3.2-src/libmariadb/CMakeLists.txt +=================================================================== +--- mariadb-connector-c-2.3.2-src.orig/libmariadb/CMakeLists.txt ++++ mariadb-connector-c-2.3.2-src/libmariadb/CMakeLists.txt +@@ -397,13 +397,22 @@ IF(UNIX) + ENDIF() + SIGN_TARGET(libmariadb) + ++ADD_LIBRARY(libmariadbprivate SHARED ${libmariadb_RC} $ ${EMPTY_FILE} ${EXPORT_LINK}) ++TARGET_LINK_LIBRARIES(libmariadbprivate ${SYSTEM_LIBS}) ++IF(UNIX) ++ SET_TARGET_PROPERTIES(libmariadbprivate PROPERTIES COMPILE_FLAGS "${CMAKE_SHARED_LIBRARY_C_FLAGS}") ++ENDIF() ++ + IF(CMAKE_SYSTEM_NAME MATCHES "Linux") + TARGET_LINK_LIBRARIES (libmariadb "-Wl,--no-undefined") + TARGET_LINK_LIBRARIES (libmariadb "-Wl,--version-script=${EXPORT_FILE}") + TARGET_LINK_LIBRARIES (mariadbclient "-Wl,--no-undefined") + TARGET_LINK_LIBRARIES (mariadbclient "-Wl,--version-script=${EXPORT_FILE}") ++ TARGET_LINK_LIBRARIES (libmariadbprivate "-Wl,--no-undefined") + ENDIF() + ++SET_TARGET_PROPERTIES(libmariadbprivate PROPERTIES PREFIX "") ++ + SET_TARGET_PROPERTIES(libmariadb PROPERTIES PREFIX "") + + SET_TARGET_PROPERTIES(libmariadb PROPERTIES VERSION +@@ -429,7 +438,7 @@ ENDIF() + + + INSTALL(TARGETS +- libmariadb mariadbclient ++ libmariadb libmariadbprivate mariadbclient + RUNTIME DESTINATION "${LIB_INSTALL_DIR}" + LIBRARY DESTINATION "${LIB_INSTALL_DIR}" + ARCHIVE DESTINATION "${LIB_INSTALL_DIR}") +Index: mariadb-connector-c-2.3.2-src/mariadb_config/mariadb_config.c.in +=================================================================== +--- mariadb-connector-c-2.3.2-src.orig/mariadb_config/mariadb_config.c.in ++++ mariadb-connector-c-2.3.2-src/mariadb_config/mariadb_config.c.in +@@ -6,6 +6,8 @@ + #define INCLUDE "-I@INCLUDE_INSTALL_DIR@ -I@INCLUDE_INSTALL_DIR@/mariadb" + #define LIBS "-L@LIB_INSTALL_DIR@/mariadb -lmariadb" \ + "@extra_dynamic_LDFLAGS@" ++#define PRIVATE_LIBS "-L@LIB_INSTALL_DIR@/mariadb -lmariadbprivate" \ ++ "@extra_dynamic_LDFLAGS@" + #define CFLAGS INCLUDE " @CMAKE_C_FLAGS@" + #define VERSION "@MYSQL_CLIENT_VERSION@" + #define PLUGIN_DIR "@PLUGIN_INSTALL_DIR@" +@@ -22,6 +24,7 @@ static struct option long_options[]= + {"version", no_argument, 0, 'f'}, + {"socket", no_argument, 0, 'g'}, + {"port", no_argument, 0, 'h'}, ++ {"privatelibs", no_argument, 0, 'i'}, + {"plugindir", no_argument, 0, 'p'}, + {NULL, 0, 0, 0} + }; +@@ -36,6 +39,7 @@ static char *values[]= + VERSION, + SOCKET, + PORT, ++ PRIVATE_LIBS, + PLUGIN_DIR + }; + +@@ -92,6 +96,9 @@ int main(int argc, char **argv) + case 'h': + puts(PORT); + break; ++ case 'i': ++ puts(PRIVATE_LIBS); ++ break; + case 'p': + puts(PLUGIN_DIR); + break; +Index: mariadb-connector-c-2.3.2-src/plugins/auth/CMakeLists.txt +=================================================================== +--- mariadb-connector-c-2.3.2-src.orig/plugins/auth/CMakeLists.txt ++++ mariadb-connector-c-2.3.2-src/plugins/auth/CMakeLists.txt +@@ -10,7 +10,7 @@ IF(WIN32) + "FILE_DESCRIPTION:Authentication plugin") + SET(DIALOG_SOURCES ${DIALOG_SOURCES} ${CMAKE_SOURCE_DIR}/plugins/plugin.def) + ENDIF() +-ADD_LIBRARY(dialog SHARED ${dialog_RC} ${DIALOG_SOURCES}) ++ADD_LIBRARY(dialog MODULE ${dialog_RC} ${DIALOG_SOURCES}) + TARGET_LINK_LIBRARIES(dialog dl) + SET_TARGET_PROPERTIES(dialog PROPERTIES PREFIX "") + SIGN_TARGET(dialog) +@@ -32,7 +32,7 @@ IF(WIN32) + "FILE_DESCRIPTION:Authentication plugin") + SET(CTEXT_SOURCES ${CTEXT_SOURCES} ${CMAKE_SOURCE_DIR}/plugins/plugin.def) + ENDIF() +-ADD_LIBRARY(mysql_clear_password SHARED ${mysql_clear_password_RC} ${CTEXT_SOURCES}) ++ADD_LIBRARY(mysql_clear_password MODULE ${mysql_clear_password_RC} ${CTEXT_SOURCES}) + SET_TARGET_PROPERTIES(mysql_clear_password PROPERTIES PREFIX "") + SIGN_TARGET(mysql_clear_password) +