[packages/percona-server] - fix building with openssl 3.0.0, rel 4
baggins
baggins at pld-linux.org
Sun Sep 26 17:16:51 CEST 2021
commit 048b4425c8b2292eddad8bb981d240a459aaf43e
Author: Jan Rękorajski <baggins at pld-linux.org>
Date: Sun Sep 26 17:16:17 2021 +0200
- fix building with openssl 3.0.0, rel 4
openssl-3.patch | 76 +++++++++++++++++++++++++++++++++++++++++++++++++++++
percona-server.spec | 33 +++++++++--------------
2 files changed, 89 insertions(+), 20 deletions(-)
---
diff --git a/percona-server.spec b/percona-server.spec
index 564b339..9539698 100644
--- a/percona-server.spec
+++ b/percona-server.spec
@@ -48,7 +48,7 @@
%undefine with_coredumper
%endif
-%define rel 3
+%define rel 4
%define percona_rel 34
Summary: Percona Server: a very fast and reliable SQL database engine
Summary(de.UTF-8): Percona Server: ist eine SQL-Datenbank
@@ -88,17 +88,14 @@ Patch0: mysql-opt.patch
Patch1: mysql-versioning.patch
Patch2: mysql-protobuf.patch
Patch3: build.patch
-
-Patch11: mysql-upgrade.patch
-Patch12: mysql-config.patch
-Patch17: mysql-sphinx.patch
+Patch4: mysql-sphinx.patch
# https://github.com/sphinxsearch/sphinx/pull/32/
-Patch18: mysql-5.7-sphinx.patch
-Patch19: mysql-chain-certs.patch
+Patch5: mysql-5.7-sphinx.patch
+Patch6: mysql-chain-certs.patch
# from fedora
-Patch20: mysql-dubious-exports.patch
-
-Patch24: mysql-cmake.patch
+Patch7: mysql-dubious-exports.patch
+Patch8: mysql-cmake.patch
+Patch9: openssl-3.patch
URL: https://www.percona.com/software/mysql-database/percona-server
BuildRequires: bison >= 1.875
BuildRequires: cmake >= 2.8.2
@@ -129,7 +126,6 @@ Requires(pre): /bin/id
Requires(pre): /usr/bin/getgid
Requires(pre): /usr/sbin/groupadd
Requires(pre): /usr/sbin/useradd
-Requires(triggerpostun): sed >= 4.0
Requires: %{name}-charsets = %{version}-%{release}
Requires: %{name}-libs = %{version}-%{release}
Requires: /usr/bin/setsid
@@ -498,25 +494,22 @@ Ten pakiet zawiera standardowego demona Percona Server NDB CPC.
%prep
%setup -q -n %{name}-%{version}-%{percona_rel} %{?with_sphinx:-a100} %{!?with_system_boost:-a101}
-
%patch0 -p1
-
%if %{with sphinx}
# http://www.sphinxsearch.com/docs/manual-0.9.9.html#sphinxse-mysql51
%{__mv} sphinx-*/mysqlse storage/sphinx
-%patch17 -p1
+%patch4 -p1
cd storage/sphinx
-%patch18 -p2
+%patch5 -p2
cd ../..
%endif
%patch1 -p1
%patch2 -p1
%patch3 -p1
-
-%patch19 -p1
-%patch20 -p1
-
-%patch24 -p1
+%patch6 -p1
+%patch7 -p1
+%patch8 -p1
+%patch9 -p1
# to get these files rebuild
[ -f sql/sql_yacc.cc ] && %{__rm} sql/sql_yacc.cc
diff --git a/openssl-3.patch b/openssl-3.patch
new file mode 100644
index 0000000..79f2f4d
--- /dev/null
+++ b/openssl-3.patch
@@ -0,0 +1,76 @@
+--- mysql-5.7.31/cmake/ssl.cmake.orig 2020-06-02 13:05:42.000000000 +0200
++++ mysql-5.7.31/cmake/ssl.cmake 2021-09-26 10:27:27.431001078 +0200
+@@ -172,20 +172,28 @@
+ # #define OPENSSL_VERSION_NUMBER 0x1000103fL
+ # Encoded as MNNFFPPS: major minor fix patch status
+ FILE(STRINGS "${OPENSSL_INCLUDE_DIR}/openssl/opensslv.h"
+- OPENSSL_VERSION_NUMBER
+- REGEX "^#[ ]*define[\t ]+OPENSSL_VERSION_NUMBER[\t ]+0x[0-9].*"
++ OPENSSL_VERSION_MAJOR
++ REGEX "^#[ ]*define[\t ]+OPENSSL_VERSION_MAJOR[\t ]+([0-9]+).*"
+ )
+ STRING(REGEX REPLACE
+- "^.*OPENSSL_VERSION_NUMBER[\t ]+0x([0-9]).*$" "\\1"
+- OPENSSL_MAJOR_VERSION "${OPENSSL_VERSION_NUMBER}"
++ "^#[ ]*define[\t ]+OPENSSL_VERSION_MAJOR[\t ]+([0-9]+).*" "\\1"
++ OPENSSL_MAJOR_VERSION ${OPENSSL_VERSION_MAJOR}
++ )
++ FILE(STRINGS "${OPENSSL_INCLUDE_DIR}/openssl/opensslv.h"
++ OPENSSL_VERSION_MINOR
++ REGEX "^#[ ]*define[\t ]+OPENSSL_VERSION_MINOR[\t ]+([0-9]+).*"
+ )
+ STRING(REGEX REPLACE
+- "^.*OPENSSL_VERSION_NUMBER[\t ]+0x[0-9]([0-9][0-9]).*$" "\\1"
+- OPENSSL_MINOR_VERSION "${OPENSSL_VERSION_NUMBER}"
++ "^#[ ]*define[\t ]+OPENSSL_VERSION_MINOR[\t ]+([0-9]+).*" "\\1"
++ OPENSSL_MINOR_VERSION ${OPENSSL_VERSION_MINOR}
++ )
++ FILE(STRINGS "${OPENSSL_INCLUDE_DIR}/openssl/opensslv.h"
++ OPENSSL_VERSION_PATCH
++ REGEX "^#[ ]*define[\t ]+OPENSSL_VERSION_PATCH[\t ]+([0-9]+).*"
+ )
+ STRING(REGEX REPLACE
+- "^.*OPENSSL_VERSION_NUMBER[\t ]+0x[0-9][0-9][0-9]([0-9][0-9]).*$" "\\1"
+- OPENSSL_FIX_VERSION "${OPENSSL_VERSION_NUMBER}"
++ "^#[ ]*define[\t ]+OPENSSL_VERSION_PATCH[\t ]+([0-9]+).*" "\\1"
++ OPENSSL_FIX_VERSION ${OPENSSL_VERSION_PATCH}
+ )
+ ENDIF()
+ SET(OPENSSL_VERSION
+@@ -203,7 +211,7 @@
+ IF(OPENSSL_INCLUDE_DIR AND
+ OPENSSL_LIBRARY AND
+ CRYPTO_LIBRARY AND
+- OPENSSL_MAJOR_VERSION STREQUAL "1"
++ (OPENSSL_MAJOR_VERSION STREQUAL "1" OR OPENSSL_MAJOR_VERSION STREQUAL "3")
+ )
+ SET(OPENSSL_FOUND TRUE)
+ ELSE()
+--- percona-server-5.7.31-34/sql/mysqld.cc~ 2020-08-15 11:23:18.000000000 +0200
++++ percona-server-5.7.31-34/sql/mysqld.cc 2021-09-26 16:17:42.275241856 +0200
+@@ -161,6 +161,7 @@
+
+ #if defined(HAVE_OPENSSL)
+ #include <openssl/crypto.h>
++#include <openssl/evp.h>
+ #endif
+
+ #ifndef EMBEDDED_LIBRARY
+@@ -3689,15 +3689,15 @@
+ static int init_ssl()
+ {
+ #ifdef HAVE_OPENSSL
+- int fips_mode= FIPS_mode();
++ int fips_mode = EVP_default_properties_is_fips_enabled(NULL);
+ if (fips_mode != 0)
+ {
+ /* FIPS is enabled, Log warning and Disable it now */
+ sql_print_warning(
+ "Percona Server cannot operate under OpenSSL FIPS mode."
+ " Disabling FIPS.");
+- FIPS_mode_set(0);
++ EVP_set_default_properties(NULL, "fips=no");
+ }
+ #if OPENSSL_VERSION_NUMBER < 0x10100000L
+ CRYPTO_malloc_init();
+ #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/percona-server.git/commitdiff/048b4425c8b2292eddad8bb981d240a459aaf43e
More information about the pld-cvs-commit
mailing list