From e82e604a589e04b218b5cac4a82d5d8be9d67d48 Mon Sep 17 00:00:00 2001 From: AlmaLinux RelEng Bot Date: Thu, 2 Apr 2026 07:24:04 -0400 Subject: [PATCH] import CS git mariadb-10.11.15-1.el8 --- .gitignore | 2 +- .mariadb.metadata | 2 +- SOURCES/CVE-2025-13699.patch | 213 ------------------------- SOURCES/mariadb-ssl-cipher-tests.patch | 13 -- SOURCES/mysql.service.in | 21 ++- SOURCES/mysql@.service.in | 21 ++- SOURCES/pcre_bundling.patch | 15 ++ SOURCES/rh-skipped-tests-base.list | 4 + SPECS/mariadb.spec | 77 +++++++-- 9 files changed, 121 insertions(+), 247 deletions(-) delete mode 100644 SOURCES/CVE-2025-13699.patch delete mode 100644 SOURCES/mariadb-ssl-cipher-tests.patch create mode 100644 SOURCES/pcre_bundling.patch diff --git a/.gitignore b/.gitignore index 6865ad2..100aaf3 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ SOURCES/fmt-11.0.2.zip -SOURCES/mariadb-10.11.10.tar.gz +SOURCES/mariadb-10.11.15.tar.gz diff --git a/.mariadb.metadata b/.mariadb.metadata index 9e21c8d..17bda2a 100644 --- a/.mariadb.metadata +++ b/.mariadb.metadata @@ -1,2 +1,2 @@ bca4fc0ca0cff346ac2a77a3ae02c415c0e1fce6 SOURCES/fmt-11.0.2.zip -2c81ce8aa391470435bf613a5c8ee0aa98b8b1b1 SOURCES/mariadb-10.11.10.tar.gz +997520ac1c9a0a438d4b9c9df17e73fcee96fc28 SOURCES/mariadb-10.11.15.tar.gz diff --git a/SOURCES/CVE-2025-13699.patch b/SOURCES/CVE-2025-13699.patch deleted file mode 100644 index fdcaa4d..0000000 --- a/SOURCES/CVE-2025-13699.patch +++ /dev/null @@ -1,213 +0,0 @@ -diff --git a/client/mysqldump.c b/client/mysqldump.c -index 6d872ae5..0d01bce8 100644 ---- a/client/mysqldump.c -+++ b/client/mysqldump.c -@@ -1870,6 +1870,25 @@ static char *cover_definer_clause(const char *stmt_str, - return query_str; - } - -+static const char* build_path_for_table(char *to, const char *dir, -+ const char *table, const char *ext) -+{ -+ char filename[FN_REFLEN], tmp_path[FN_REFLEN]; -+ convert_dirname(tmp_path, path, NULL); -+ my_load_path(tmp_path, tmp_path, NULL); -+ if (check_if_legal_tablename(table)) -+ strxnmov(filename, sizeof(filename) - 1, table, "@@@", NULL); -+ else -+ { -+ uint errors, len; -+ len= my_convert(filename, sizeof(filename) - 1, &my_charset_filename, -+ table, (uint32)strlen(table), charset_info, &errors); -+ filename[len]= 0; -+ } -+ return fn_format(to, filename, tmp_path, ext, MYF(MY_UNPACK_FILENAME)); -+} -+ -+ - /* - Open a new .sql file to dump the table or view into - -@@ -1884,12 +1903,9 @@ static char *cover_definer_clause(const char *stmt_str, - */ - static FILE* open_sql_file_for_table(const char* table, int flags) - { -- FILE* res; -- char filename[FN_REFLEN], tmp_path[FN_REFLEN]; -- convert_dirname(tmp_path,path,NullS); -- res= my_fopen(fn_format(filename, table, tmp_path, ".sql", 4), -- flags, MYF(MY_WME)); -- return res; -+ char filename[FN_REFLEN]; -+ return my_fopen(build_path_for_table(filename, path, table, ".sql"), -+ flags, MYF(MY_WME)); - } - - -@@ -4133,14 +4149,8 @@ static void dump_table(const char *table, const char *db, const uchar *hash_key, - - if (path) - { -- char filename[FN_REFLEN], tmp_path[FN_REFLEN]; -- /* -- Convert the path to native os format -- and resolve to the full filepath. -- */ -- convert_dirname(tmp_path,path,NullS); -- my_load_path(tmp_path, tmp_path, NULL); -- fn_format(filename, table, tmp_path, ".txt", MYF(MY_UNPACK_FILENAME)); -+ char filename[FN_REFLEN]; -+ build_path_for_table(filename, path, table, ".txt"); - - /* Must delete the file that 'INTO OUTFILE' will write to */ - my_delete(filename, MYF(0)); -@@ -4149,7 +4159,6 @@ static void dump_table(const char *table, const char *db, const uchar *hash_key, - to_unix_path(filename); - - /* now build the query string */ -- - dynstr_append_checked(&query_string, "SELECT /*!40001 SQL_NO_CACHE */ "); - dynstr_append_checked(&query_string, select_field_names.str); - dynstr_append_checked(&query_string, " INTO OUTFILE '"); -diff --git a/client/mysqlimport.c b/client/mysqlimport.c -index c1004a68..99942ef1 100644 ---- a/client/mysqlimport.c -+++ b/client/mysqlimport.c -@@ -339,7 +339,17 @@ static int write_to_table(char *filename, MYSQL *mysql) - DBUG_ENTER("write_to_table"); - DBUG_PRINT("enter",("filename: %s",filename)); - -- fn_format(tablename, filename, "", "", 1 | 2); /* removes path & ext. */ -+ fn_format(tablename, filename, "", "", MYF(MY_REPLACE_DIR | MY_REPLACE_EXT)); -+ if (strchr(tablename, '@')) -+ { -+ uint errors, len; -+ CHARSET_INFO *cs= -+ get_charset_by_csname(default_charset, MY_CS_PRIMARY, MYF(0)); -+ len= my_convert(escaped_name, sizeof(escaped_name) - 1, cs, tablename, -+ (uint32)strlen(tablename), &my_charset_filename, &errors); -+ if (!errors) -+ strmake(tablename, escaped_name, len); -+ } - if (!opt_local_file) - strmov(hard_path,filename); - else -@@ -489,7 +499,7 @@ static MYSQL *db_connect(char *host, char *database, - if (!strcmp(default_charset,MYSQL_AUTODETECT_CHARSET_NAME)) - default_charset= (char *)my_default_csname(); - my_set_console_cp(default_charset); -- mysql_options(mysql, MYSQL_SET_CHARSET_NAME, my_default_csname()); -+ mysql_options(mysql, MYSQL_SET_CHARSET_NAME, default_charset); - mysql_options(mysql, MYSQL_OPT_CONNECT_ATTR_RESET, 0); - mysql_options4(mysql, MYSQL_OPT_CONNECT_ATTR_ADD, - "program_name", "mysqlimport"); -diff --git a/mysql-test/main/mysqldump.result b/mysql-test/main/mysqldump.result -index 0c1728c8..eb0d93f4 100644 ---- a/mysql-test/main/mysqldump.result -+++ b/mysql-test/main/mysqldump.result -@@ -6749,6 +6749,53 @@ ERROR at line 9: Not allowed in the sandbox mode - drop table t1; - # End of 10.5 tests - # -+# MDEV-37483 mariadb-dump -T doesn't convert table names -+# -+set names latin1; -+create database foo; -+use foo; -+create table `con_schöne_grüße` (a int) select 1 as a; -+create table `con` (b int) select 2 as b; -+create table `con/bar` (c int) select 3 as c; -+create table `con@home` (d int) select 4 as d; -+drop database foo; -+use test; -+con@002fbar.sql -+con@002fbar.txt -+con@@@.sql -+con@@@.txt -+con@home.sql -+con@home.txt -+con_sch@1ine_gr@1o@1je.sql -+con_sch@1ine_gr@1o@1je.txt -+show tables; -+Tables_in_test -+con -+con/bar -+con@home -+con_schöne_grüße -+test.con: Records: 1 Deleted: 0 Skipped: 0 Warnings: 0 -+test.con/bar: Records: 1 Deleted: 0 Skipped: 0 Warnings: 0 -+test.con_schöne_grüße: Records: 1 Deleted: 0 Skipped: 0 Warnings: 0 -+test.con@home: Records: 1 Deleted: 0 Skipped: 0 Warnings: 0 -+select * from `con_schöne_grüße`; -+a -+1 -+select * from `con`; -+b -+2 -+select * from `con/bar`; -+c -+3 -+select * from `con@home`; -+d -+4 -+drop table `con_schöne_grüße`; -+drop table `con`; -+drop table `con/bar`; -+drop table `con@home`; -+# End of 10.6 tests -+# - # MDEV-16733 mysqldump --tab and --xml options are conflicting - # - mariadb-dump: --xml can't be used with --tab. -diff --git a/mysql-test/main/mysqldump.test b/mysql-test/main/mysqldump.test -index 0f513a7f..0ccc0c1d 100644 ---- a/mysql-test/main/mysqldump.test -+++ b/mysql-test/main/mysqldump.test -@@ -3031,6 +3031,47 @@ drop table t1; - - --echo # End of 10.5 tests - -+--echo # -+--echo # MDEV-37483 mariadb-dump -T doesn't convert table names -+--echo # -+set names latin1; -+create database foo; -+use foo; -+ -+create table `con_schöne_grüße` (a int) select 1 as a; -+create table `con` (b int) select 2 as b; -+create table `con/bar` (c int) select 3 as c; -+create table `con@home` (d int) select 4 as d; -+exec $MYSQL_DUMP foo --tab $MYSQLTEST_VARDIR/tmp; -+drop database foo; -+use test; -+move_file $MYSQLTEST_VARDIR/tmp/con@0040home.sql $MYSQLTEST_VARDIR/tmp/con@home.sql; -+move_file $MYSQLTEST_VARDIR/tmp/con@0040home.txt $MYSQLTEST_VARDIR/tmp/con@home.txt; -+list_files $MYSQLTEST_VARDIR/tmp con*; -+exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/con@@@.sql; -+exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/con@002fbar.sql; -+exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/con_sch@1ine_gr@1o@1je.sql; -+exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/con@home.sql; -+show tables; -+exec $MYSQL_IMPORT test $MYSQLTEST_VARDIR/tmp/con@@@.txt; -+exec $MYSQL_IMPORT test $MYSQLTEST_VARDIR/tmp/con@002fbar.txt; -+if (`select @@version like '10.6.%'`) { -+# utf8 console output on Windows is fixed in MDEV-26713, until then -+--disable_result_log -+} -+exec $MYSQL_IMPORT test $MYSQLTEST_VARDIR/tmp/con_sch@1ine_gr@1o@1je.txt; -+--enable_result_log -+exec $MYSQL_IMPORT test $MYSQLTEST_VARDIR/tmp/con@home.txt; -+select * from `con_schöne_grüße`; -+select * from `con`; -+select * from `con/bar`; -+select * from `con@home`; -+drop table `con_schöne_grüße`; -+drop table `con`; -+drop table `con/bar`; -+drop table `con@home`; -+ -+--echo # End of 10.6 tests - --echo # - --echo # MDEV-16733 mysqldump --tab and --xml options are conflicting - --echo # diff --git a/SOURCES/mariadb-ssl-cipher-tests.patch b/SOURCES/mariadb-ssl-cipher-tests.patch deleted file mode 100644 index 567e433..0000000 --- a/SOURCES/mariadb-ssl-cipher-tests.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up mariadb-10.3.9/mysql-test/main/ssl_cipher.test.fixtest mariadb-10.3.9/mysql-test/main/ssl_cipher.test ---- mariadb-10.3.13/mysql-test/main/ssl_cipher.test 2019-02-20 08:59:09.000000000 +0100 -+++ mariadb-10.3.13/mysql-test/main/ssl_cipher.test_patched 2019-02-22 11:22:01.250256060 +0100 -@@ -97,7 +97,9 @@ drop user mysqltest_1@localhost; - let $restart_parameters=--ssl-cipher=AES128-SHA; - source include/restart_mysqld.inc; - connect (ssl_con,localhost,root,,,,,SSL); -+--replace_regex /TLS_AES_.*/AES128-SHA/ - SHOW STATUS LIKE 'Ssl_cipher'; -+--replace_regex /TLS_AES_.*/AES128-SHA/ - SHOW STATUS LIKE 'Ssl_cipher_list'; - disconnect ssl_con; - connection default; diff --git a/SOURCES/mysql.service.in b/SOURCES/mysql.service.in index 6f84dd3..fa742e2 100644 --- a/SOURCES/mysql.service.in +++ b/SOURCES/mysql.service.in @@ -40,15 +40,34 @@ Type=notify User=mysql Group=mysql +# Use an environment file to pass variable _WSREP_NEW_CLUSTER +EnvironmentFile=-@INSTALL_RUNDATADIR@/wsrep-new-cluster +# Use an environment file to pass variable _WSREP_START_POSITION +EnvironmentFile=-@INSTALL_RUNDATADIR@/wsrep-start-position + ExecStartPre=@libexecdir@/mysql-check-socket # '%n' expands to 'Full unit name'; man systemd.unit ExecStartPre=@libexecdir@/mysql-prepare-db-dir %n + +# Perform automatic wsrep recovery. When server is started without wsrep, +# galera_recovery simply returns an empty string. In any case, however, +# the script is not expected to return with a non-zero status. +# It is always safe to remove @INSTALL_RUNDATADIR@/wsrep-start-position +# environment file. +# Do not panic if galera_recovery script is not available. (MDEV-10538) +ExecStartPre=/bin/sh -c "[ ! -e @bindir@/galera_recovery ] && VAR= || \ + VAR=`@bindir@/galera_recovery`; [ $? -eq 0 ] \ + && echo _WSREP_START_POSITION=$VAR > @INSTALL_RUNDATADIR@/wsrep-start-position || exit 1" + # MYSQLD_OPTS here is for users to set in /etc/systemd/system/@DAEMON_NAME@@.service.d/MY_SPECIAL.conf # Note: we set --basedir to prevent probes that might trigger SELinux alarms, # per bug #547485 -ExecStart=@libexecdir@/mysqld --basedir=@prefix@ $MYSQLD_OPTS $_WSREP_NEW_CLUSTER +ExecStart=@libexecdir@/mysqld --basedir=@prefix@ $MYSQLD_OPTS $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION ExecStartPost=@libexecdir@/mysql-check-upgrade +# Unset _WSREP_START_POSITION environment variable. +ExecStartPost=/bin/rm -f @INSTALL_RUNDATADIR@/wsrep-start-position + # Setting this to true can break replication and the Type=notify settings # See also bind-address mysqld option. PrivateNetwork=false diff --git a/SOURCES/mysql@.service.in b/SOURCES/mysql@.service.in index b36ce6d..218e4b2 100644 --- a/SOURCES/mysql@.service.in +++ b/SOURCES/mysql@.service.in @@ -47,14 +47,33 @@ Type=notify User=mysql Group=mysql +# Use an environment file to pass variable _WSREP_NEW_CLUSTER +EnvironmentFile=-@INSTALL_RUNDATADIR@/wsrep-new-cluster +# Use an environment file to pass variable _WSREP_START_POSITION +EnvironmentFile=-@INSTALL_RUNDATADIR@/wsrep-start-position + ExecStartPre=@libexecdir@/mysql-check-socket --defaults-group-suffix=.%I ExecStartPre=@libexecdir@/mysql-prepare-db-dir --defaults-group-suffix=.%I %n + +# Perform automatic wsrep recovery. When server is started without wsrep, +# galera_recovery simply returns an empty string. In any case, however, +# the script is not expected to return with a non-zero status. +# It is always safe to remove @INSTALL_RUNDATADIR@/wsrep-start-position +# environment file. +# Do not panic if galera_recovery script is not available. (MDEV-10538) +ExecStartPre=/bin/sh -c "[ ! -e @bindir@/galera_recovery ] && VAR= || \ + VAR=`@bindir@/galera_recovery`; [ $? -eq 0 ] \ + && echo _WSREP_START_POSITION=$VAR > @INSTALL_RUNDATADIR@/wsrep-start-position || exit 1" + # MYSQLD_OPTS here is for users to set in /etc/systemd/system/@DAEMON_NAME@@.service.d/MY_SPECIAL.conf # Note: we set --basedir to prevent probes that might trigger SELinux alarms, # per bug #547485 -ExecStart=@libexecdir@/mysqld --defaults-group-suffix=.%I --basedir=@prefix@ $MYSQLD_OPTS $_WSREP_NEW_CLUSTER +ExecStart=@libexecdir@/mysqld --defaults-group-suffix=.%I --basedir=@prefix@ $MYSQLD_OPTS $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION ExecStartPost=@libexecdir@/mysql-check-upgrade --defaults-group-suffix=.%I +# Unset _WSREP_START_POSITION environment variable. +ExecStartPost=/bin/rm -f @INSTALL_RUNDATADIR@/wsrep-start-position + # Setting this to true can break replication and the Type=notify settings # See also bind-address mysqld option. PrivateNetwork=false diff --git a/SOURCES/pcre_bundling.patch b/SOURCES/pcre_bundling.patch new file mode 100644 index 0000000..1ad84c9 --- /dev/null +++ b/SOURCES/pcre_bundling.patch @@ -0,0 +1,15 @@ +diff --git a/cmake/pcre.cmake b/cmake/pcre.cmake +index 08353e92..fc869ba9 100644 +--- a/cmake/pcre.cmake ++++ b/cmake/pcre.cmake +@@ -64,8 +64,8 @@ MACRO(BUNDLE_PCRE2) + ExternalProject_Add( + pcre2 + PREFIX "${dir}" +- URL "https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.45/pcre2-10.45.zip" +- URL_MD5 873da56c6469ec207ca5c5ae9688b83a ++ URL "file:///${dir}/pcre2-10.46.zip" ++ URL_MD5 261f3f9e14b6ce175103c5118a189faa + INSTALL_COMMAND "" + CMAKE_ARGS + "-DCMAKE_WARN_DEPRECATED=FALSE" diff --git a/SOURCES/rh-skipped-tests-base.list b/SOURCES/rh-skipped-tests-base.list index 275e012..ea81dc4 100644 --- a/SOURCES/rh-skipped-tests-base.list +++ b/SOURCES/rh-skipped-tests-base.list @@ -95,3 +95,7 @@ innodb.log_file_size_online : main.connect : main.timezone : innodb.log_file_name : + +# Fails on x86_64 since 10.11.15 +innodb.innochecksum : +innodb.101_compatibility : diff --git a/SPECS/mariadb.spec b/SPECS/mariadb.spec index b27e533..b57e058 100644 --- a/SPECS/mariadb.spec +++ b/SPECS/mariadb.spec @@ -18,7 +18,7 @@ ExcludeArch: %{ix86} # The last version on which the full testsuite has been run # In case of further rebuilds of that version, don't require full testsuite to be run # run only "main" suite -%global last_tested_version 10.11.10 +%global last_tested_version 10.11.15 # Set to 1 to force run the testsuite even if it was already tested in current version %global force_run_testsuite 0 @@ -112,8 +112,8 @@ ExcludeArch: %{ix86} %bcond_without unbundled_pcre %else %bcond_with unbundled_pcre -%global pcre_bundled_version 10.44 %endif +%global pcre_bundled_version 10.46 # To avoid issues with a breaking change in FMT library, bundle it on systems where FMT wasn't fixed yet # See mariadb-libfmt.patch for detailed description. @@ -157,8 +157,8 @@ ExcludeArch: %{ix86} %global sameevr %{epoch}:%{version}-%{release} Name: mariadb -Version: 10.11.10 -Release: 2%{?with_debug:.debug}%{?dist} +Version: 10.11.15 +Release: 1%{?with_debug:.debug}%{?dist} Epoch: 3 Summary: A very fast and robust SQL database server @@ -220,8 +220,7 @@ Patch4: %{pkgnamepatch}-logrotate.patch Patch7: %{pkgnamepatch}-scripts.patch # Patch9: pre-configure to comply with guidelines Patch9: %{pkgnamepatch}-ownsetup.patch -# Patch10: Fix cipher name in the SSL Cipher name test -Patch10: %{pkgnamepatch}-ssl-cipher-tests.patch + # Patch16: Workaround for "chown 0" with priviledges dropped to "mysql" user Patch16: %{pkgnamepatch}-auth_pam_tool_dir.patch # Patch17: Revert of an upstream commit @@ -231,10 +230,11 @@ Patch17: upstream_5cc2096f93b7f130b36f8bc0fc43440db9a848e4.patch Patch13: %{pkgnamepatch}-libfmt.patch # Patch14: make MTR port calculation reasonably predictable Patch14: %{pkgnamepatch}-mtr.patch +# Patch15: fix bundled pcre version to 10.46 because of CVE-2025-58050 +Patch15: pcre_bundling.patch -Patch18: CVE-2025-13699.patch - -BuildRequires: cmake gcc-c++ +BuildRequires: make cmake gcc-c++ +BuildRequires: libxcrypt-devel BuildRequires: multilib-rpm-config BuildRequires: selinux-policy-devel BuildRequires: systemd systemd-devel @@ -488,6 +488,8 @@ Requires: systemd %{?systemd_requires} # RHBZ#1496131; use 'iproute' instead of 'net-tools' Requires: iproute +# The 'wsrep_sst_common' and 'wsrep_sst_rsync_tunnel' calls 'which' utility +%{?with_galera:Requires: which} %if %{with mysql_names} Provides: mysql-server = %{sameevr} Provides: mysql-server%{?_isa} = %{sameevr} @@ -563,6 +565,7 @@ For InnoDB, "hot online" backups are possible. Summary: The RocksDB storage engine for MariaDB Requires: %{name}-server%{?_isa} = %{sameevr} Provides: bundled(rocksdb) +Conflicts: rocksdb-tools %description rocksdb-engine The RocksDB storage engine is used for high performance servers on SSD drives. @@ -757,7 +760,7 @@ cp %{SOURCE1} %{_vpath_builddir}/extra/libfmt/ # Remove JAR files that upstream puts into tarball find . -name "*.jar" -type f -exec rm --verbose -f {} \; # Remove testsuite for the mariadb-connector-c -rm -rf libmariadb/unittest +rm -r libmariadb/unittest %if %{without rocksdb} rm -r storage/rocksdb/ %endif @@ -770,6 +773,9 @@ rm -r storage/rocksdb/ %patch -P13 -p1 %endif %patch -P14 -p1 +%if %{without unbundled_pcre} +%patch -P15 -p1 +%endif # The test in Patch 10 has been recently updated by upstream # and the test was disabled in the testuite run # main.ssl_cipher [ disabled ] MDEV-17184 - Failures with OpenSSL 1.1.1 @@ -779,7 +785,6 @@ rm -r storage/rocksdb/ %patch16 -p1 %patch17 -R -p1 -%patch -P18 -p1 # generate a list of tests that fail, but are not disabled by upstream cat %{SOURCE50} | tee -a mysql-test/unstable-tests @@ -811,7 +816,7 @@ sed 's/mariadb-server-galera/%{name}-server-galera/' %{SOURCE72} > selinux/%{nam # Get version of PCRE, that upstream use -pcre_version=`grep -e "https://github.com/PCRE2Project/pcre2/releases/download" cmake/pcre.cmake | sed -r "s;.*pcre2-([[:digit:]]+\.[[:digit:]]+).*;\1;" ` +pcre_version=`grep -e "URL \"" cmake/pcre.cmake | sed -r "s;.*pcre2-([[:digit:]]+\.[[:digit:]]+).*;\1;" ` # Check if the PCRE version in macro 'pcre_bundled_version', used in Provides: bundled(...), is the same version as upstream actually bundles %if %{without unbundled_pcre} @@ -842,6 +847,27 @@ fi fi %endif + +# Adjust the compliation flags: +# First initialize the distribution default values +%{set_build_flags} +# Add custom tweaks +CFLAGS="$CFLAGS -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE" +# Force the 'PIC' mode so that we can build libmysqld.so +CFLAGS="$CFLAGS -fPIC" + +# When making a debug build, remove all optimizations +%if %{with debug} +# -D_FORTIFY_SOURCE requires optimizations enabled. Disable the fortify. +%undefine _fortify_level +CFLAGS=`echo "$CFLAGS" | sed -r 's/-O[0123]//'` +CFLAGS="$CFLAGS -O0 -g" +%endif + +# Apply the updated values +CXXFLAGS="$CFLAGS"; CPPFLAGS="$CFLAGS"; export CFLAGS CXXFLAGS CPPFLAGS + + # The INSTALL_xxx macros have to be specified relative to CMAKE_INSTALL_PREFIX # so we can't use %%{_datadir} and so forth here. %cmake . \ @@ -870,8 +896,7 @@ fi -DINSTALL_SCRIPTDIR=bin \ -DINSTALL_SUPPORTFILESDIR=share/%{pkg_name} \ -DMYSQL_DATADIR="%{dbdatadir}" \ - -DMYSQL_UNIX_ADDR="/var/lib/mysql/mysql.sock" \ - -DTMPDIR=/var/tmp \ + -DTMPDIR=%{_localstatedir}/tmp \ -DGRN_DATA_DIR=share/%{name}-server/groonga \ -DGROONGA_NORMALIZER_MYSQL_PROJECT_NAME=%{name}-server/groonga-normalizer-mysql \ -DENABLED_LOCAL_INFILE=ON \ @@ -896,6 +921,7 @@ fi -DPLUGIN_ROCKSDB=%{?with_rocksdb:DYNAMIC}%{!?with_rocksdb:NO} \ -DPLUGIN_SPHINX=%{?with_sphinx:DYNAMIC}%{!?with_sphinx:NO} \ -DPLUGIN_CONNECT=%{?with_connect:DYNAMIC}%{!?with_connect:NO} \ + -DPLUGIN_AUTH_GSSAPI=%{?with_gssapi:DYNAMIC}%{!?with_gssapi:NO} \ -DPLUGIN_COLUMNSTORE=NO \ -DPLUGIN_CLIENT_ED25519=OFF \ -DPYTHON_SHEBANG=%{python_path} \ @@ -936,8 +962,8 @@ CPPFLAGS="$CFLAGS" export CFLAGS CXXFLAGS CPPFLAGS -# Print all Cmake options values; "-LAH" means "List Advanced Help" -cmake -B %{_vpath_builddir} -LAH +# Print all cached CMake options values; "-N" means to run in read-only mode; "-LAH" means "List Advanced Help" for each option +cmake -B %{_vpath_builddir} -N -LAH %cmake_build @@ -1134,7 +1160,7 @@ unlink %{buildroot}%{_libdir}/libmariadb.so rm %{buildroot}%{_mandir}/man3/* # Client plugins rm %{buildroot}%{_libdir}/%{pkg_name}/plugin/{dialog.so,mysql_clear_password.so,sha256_password.so} -%if %{with gssapi} +%if %{with gssapi} || %{with hashicorp} rm %{buildroot}%{_libdir}/%{pkg_name}/plugin/auth_gssapi_client.so %endif %endif @@ -1681,6 +1707,23 @@ fi %endif %changelog +* Mon Feb 09 2026 Petr Khartskhaev - 3:10.11.15-1 +- Rebase to 10.11.15 +- Resolves: RHBZ#2417697 + +* Mon Feb 09 2026 Pavol Sloboda - 3:10.11.14-1 +- Rebase to 10.11.14 +- Resolves: RHBZ#2386961 + +* Mon Feb 09 2026 Pavol Sloboda - 3:10.11.13-1 +- Rebase to 10.11.13 + +* Mon Feb 09 2026 Michal Schorm - 3:10.11.11-1 +- Rebase to 10.11.11 + +* Mon Feb 09 2026 Björn Esser - 3:10.11.10-4 +- Add explicit BR: libxcrypt-devel + * Tue Dec 2 2025 Pavol Sloboda - 3:10.11.10-2 - Release bump for rebuild