]> git.pld-linux.org Git - packages/mysql.git/commitdiff
- add versioning script from fedora; add provides for libmysqlclient_r client; WITH_R...
authorArkadiusz Miśkiewicz <arekm@maven.pl>
Fri, 28 Jan 2011 19:08:26 +0000 (19:08 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    mysql-chain-certs.patch -> 1.1
    mysql.spec -> 1.514

mysql-chain-certs.patch [new file with mode: 0644]
mysql.spec

diff --git a/mysql-chain-certs.patch b/mysql-chain-certs.patch
new file mode 100644 (file)
index 0000000..3b20a28
--- /dev/null
@@ -0,0 +1,41 @@
+Fix things so that chains of certificates work in the server and client
+certificate files.
+
+This only really works for OpenSSL-based builds, as yassl is unable to read
+multiple certificates from a file.  The patch below to yassl/src/ssl.cpp
+doesn't fix that, but just arranges that the viosslfactories.c patch won't
+have any ill effects in a yassl build.  Since we don't use yassl in Red Hat/
+Fedora builds, I'm not feeling motivated to try to fix yassl for this.
+
+See RH bug #598656.  Filed upstream at http://bugs.mysql.com/bug.php?id=54158
+
+
+diff -Naur mysql-5.1.47.orig/vio/viosslfactories.c mysql-5.1.47/vio/viosslfactories.c
+--- mysql-5.1.47.orig/vio/viosslfactories.c    2010-05-06 11:28:07.000000000 -0400
++++ mysql-5.1.47/vio/viosslfactories.c 2010-05-26 23:23:46.000000000 -0400
+@@ -100,7 +100,7 @@
+                      (long) ctx, cert_file, key_file));
+   if (cert_file)
+   {
+-    if (SSL_CTX_use_certificate_file(ctx, cert_file, SSL_FILETYPE_PEM) <= 0)
++    if (SSL_CTX_use_certificate_chain_file(ctx, cert_file) <= 0)
+     {
+       *error= SSL_INITERR_CERT;
+       DBUG_PRINT("error",("%s from file '%s'", sslGetErrString(*error), cert_file));
+diff -Naur mysql-5.1.47.orig/extra/yassl/src/ssl.cpp mysql-5.1.47/extra/yassl/src/ssl.cpp
+--- mysql-5.1.47.orig/extra/yassl/src/ssl.cpp  2010-05-06 11:24:26.000000000 -0400
++++ mysql-5.1.47/extra/yassl/src/ssl.cpp       2010-05-26 23:29:13.000000000 -0400
+@@ -1606,10 +1606,10 @@
+     }
+-    int SSL_CTX_use_certificate_chain_file(SSL_CTX*, const char*)
++    int SSL_CTX_use_certificate_chain_file(SSL_CTX* ctx, const char* file)
+     {
+-        // TDOD:
+-        return SSL_SUCCESS;
++        // For the moment, treat like use_certificate_file
++        return read_file(ctx, file, SSL_FILETYPE_PEM, Cert);
+     }
index b6572949491418d4c8e456805942da00366428b3..fe64d4983b52d6fb3242d2406c18868250eaf65e 100644 (file)
@@ -57,9 +57,13 @@ Source11:    %{name}-ndb-cpc.init
 Source12:      %{name}-ndb-cpc.sysconfig
 Source13:      %{name}-client.conf
 Source14:      my.cnf
+# from fedora
+Source15:      lib%{name}.version
 Patch2:                %{name}-c++.patch
 Patch3:                %{name}-info.patch
 Patch4:                %{name}-sql-cxx-pic.patch
+# from fedora
+Patch5:                %{name}-versioning.patch
 Patch6:                %{name}-system-users.patch
 Patch7:                %{name}-bug-34192.patch
 Patch8:                %{name}-client-config.patch
@@ -69,11 +73,12 @@ Patch11:    %{name}-upgrade.patch
 Patch12:       %{name}-config.patch
 Patch14:       %{name}-bug-43594.patch
 Patch18:       %{name}-sphinx.patch
+Patch19:       %{name}-chain-certs.patch
 # <percona patches, http://bazaar.launchpad.net/~percona-dev/percona-server/5.5.8/files>
 # series file shows the order of patches
 Patch100:      microsec_process.patch
 Patch101:      optimizer_fix.patch
-Patch102:      mysql_dump_ignore_ct.patch
+Patch102:      %{name}_dump_ignore_ct.patch
 Patch103:      control_online_alter_index.patch
 Patch104:      show_temp.patch
 Patch105:      innodb_show_status.patch
@@ -372,6 +377,14 @@ Summary(pl.UTF-8): Biblioteki dzielone MySQL
 Group:         Libraries
 Obsoletes:     libmysql10
 Obsoletes:     mysql-doc < 4.1.12
+# drop these provides when everyting is rebuilt
+%ifarch %{x8664}
+Provides:      libmysqlclient_r.so.16()(64bit)
+Provides:      libmysqlclient_r.so.16(libmysqlclient_16)(64bit)
+%else
+Provides:      libmysqlclient_r.so.16()
+Provides:      libmysqlclient_r.so.16(libmysqlclient_16)
+%endif
 
 %description libs
 Shared libraries for MySQL.
@@ -545,6 +558,7 @@ mv sphinx-*/mysqlse storage/sphinx
 # gcc 3.3.x ICE
 %patch10 -p1
 %endif
+%patch5 -p1
 %patch6 -p1
 %patch7 -p1
 %patch8 -p1
@@ -552,6 +566,7 @@ mv sphinx-*/mysqlse storage/sphinx
 %patch11 -p1
 %patch12 -p1
 %patch14 -p0
+%patch19 -p1
 # <percona %patches>
 %patch100 -p1
 %patch101 -p1
@@ -599,10 +614,11 @@ mv sphinx-*/mysqlse storage/sphinx
 %patch143 -p1
 %patch144 -p1
 %patch145 -p1
+# </percona>
+
 # to get these files rebuild
 rm sql/sql_yacc.cc
 rm sql/sql_yacc.h
-# </percona>
 
 %build
 install -d build
@@ -618,6 +634,10 @@ cd build
 %{expand:%%define      __cpp   %(echo '%__cpp' | sed -e 's,-gcc,-gcc4,')}
 %endif
 
+# upstream has fallen down badly on symbol versioning, do it ourselves
+install -d libmysql
+cp -a %{SOURCE15} libmysql/libmysql.version
+
 %cmake \
        -DCMAKE_C_FLAGS_RELEASE="%{rpmcflags} -DNDEBUG" \
        -DCMAKE_CXX_FLAGS_RELEASE="%{rpmcxxflags} -DNDEBUG" \
@@ -625,7 +645,7 @@ cd build
        %{?debug:-DWITH_DEBUG=ON} \
        -DWITH_FAST_MUTEXES=ON \
        -DWITH_LIBEDIT=OFF \
-       -DWITH_READLINE=system \
+       -DWITH_READLINE=OFF \
 %if "%{pld_release}" == "ac"
        -DWITH_SSL=%{?with_ssl:bundled}%{!?with_ssl:no} \
 %else
This page took 0.090403 seconds and 4 git commands to generate.