From 1bf39cc5390c0e42d4b8262e85d34fc47d0fc708 Mon Sep 17 00:00:00 2001 From: Norvald H. Ryeng Date: Feb 05 2018 13:17:30 +0000 Subject: Update to MySQL Connector/ODBC 5.3.10 --- diff --git a/.gitignore b/.gitignore index eb38feb..b9e2ec7 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ /mariadb-mysys.tar.gz /mysql-connector-odbc-5.3.4-src.tar.gz /mysql-connector-odbc-5.3.9-src.tar.gz +/mysql-connector-odbc-5.3.10-src.tar.gz diff --git a/mysql-connector-odbc-aarch64-libdir.patch b/mysql-connector-odbc-aarch64-libdir.patch index 4bb9a5c..e94cf6e 100644 --- a/mysql-connector-odbc-aarch64-libdir.patch +++ b/mysql-connector-odbc-aarch64-libdir.patch @@ -1,13 +1,13 @@ Mark aarch64 as a 64-bit architecture. Otherwise, "/usr/lib" would be used instead of correct "/usr/lib64". ---- mysql-connector-odbc-5.3.9-src/CMakeLists.txt 2017-07-18 06:52:28.000000000 +0200 -+++ mysql-connector-odbc-5.3.9-src/CMakeLists.txt_patched 2018-01-02 20:38:52.032637173 +0100 -@@ -251,7 +251,7 @@ SET(EXECUTABLE_OUTPUT_PATH "${CMAKE_BINA +--- mysql-connector-odbc-5.3.10-src/CMakeLists.txt 2018-01-19 11:36:38.000000000 +0100 ++++ mysql-connector-odbc-5.3.10-src/CMakeLists.txt_patched 2018-02-05 14:00:45.480504608 +0100 +@@ -374,7 +374,7 @@ SET(EXECUTABLE_OUTPUT_PATH "${CMAKE_BINA SET(LIBRARY_OUTPUT_PATH "${CMAKE_BINARY_DIR}/lib") SET(LIB_SUBDIR "lib") --IF(RPM_BUILD AND CMAKE_SYSTEM_PROCESSOR MATCHES "(x86_64|ppc64|ppc64p7|s390x|sparc64)") +-IF(RPM_BUILD AND CMAKE_SYSTEM_PROCESSOR MATCHES "(x86_64|ppc64|ppc64p7|s390x|sparc64)") +IF(RPM_BUILD AND CMAKE_SYSTEM_PROCESSOR MATCHES "(x86_64|ppc64|ppc64p7|s390x|sparc64|aarch64)") SET(LIB_SUBDIR "lib64") ENDIF() diff --git a/mysql-connector-odbc.spec b/mysql-connector-odbc.spec index c518599..d240ced 100644 --- a/mysql-connector-odbc.spec +++ b/mysql-connector-odbc.spec @@ -1,86 +1,50 @@ # About: # https://dev.mysql.com/doc/connectors/en/connector-odbc-installation-source-unix.html -# Dynamic linking issue tracker: -# https://bugs.mysql.com/bug.php?id=82202 - Name: mysql-connector-odbc -Version: 5.3.9 -Release: 2%{?dist} +Version: 5.3.10 +Release: 1%{?dist} Summary: ODBC driver for MySQL - License: GPLv2 with exceptions URL: https://dev.mysql.com/downloads/connector/odbc/ + Source0: http://dev.mysql.com/get/Downloads/Connector-ODBC/5.3/%{name}-%{version}-src.tar.gz +Patch0: myodbc-64bit.patch +Patch1: %{name}-aarch64-libdir.patch -# TODO: add explanative comments to all patches -Patch1: myodbc-add-mysys.patch -Patch2: myodbc-shutdown.patch -Patch3: myodbc-64bit.patch -Patch4: myodbc-movecmpfunc.patch -Patch5: mysql-connector-odbc-buffsize.patch -Patch6: mysql-connector-odbc-cleartext.patch -Patch7: mysql-connector-odbc-format-security.patch -# Mark aarch64 as a 64-bit architecture. Otherwise "/usr/lib" would be used instead of correct "/usr/lib64" -Patch8: mysql-connector-odbc-aarch64-libdir.patch -Patch9: myodbc-mariadb10.patch -Patch10: mysql-connector-odbc-x_free.patch - -BuildRequires: cmake unixODBC-devel gtk3-devel +BuildRequires: cmake BuildRequires: community-mysql-devel -BuildRequires: community-mysql-static - -Provides: bundled(libmysqlclient) = 20.3.7 +BuildRequires: gtk3-devel +BuildRequires: unixODBC-devel %description An ODBC (rev 3) driver for MySQL, for use with unixODBC. - %prep %setup -q -n %{name}-%{version}-src - -# TODO: check all pacthes, if they are still needed -#%patch1 -p1 -#%patch2 -p1 -%patch3 -p1 -#%patch4 -p1 -#%patch5 -p1 -#%patch6 -p1 -#%patch7 -p1 -%patch8 -p1 -#%patch9 -p1 -#%patch10 -p1 +%patch0 -p1 +%patch1 -p1 %build -# mysql 5.5.10 has stopped #define'ing THREAD in its exports, and has -# started #define'ing MY_PTHREAD_FASTMUTEX, and neither of those changes -# sit well with mysql-connector-odbc 5.1.10. Revisit need for these hacks -# when updating to newer release. -export CFLAGS="%{optflags} -lpthread -fno-strict-aliasing -DTHREAD=1 -UMY_PTHREAD_FASTMUTEX -DDBUG_OFF" - -cmake . \ - -G "Unix Makefiles" \ +mkdir build && pushd build +export LDFLAGS="%__global_ldflags" +cmake .. \ -DWITH_UNIXODBC=1 \ -DRPM_BUILD=1 \ -DCMAKE_INSTALL_PREFIX="%{_prefix}" \ - -DMYSQLCLIENT_STATIC_LINKING=ON - + -DMYSQLCLIENT_STATIC_LINKING=OFF \ + -DCMAKE_C_FLAGS="%{optflags}" \ + -DCMAKE_CXX_FLAGS="%{optflags}" make %{?_smp_mflags} VERBOSE=1 - - %install -export tagname=CC +pushd build make DESTDIR=$RPM_BUILD_ROOT install # Remove stuff not to be packaged (possibly reconsider later) rm -f $RPM_BUILD_ROOT%{_bindir}/myodbc-installer -rm -f $RPM_BUILD_ROOT/usr/COPYING -rm -f $RPM_BUILD_ROOT/usr/README -rm -f $RPM_BUILD_ROOT/usr/README.debug -rm -f $RPM_BUILD_ROOT/usr/ChangeLog -rm -f $RPM_BUILD_ROOT/usr/INSTALL -rm -f $RPM_BUILD_ROOT/usr/Licenses_for_Third-Party_Components.txt +# Remove any file in /usr +find $RPM_BUILD_ROOT/usr/ -maxdepth 1 -type f -delete # Create a symlink for library to offer name that users are used to ln -sf libmyodbc5w.so $RPM_BUILD_ROOT%{_libdir}/libmyodbc5.so @@ -94,12 +58,17 @@ rm -rf $RPM_BUILD_ROOT/usr/test %ldconfig_scriptlets %files -%doc README README.debug ChangeLog COPYING +%license COPYING +%doc ChangeLog README README.debug %{_libdir}/lib*so - - %changelog +* Wed Jan 31 2018 Norvald H. Ryeng - 5.3.10-1 +- Use dynamic linking +- Use license macro +- Remove unused patches +- Simplify build + * Tue Jan 02 2018 Michal Schorm - 5.3.9-2 - Begin building against static library, dynamic linking is not supported from 5.3.6 version https://bugs.mysql.com/bug.php?id=82202 diff --git a/sources b/sources index e0aaf45..0cc35cb 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (mysql-connector-odbc-5.3.9-src.tar.gz) = bbded69fa9c9d5899badb73ea490d9625de451b351b015f4662108ea282e5dbac4b1d962cbe069f3c36f8f36605383ebd10ff5a97d98332d3676cbc17edf0040 +SHA512 (mysql-connector-odbc-5.3.10-src.tar.gz) = ebe56b95a1690332959a7a37e8ed381b46730fb9f6fbd6522ddc1a6961e4c8cdac59681a957b33abeb6cae12f210278e4063daa59ce952d92acf427bc188e22b