packages: mysql/mysql.spec, mysql/mysql-chain-certs.patch (NEW) - add versi...
arekm
arekm at pld-linux.org
Fri Jan 28 20:08:31 CET 2011
Author: arekm Date: Fri Jan 28 19:08:31 2011 GMT
Module: packages Tag: HEAD
---- Log message:
- add versioning script from fedora; add provides for libmysqlclient_r client; WITH_READLINE=OFF causes autodetection and in the end uses system readline (where =ON or =system still uses bundled one); add chain certs from fedora
---- Files affected:
packages/mysql:
mysql.spec (1.513 -> 1.514) , mysql-chain-certs.patch (NONE -> 1.1) (NEW)
---- Diffs:
================================================================
Index: packages/mysql/mysql.spec
diff -u packages/mysql/mysql.spec:1.513 packages/mysql/mysql.spec:1.514
--- packages/mysql/mysql.spec:1.513 Fri Jan 28 10:17:47 2011
+++ packages/mysql/mysql.spec Fri Jan 28 20:08:26 2011
@@ -58,9 +58,13 @@
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
@@ -70,11 +74,12 @@
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
@@ -373,6 +378,14 @@
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.
@@ -546,6 +559,7 @@
# gcc 3.3.x ICE
%patch10 -p1
%endif
+%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
@@ -553,6 +567,7 @@
%patch11 -p1
%patch12 -p1
%patch14 -p0
+%patch19 -p1
# <percona %patches>
%patch100 -p1
%patch101 -p1
@@ -600,10 +615,11 @@
%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
@@ -619,6 +635,10 @@
%{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" \
@@ -626,7 +646,7 @@
%{?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
@@ -1173,6 +1193,9 @@
All persons listed below can be reached at <cvs_login>@pld-linux.org
$Log$
+Revision 1.514 2011/01/28 19:08:26 arekm
+- add versioning script from fedora; add provides for libmysqlclient_r client; WITH_READLINE=OFF causes autodetection and in the end uses system readline (where =ON or =system still uses bundled one); add chain certs from fedora
+
Revision 1.513 2011/01/28 09:17:47 arekm
- rel 0.5 (consider this to be test before rel 1); update percona patches; drop obsolete patches
================================================================
Index: packages/mysql/mysql-chain-certs.patch
diff -u /dev/null packages/mysql/mysql-chain-certs.patch:1.1
--- /dev/null Fri Jan 28 20:08:31 2011
+++ packages/mysql/mysql-chain-certs.patch Fri Jan 28 20:08:26 2011
@@ -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);
+ }
+
+
================================================================
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/mysql.spec?r1=1.513&r2=1.514&f=u
More information about the pld-cvs-commit
mailing list