The package rpms/mariadb.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/mariadb.git/commit/?id=d82e5cb985....
Change:
-%ifarch x86_64
Thanks.
Full change:
============
commit 0b98906c25bf8b13adc333f615d4a725dc756237
Merge: 994a33f abdf8da
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Wed Feb 28 10:48:30 2018 +0100
Merge branch 'f27'
commit abdf8da01ae714fc2d5639013461bb950475293b
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Sun Feb 18 20:12:10 2018 +0100
Use -DINSTALL_MYSQLTESTDIR Cmake argument correctly;
https://jira.mariadb.org/browse/MDEV-14972
diff --git a/mariadb.spec b/mariadb.spec
index 32ad6d6..1fc9213 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -831,7 +831,7 @@ export LDFLAGS
-DINSTALL_LIBDIR="%{_lib}" \
-DINSTALL_MANDIR=share/man \
-DINSTALL_MYSQLSHAREDIR=share/%{pkg_name} \
- -DINSTALL_MYSQLTESTDIR=share/mysql-test \
+ -DINSTALL_MYSQLTESTDIR=%{?with_test:share/mysql-test}%{!?with_test:} \
-DINSTALL_PLUGINDIR="%{_lib}/%{pkg_name}/plugin" \
-DINSTALL_SBINDIR=libexec \
-DINSTALL_SCRIPTDIR=bin \
@@ -963,12 +963,13 @@ install -p -m 755 scripts/mysql-wait-ready
%{buildroot}%{_libexecdir}/mysql-wait
install -p -m 644 -D selinux/%{name}-server-galera.pp
%{buildroot}%{_datadir}/selinux/packages/%{name}/%{name}-server-galera.pp
%endif
+%if %{with test}
# mysql-test includes one executable that doesn't belong under /usr/share, so move it
and provide a symlink
mv %{buildroot}%{_datadir}/mysql-test/lib/My/SafeProcess/my_safe_process
%{buildroot}%{_bindir}
ln -s ../../../../../bin/my_safe_process
%{buildroot}%{_datadir}/mysql-test/lib/My/SafeProcess/my_safe_process
# Provide symlink expected by RH QA tests
ln -s unstable-tests %{buildroot}%{_datadir}/mysql-test/rh-skipped-tests.list
-
+%endif
# Client that uses libmysqld embedded server.
@@ -1121,10 +1122,9 @@ rm -r %{buildroot}%{_datadir}/sql-bench
rm %{buildroot}%{_bindir}/{mysqltest_embedded,mysql_client_test_embedded}
rm %{buildroot}%{_mandir}/man1/{mysqltest_embedded,mysql_client_test_embedded}.1*
%endif # embedded
-rm %{buildroot}%{_bindir}/{mysql_client_test,my_safe_process,mysqltest}
+rm %{buildroot}%{_bindir}/{mysql_client_test,mysqltest}
rm %{buildroot}%{_mandir}/man1/{mysql_client_test,my_safe_process,mysqltest}.1*
rm %{buildroot}%{_mandir}/man1/{mysql-test-run,mysql-stress-test}.pl.1*
-rm -r %{buildroot}%{_datadir}/mysql-test
%endif # test
%if %{without galera}
commit 00b1b90490dbe697ea55e1535f54e9d979b2b6c8
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Tue Jan 30 11:55:36 2018 +0100
Update ldconfig scriptlets
diff --git a/mariadb.spec b/mariadb.spec
index 85431a6..32ad6d6 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -1188,11 +1188,13 @@ export MTR_BUILD_THREAD=%{__isa_bits}
-c "MySQL Server" -u 27 mysql >/dev/null 2>&1 || :
%if %{with clibrary}
-%post libs -p /sbin/ldconfig
+# Can be dropped on F27 EOL
+%ldconfig_post libs
%endif
%if %{with embedded}
-%post embedded -p /sbin/ldconfig
+# Can be dropped on F27 EOL
+%ldconfig_post embedded
%endif
%if %{with galera}
@@ -1227,11 +1229,13 @@ fi
%endif
%if %{with clibrary}
-%postun libs -p /sbin/ldconfig
+# Can be dropped on F27 EOL
+%ldconfig_postun libs
%endif
%if %{with embedded}
-%postun embedded -p /sbin/ldconfig
+# Can be dropped on F27 EOL
+%ldconfig_postun embedded
%endif
%if %{with galera}
commit ed1cfbce0e107e983e8b8e95354c902e0c5add2e
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Sat Jan 27 02:34:32 2018 +0100
Extend failing tests list for PPC
diff --git a/rh-skipped-tests-ppc.list b/rh-skipped-tests-ppc.list
index 5fd4928..5fc204e 100644
--- a/rh-skipped-tests-ppc.list
+++ b/rh-skipped-tests-ppc.list
@@ -1,2 +1,6 @@
# Fails since 10.1.12 only on PPC64
innodb_fts.fulltext :
+# Fails since 10.1.12 only on PPC64 and PPC64le; timeout after 1800 seconds
+innodb.innodb_defrag_concurrent :
+parts.partition_alter1_2_innodb :
+
commit ad0bf94ae52ced82bc9f755a343d286bde55831a
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Fri Jan 26 18:26:43 2018 +0100
Use '-ldl' compiler flag when associated library used
Resolves: #1538990
diff --git a/mariadb.spec b/mariadb.spec
index a0eeb1b..85431a6 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -141,7 +141,7 @@
Name: mariadb
Version: %{compatver}.%{bugfixver}
-Release: 4%{?with_debug:.debug}%{?dist}
+Release: 5%{?with_debug:.debug}%{?dist}
Epoch: 3
Summary: A community developed branch of MySQL
@@ -786,6 +786,8 @@ rm -r storage/tokudb/mysql-test/tokudb/t/*.py
CFLAGS="%{optflags} -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE"
# force PIC mode so that we can build libmysqld.so
CFLAGS="$CFLAGS -fPIC"
+# Use -ldl for some plugins #1538990
+CFLAGS="$CFLAGS -ldl"
# gcc seems to have some bugs on sparc as of 4.4.1, back off optimization; rhbz#529298
# Note: sparc = s390
%ifarch sparc sparcv9 sparc64
@@ -1622,6 +1624,10 @@ fi
%endif
%changelog
+* Fri Jan 26 2018 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.12-5
+- Use '-ldl' compiler flag when associated library used
+ Resolves: #1538990
+
* Thu Jan 25 2018 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.12-4
- Fix the upgrade path. Build TokuDB subpackage again, but build a unsupported
configuration by upstream (without Jemalloc).
commit af8f71d7a59a5f746578e710844dfff675b9a549
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Thu Jan 25 12:09:50 2018 +0100
Use downstream tmpfiles instead of the upstream one; #1538066
diff --git a/mariadb.spec b/mariadb.spec
index aa7c469..a0eeb1b 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -924,6 +924,9 @@ rm scripts/my.cnf
# use different config file name for each variant of server (mariadb / mysql)
mv %{buildroot}%{_sysconfdir}/my.cnf.d/server.cnf
%{buildroot}%{_sysconfdir}/my.cnf.d/%{pkg_name}-server.cnf
+# Rename sysusers and tmpfiles config files, they should be named after the software they
belong to
+mv %{buildroot}/usr/lib/sysusers.d/sysusers.conf
%{buildroot}/usr/lib/sysusers.d/mariadb.conf
+
# remove SysV init script and a symlink to that, we pack our very own
rm %{buildroot}%{_sysconfdir}/init.d/mysql
rm %{buildroot}%{_libexecdir}/rcmysql
@@ -931,6 +934,9 @@ rm %{buildroot}%{_libexecdir}/rcmysql
%if %{with init_systemd}
install -D -p -m 644 scripts/mysql.service
%{buildroot}%{_unitdir}/%{daemon_name}.service
install -D -p -m 644 scripts/mysql@.service
%{buildroot}%{_unitdir}/%{daemon_name}@.service
+# Remove the upstream version
+rm %{buildroot}/usr/lib/tmpfiles.d/tmpfiles.conf
+# Install downstream version
install -D -p -m 0644 scripts/mysql.tmpfiles.d %{buildroot}%{_tmpfilesdir}/%{name}.conf
%if 0%{?mysqld_pid_dir:1}
echo "d %{pidfiledir} 0755 mysql mysql -"
>>%{buildroot}%{_tmpfilesdir}/%{name}.conf
@@ -986,10 +992,6 @@ rm %{buildroot}%{_datadir}/%{pkg_name}/mysqld_multi.server
# Shipped as a standalona package in Fedora
rm %{buildroot}%{_bindir}/mytop
-# Rename sysusers and tmpfiles config files, they should be named after the software they
belong to
-mv %{buildroot}/usr/lib/sysusers.d/sysusers.conf
%{buildroot}/usr/lib/sysusers.d/mariadb.conf
-mv %{buildroot}/usr/lib/tmpfiles.d/tmpfiles.conf
%{buildroot}/usr/lib/tmpfiles.d/mariadb.conf
-
# put logrotate script where it needs to be
mkdir -p %{buildroot}%{logrotateddir}
mv %{buildroot}%{_datadir}/%{pkg_name}/mysql-log-rotate
%{buildroot}%{logrotateddir}/%{daemon_name}
@@ -1624,6 +1626,8 @@ fi
- Fix the upgrade path. Build TokuDB subpackage again, but build a unsupported
configuration by upstream (without Jemalloc).
Jemmalloc has been updated to version 5, which isn't backwards compatible.
+- Use downstream tmpfiles instead of the upstream one
+ Related: #1538066
* Thu Jan 11 2018 Honza Horak <hhorak(a)redhat.com> - 3:10.2.12-1
- Do not build connect plugin with mongo and jdbc connectors
commit c07b0bf23ab3eae3f1b485b4a674eee13cf7a8a5
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Thu Jan 25 11:59:14 2018 +0100
Fix upgrade path - do build TokuDB, but build a configuration unsupported by upstream
(Build without Jemalloc)
diff --git a/mariadb.spec b/mariadb.spec
index 29c8932..aa7c469 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -34,7 +34,7 @@
# Disable TokuDB since 10.1.12 on F>=28
# It will either "freeze" the testsuite (probabbly stuck in some loop) or
~500 TokuDB tests will fail
# This issue is probabbly caused by updates in Fedora Rwahide (F28) KOJI - like a new
GCC and many build tools updates
-%bcond_with tokudb
+%bcond_without tokudb
%bcond_without mroonga
%bcond_without rocksdb
%else
@@ -141,7 +141,7 @@
Name: mariadb
Version: %{compatver}.%{bugfixver}
-Release: 2%{?with_debug:.debug}%{?dist}
+Release: 4%{?with_debug:.debug}%{?dist}
Epoch: 3
Summary: A community developed branch of MySQL
@@ -847,7 +847,7 @@ export LDFLAGS
-DCONC_WITH_SSL=%{?with_clibrary:ON}%{!?with_clibrary:NO} \
-DWITH_SSL=system \
-DWITH_ZLIB=system \
- -DWITH_JEMALLOC=system \
+ -DWITH_JEMALLOC=no \
-DPLUGIN_MROONGA=%{?with_mroonga:DYNAMIC}%{!?with_mroonga:NO} \
-DPLUGIN_OQGRAPH=%{?with_oqgraph:DYNAMIC}%{!?with_oqgraph:NO} \
-DPLUGIN_CRACKLIB_PASSWORD_CHECK=%{?with_cracklib:DYNAMIC}%{!?with_cracklib:NO}
\
@@ -1620,6 +1620,11 @@ fi
%endif
%changelog
+* Thu Jan 25 2018 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.12-4
+- Fix the upgrade path. Build TokuDB subpackage again, but build a unsupported
+ configuration by upstream (without Jemalloc).
+ Jemmalloc has been updated to version 5, which isn't backwards compatible.
+
* Thu Jan 11 2018 Honza Horak <hhorak(a)redhat.com> - 3:10.2.12-1
- Do not build connect plugin with mongo and jdbc connectors
- Support MYSQLD_OPTS and _WSREP_NEW_CLUSTER env vars in init script,
commit 9be454122e9b43716cb1673f8da065894cf54619
Author: Honza Horak <hhorak(a)redhat.com>
Date: Tue Nov 7 12:24:46 2017 +0100
Print the same messages as before when starting the service in SysV init, to not scare
users
Related: #1463411
diff --git a/mariadb.spec b/mariadb.spec
index 9693765..29c8932 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -1625,6 +1625,9 @@ fi
- Support MYSQLD_OPTS and _WSREP_NEW_CLUSTER env vars in init script,
same as it is done in case of systemd unit file
Related: #1455850
+- Print the same messages as before when starting the service in SysV init,
+ to not scare users
+ Related: #1463411
* Wed Jan 10 2018 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.12-1
- Rebase to 10.2.12
diff --git a/mysql-prepare-db-dir.sh b/mysql-prepare-db-dir.sh
index 785ddc2..22d0566 100644
--- a/mysql-prepare-db-dir.sh
+++ b/mysql-prepare-db-dir.sh
@@ -68,11 +68,11 @@ else
# Provide some advice if the log file cannot be created by this script
errlogdir=$(dirname "$errlogfile")
if ! [ -d "$errlogdir" ] ; then
- echo "The directory $errlogdir does not exist."
+ echo "The directory $errlogdir does not exist." >&2
exit 1
elif [ -e "$errlogfile" -a ! -w "$errlogfile" ] ; then
- echo "The log file $errlogfile cannot be written, please, fix its
permissions."
- echo "The daemon will be run under $myuser:$mygroup"
+ echo "The log file $errlogfile cannot be written, please, fix its
permissions." >&2
+ echo "The daemon will be run under $myuser:$mygroup" >&2
exit 1
fi
fi
@@ -90,14 +90,14 @@ if should_initialize "$datadir" ; then
[ -x /sbin/restorecon ] && /sbin/restorecon "$datadir"
# Now create the database
- echo "Initializing @NICE_PROJECT_NAME@ database"
+ echo "Initializing @NICE_PROJECT_NAME@ database" >&2
# Avoiding deletion of files not created by mysql_install_db is
# guarded by time check and sleep should help work-arounded
# potential issues on systems with 1 second resolution timestamps
#
https://bugzilla.redhat.com/show_bug.cgi?id=1335849#c19
INITDB_TIMESTAMP=`LANG=C date -u`
sleep 1
- @bindir@/mysql_install_db --rpm --datadir="$datadir"
--user="$myuser"
+ @bindir@/mysql_install_db --rpm --datadir="$datadir"
--user="$myuser" >&2
ret=$?
if [ $ret -ne 0 ] ; then
echo "Initialization of @NICE_PROJECT_NAME@ database failed."
>&2
@@ -128,8 +128,8 @@ else
else
# if the directory is not empty but mysql/ directory is missing, then
# print error and let user to initialize manually or empty the directory
- echo "Database @NICE_PROJECT_NAME@ is not initialized, but the directory
$datadir is not empty, so initialization cannot be done."
- echo "Make sure the $datadir is empty before running `basename $0`."
+ echo "Database @NICE_PROJECT_NAME@ is not initialized, but the directory
$datadir is not empty, so initialization cannot be done." >&2
+ echo "Make sure the $datadir is empty before running `basename $0`."
>&2
exit 1
fi
fi
diff --git a/mysql.init.in b/mysql.init.in
index aa3b809..0282399 100644
--- a/mysql.init.in
+++ b/mysql.init.in
@@ -71,8 +71,8 @@ start(){
action $"Starting $prog: " /bin/true
ret=0
else
- @libexecdir@/mysql-check-socket || return 1
- su - $MYUSER -s /bin/bash -c "@libexecdir@/mysql-prepare-db-dir $MYUSER
$MYGROUP" || return 4
+ @libexecdir@/mysql-check-socket >/dev/null || return 1
+ su - $MYUSER -s /bin/bash -c "@libexecdir@/mysql-prepare-db-dir $MYUSER
$MYGROUP" >/dev/null || return 4
# Pass all the options determined above, to ensure consistent behavior.
# In many cases mysqld_safe would arrive at the same conclusions anyway
commit a218b6af2838a994df8c51cecca07825cbd82e96
Author: Honza Horak <hhorak(a)redhat.com>
Date: Sun Sep 24 12:55:50 2017 +0200
Support MYSQLD_OPTS and _WSREP_NEW_CLUSTER env vars in init script, same as it is done
in case of systemd unit file
Related: #1455850
diff --git a/mariadb.spec b/mariadb.spec
index 337f43e..9693765 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -1622,6 +1622,9 @@ fi
%changelog
* Thu Jan 11 2018 Honza Horak <hhorak(a)redhat.com> - 3:10.2.12-1
- Do not build connect plugin with mongo and jdbc connectors
+- Support MYSQLD_OPTS and _WSREP_NEW_CLUSTER env vars in init script,
+ same as it is done in case of systemd unit file
+ Related: #1455850
* Wed Jan 10 2018 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.12-1
- Rebase to 10.2.12
diff --git a/mysql.init.in b/mysql.init.in
index 6ae046c..aa3b809 100644
--- a/mysql.init.in
+++ b/mysql.init.in
@@ -82,7 +82,7 @@ start(){
# Note: set --basedir to prevent probes that might trigger SELinux
# alarms, per bug #547485
su - $MYUSER -s /bin/bash -c "$exec --datadir='$datadir'
--socket='$socketfile' \
- --pid-file='$pidfile' \
+ --pid-file='$pidfile' $MYSQLD_OPTS $_WSREP_NEW_CLUSTER \
--basedir=@prefix@ --user=$MYUSER" >/dev/null 2>&1 &
safe_pid=$!
commit 0d9da7bf48c4dbed3b077dbedeaffb6e47f99799
Author: Honza Horak <hhorak(a)redhat.com>
Date: Thu Nov 23 22:15:32 2017 +0100
Remove jar files used for testing from the source
Related: #1463417
diff --git a/mariadb.spec b/mariadb.spec
index 8557a3c..337f43e 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -697,6 +697,9 @@ sources.
%prep
%setup -q -n mariadb-%{version}
+# Removt JAR files that upstream puts into tarball
+find . -name "*.jar" -type f -exec rm --verbose -f {} \;
+
%patch4 -p1
%patch7 -p1
%patch9 -p1
@@ -852,6 +855,8 @@ export LDFLAGS
-DPLUGIN_SPHINX=%{?with_sphinx:DYNAMIC}%{!?with_sphinx:NO} \
-DPLUGIN_TOKUDB=%{?with_tokudb:DYNAMIC}%{!?with_tokudb:NO} \
-DPLUGIN_CONNECT=%{?with_connect:DYNAMIC}%{!?with_connect:NO} \
+ -DCONNECT_WITH_MONGO=OFF \
+ -DCONNECT_WITH_JDBC=OFF \
%{?with_debug: -DCMAKE_BUILD_TYPE=Debug -DWITH_ASAN=OFF -DWITH_INNODB_EXTRA_DEBUG=ON
-DWITH_VALGRIND=ON} \
%{?_hardened_build: -DWITH_MYSQLD_LDFLAGS="-pie -Wl,-z,relro,-z,now"}
@@ -1011,10 +1016,6 @@ install -p -m 0755 scripts/galera_new_cluster
%{buildroot}%{_bindir}/galera_new_
# remove duplicate logrotate script
rm %{buildroot}%{_sysconfdir}/logrotate.d/mysql
-# remove *.jar file from mysql-test
-rm -r %{buildroot}%{_datadir}/mysql-test/plugin/connect/connect/std_data/JdbcMariaDB.jar
-rm -r %{buildroot}%{_datadir}/mysql-test/plugin/connect/connect/std_data/Mongo2.jar
-rm -r %{buildroot}%{_datadir}/mysql-test/plugin/connect/connect/std_data/Mongo3.jar
# Remove AppArmor files
rm -r %{buildroot}%{_datadir}/%{pkg_name}/policy/apparmor
@@ -1619,6 +1620,9 @@ fi
%endif
%changelog
+* Thu Jan 11 2018 Honza Horak <hhorak(a)redhat.com> - 3:10.2.12-1
+- Do not build connect plugin with mongo and jdbc connectors
+
* Wed Jan 10 2018 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.12-1
- Rebase to 10.2.12
- Temporary fix for
https://jira.mariadb.org/browse/MDEV-14537 removed
commit fe524160efa2844bb9a1a51a91557f6c20243e24
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Mon Dec 11 12:55:15 2017 +0100
Rebase to 10.2.12
Temporary fix for
https://jira.mariadb.org/browse/MDEV-14537 removed
TokuDB disabled
Failing tests lists updated
diff --git a/mariadb.spec b/mariadb.spec
index 980cca3..8557a3c 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -13,6 +13,7 @@
%{!?_pkgdocdir: %global _pkgdocdir %{_docdir}/%{pkg_name}-%{version}}
# Use Full RELRO for all binaries (RHBZ#1092548)
+# Deafult since F23
https://fedoraproject.org/wiki/Changes/Harden_All_Packages
%global _hardened_build 1
# By default, patch(1) creates backup files when chunks apply with offsets.
@@ -30,7 +31,10 @@
#
https://mariadb.com/kb/en/library/myrocks-supported-platforms/
# RocksB engine is available only for x86_64
%ifarch x86_64
-%bcond_without tokudb
+# Disable TokuDB since 10.1.12 on F>=28
+# It will either "freeze" the testsuite (probabbly stuck in some loop) or
~500 TokuDB tests will fail
+# This issue is probabbly caused by updates in Fedora Rwahide (F28) KOJI - like a new
GCC and many build tools updates
+%bcond_with tokudb
%bcond_without mroonga
%bcond_without rocksdb
%else
@@ -133,7 +137,7 @@
# Make long macros shorter
%global sameevr %{epoch}:%{version}-%{release}
%global compatver 10.2
-%global bugfixver 11
+%global bugfixver 12
Name: mariadb
Version: %{compatver}.%{bugfixver}
@@ -796,6 +800,8 @@ export CFLAGS CXXFLAGS
# building with PIE
LDFLAGS="$LDFLAGS -pie -Wl,-z,relro,-z,now"
export LDFLAGS
+# Simmilar flags provides MariaDB itself: -DSECURITY_HARDENED=ON
+# will elanble -pie and -Wl,-z,relro,-z,now, but also -fstack-protector and
-D_FORTIFY_SOURCE=2
%endif
# The INSTALL_xxx macros have to be specified relative to CMAKE_INSTALL_PREFIX
@@ -831,6 +837,7 @@ export LDFLAGS
-DTMPDIR=/var/tmp \
-DENABLED_LOCAL_INFILE=ON \
-DENABLE_DTRACE=ON \
+ -DSECURITY_HARDENED=%{?hardened_build:ON}%{!?hardened_build:OFF} \
-DWITH_EMBEDDED_SERVER=%{?with_embedded:ON}%{!?with_embedded:OFF} \
-DWITH_MARIABACKUP=%{?with_backup:ON}%{!?with_backup:NO} \
-DWITH_UNIT_TESTS=%{?with_test:ON}%{!?with_test:NO} \
@@ -844,14 +851,10 @@ export LDFLAGS
-DPLUGIN_ROCKSDB=%{?with_rocksdb:DYNAMIC}%{!?with_rocksdb:NO} \
-DPLUGIN_SPHINX=%{?with_sphinx:DYNAMIC}%{!?with_sphinx:NO} \
-DPLUGIN_TOKUDB=%{?with_tokudb:DYNAMIC}%{!?with_tokudb:NO} \
- -DTOKUDB_OK=1 \
-DPLUGIN_CONNECT=%{?with_connect:DYNAMIC}%{!?with_connect:NO} \
%{?with_debug: -DCMAKE_BUILD_TYPE=Debug -DWITH_ASAN=OFF -DWITH_INNODB_EXTRA_DEBUG=ON
-DWITH_VALGRIND=ON} \
%{?_hardened_build: -DWITH_MYSQLD_LDFLAGS="-pie -Wl,-z,relro,-z,now"}
-# -DTOKUDB_OK=1
-# ^ is a temporary fix for
https://jira.mariadb.org/browse/MDEV-14537
-
# Print all Cmake options values
cmake -L
@@ -978,7 +981,9 @@ rm %{buildroot}%{_datadir}/%{pkg_name}/mysqld_multi.server
# Shipped as a standalona package in Fedora
rm %{buildroot}%{_bindir}/mytop
-
+# Rename sysusers and tmpfiles config files, they should be named after the software they
belong to
+mv %{buildroot}/usr/lib/sysusers.d/sysusers.conf
%{buildroot}/usr/lib/sysusers.d/mariadb.conf
+mv %{buildroot}/usr/lib/tmpfiles.d/tmpfiles.conf
%{buildroot}/usr/lib/tmpfiles.d/mariadb.conf
# put logrotate script where it needs to be
mkdir -p %{buildroot}%{logrotateddir}
@@ -1147,9 +1152,10 @@ export MTR_BUILD_THREAD=%{__isa_bits}
# avoid redundant test runs with --binlog-format=mixed
# increase timeouts to prevent unwanted failures during mass rebuilds
-# Failing test debug 02/14/17
+# Usefull arguments:
# --do-test=mysql_client_test_nonblock \
# --skip-rpl
+# --suite=roles
(
set -ex
@@ -1483,6 +1489,13 @@ fi
%attr(0640,mysql,mysql) %config %ghost %verify(not md5 size mtime) %{logfile}
%config(noreplace) %{logrotateddir}/%{daemon_name}
+# New systemd feature - used to reconstruct damaged /etc
+#
https://github.com/MariaDB/server/commit/7bbc6c14d1
+%dir /usr/lib/sysusers.d
+/usr/lib/sysusers.d/mariadb.conf
+%dir /usr/lib/tmpfiles.d
+/usr/lib/tmpfiles.d/mariadb.conf
+
%if %{with cracklib}
%files cracklib-password-check
%config(noreplace) %{_sysconfdir}/my.cnf.d/cracklib_password_check.cnf
@@ -1606,6 +1619,11 @@ fi
%endif
%changelog
+* Wed Jan 10 2018 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.12-1
+- Rebase to 10.2.12
+- Temporary fix for
https://jira.mariadb.org/browse/MDEV-14537 removed
+- TokuDB disabled
+
* Mon Dec 11 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.11-2
- Temporary fix for #1523875 removed, bug in Annobin fixed
Resolves: #1523875
diff --git a/rh-skipped-tests-base.list b/rh-skipped-tests-base.list
index 022dda6..11d5a9b 100644
--- a/rh-skipped-tests-base.list
+++ b/rh-skipped-tests-base.list
@@ -2,13 +2,10 @@
#
https://jira.mariadb.org/browse/MDEV-8404?focusedCommentId=84275&page...
main.ssl_7937 : #1399847
main.ssl_crl_clients : #1399847
-main.ssl_cert_verify : #1399847
#
-main.userstat : #1399847
main.non_blocking_api : #1399847
perfschema.nesting : #1399847
-perfschema.socket_summary_by_event_name_func : #1399847
perfschema.socket_summary_by_instance_func : #1399847
# <mkocka(a)redhat.com> needs this tests disabled for mode build
@@ -27,14 +24,18 @@ rpl.rpl_row_img_eng_noblob :
sys_vars.slave_parallel_threads_basic :
+# Fails since 10.1.12
+innodb.innodb_defrag_binlog :
+
+# Fails on PPC, PPC64 and AArch
+parts.partition_alter4_innodb : #1399847
+
#
https://jira.mariadb.org/browse/MDEV-14003
-spider/bg.spider3_fixes :
spider/bg.spider3_fixes_part :
spider/bg.spider_fixes :
spider/bg.spider_fixes_part :
spider/bg.basic_sql :
spider/bg.basic_sql_part :
-spider/bg.direct_aggregate :
spider/bg.direct_aggregate_part :
spider/bg.direct_update :
spider/bg.direct_update_part :
@@ -55,4 +56,3 @@ spider.function :
spider.ha :
spider.ha_part :
spider.vp_fixes :
-
diff --git a/rh-skipped-tests-ppc.list b/rh-skipped-tests-ppc.list
index f396da3..5fd4928 100644
--- a/rh-skipped-tests-ppc.list
+++ b/rh-skipped-tests-ppc.list
@@ -1,4 +1,2 @@
-parts.partition_alter4_innodb : #1399847
-connect.tbl_thread : warnings in log
-partition_alter1_2_innodb : warnings in log
-partition_alter2_1_1_innodb : warnings in log
+# Fails since 10.1.12 only on PPC64
+innodb_fts.fulltext :
diff --git a/rh-skipped-tests-s390.list b/rh-skipped-tests-s390.list
index 5f46945..e69de29 100644
--- a/rh-skipped-tests-s390.list
+++ b/rh-skipped-tests-s390.list
@@ -1,6 +0,0 @@
-encryption.innodb-read-only : #1399847
-multi_source.gtid : warnings in log
-sys_vars.innodb_autoextend_increment_basic : warnings in log
-vcol.vcol_keys_innodb : warnings in log
-
-encryption.innodb-compressed-blob : started failing with 10.2.11 release
diff --git a/sources b/sources
index d8648b0..dc9be41 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (mariadb-10.2.11.tar.gz) =
4041ee1f1e266e8b30f85b19c5c95bcb626f965df9e0e20eb801598cc7fc5f5f37906e8a75cc86d373aa642adcccf3b75a0e67994e18908fb733cc6520d04a44
+SHA512 (mariadb-10.2.12.tar.gz) =
8d3d3c84d4a01d6047e4f2b6802eb802e1f6a7b0e10e981c7ef9fdd27a5a25baab0af47a21b8637f4cbb9d21ef3bcc85097c5fdb8745c2a79040ab87fecb5a7b
commit 9c1b69700c1ede718aa30ddf8b62d46c5b528584
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Mon Dec 11 12:55:15 2017 +0100
Temporary fix for #1523875 removed, bug in Annobin fixed
diff --git a/mariadb.spec b/mariadb.spec
index 3c58c95..980cca3 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -137,7 +137,7 @@
Name: mariadb
Version: %{compatver}.%{bugfixver}
-Release: 1%{?with_debug:.debug}%{?dist}
+Release: 2%{?with_debug:.debug}%{?dist}
Epoch: 3
Summary: A community developed branch of MySQL
@@ -789,9 +789,6 @@ CFLAGS=`echo $CFLAGS| sed -e "s|-O2|-O1|g" `
CFLAGS=`echo $CFLAGS| sed -e "s|-O2|-O3|g" `
%endif
-# Temporary fix for rhbz#1523875
-CFLAGS=`echo $CFLAGS| sed -e
"s|-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1||g" `
-
CXXFLAGS="$CFLAGS"
export CFLAGS CXXFLAGS
@@ -1609,10 +1606,15 @@ fi
%endif
%changelog
+* Mon Dec 11 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.11-2
+- Temporary fix for #1523875 removed, bug in Annobin fixed
+ Resolves: #1523875
+
* Sat Dec 09 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.11-1
- Rebase to 10.2.11
- Temporary fix for
https://jira.mariadb.org/browse/MDEV-14537 introduced
- Temporary fix for #1523875 intoruced
+ Related: #1523875
* Wed Dec 06 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.10-2
- Fix PID file location
commit 6cfe77260f023045af345c712549d98fb2f789d2
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Sat Dec 9 21:50:34 2017 +0100
Add failing test for 10.2.11 release
diff --git a/rh-skipped-tests-s390.list b/rh-skipped-tests-s390.list
index 52e7587..5f46945 100644
--- a/rh-skipped-tests-s390.list
+++ b/rh-skipped-tests-s390.list
@@ -2,3 +2,5 @@ encryption.innodb-read-only : #1399847
multi_source.gtid : warnings in log
sys_vars.innodb_autoextend_increment_basic : warnings in log
vcol.vcol_keys_innodb : warnings in log
+
+encryption.innodb-compressed-blob : started failing with 10.2.11 release
commit 6823344debd69918f0584d9fdb7eef3e5eb60c48
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Sat Dec 9 18:57:49 2017 +0100
Added reasons in comments to removed files section.
Based on a question asked on the usptream mailing list:
https://lists.launchpad.net/maria-developers/msg11028.html
diff --git a/mariadb.spec b/mariadb.spec
index 29ad620..3c58c95 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -404,6 +404,8 @@ Recommends: %{name}-gssapi-server%{?_isa} = %{sameevr}
Recommends: %{name}-rocksdb-engine%{?_isa} = %{sameevr}
Recommends: %{name}-tokudb-engine%{?_isa} = %{sameevr}
+Suggests: mytop
+
Requires: %{_sysconfdir}/my.cnf
Requires: %{_sysconfdir}/my.cnf.d
@@ -955,21 +957,29 @@ ln -s ../../../../../bin/my_safe_process
%{buildroot}%{_datadir}/mysql-test/lib/
ln -s unstable-tests %{buildroot}%{_datadir}/mysql-test/rh-skipped-tests.list
-# should move this to /etc/ ?
-# WHY??
-%{?with_embedded:rm %{buildroot}%{_bindir}/mysql_embedded} #upstream ships in client
+# Client that uses libmysqld embedded server.
+# Pretty much like normal mysql command line client, but it doesn't require a running
mariadb server.
+%{?with_embedded:rm %{buildroot}%{_bindir}/mysql_embedded}
+# Static libraries
rm %{buildroot}%{_libdir}/*.a
-rm %{buildroot}%{_datadir}/%{pkg_name}/binary-configure #This script creates the MySQL
system tables and starts the server.
-
-# WHY??
-rm %{buildroot}%{_datadir}/%{pkg_name}/magic #FS files first-bytes recoginiton?
-
-rm %{buildroot}%{_datadir}/%{pkg_name}/mysql.server #Usage: mysql.server
{start|stop|restart|reload|force-reload|status|configtest|bootstrap} [ MySQL server
options ]
-rm %{buildroot}%{_datadir}/%{pkg_name}/mysqld_multi.server #Can't execute
/usr/local/mysql/bin/mysqld_multi from dir /usr/local/mysql
-
-# WHY??
-rm %{buildroot}%{_bindir}/mytop #not shipped by upstream
+# This script creates the MySQL system tables and starts the server.
+# Upstream says:
+# It looks like it's just "mysql_install_db && mysqld_safe"
+# I've never heard of anyone using it, I'd say, no need to pack it.
+rm %{buildroot}%{_datadir}/%{pkg_name}/binary-configure
+# FS files first-bytes recoginiton
+# Not updated by upstream since nobody realy use that
+rm %{buildroot}%{_datadir}/%{pkg_name}/magic
+
+# Upstream ships them because of,
https://jira.mariadb.org/browse/MDEV-10797
+# In Fedora we use our own systemd unit files and scripts
+rm %{buildroot}%{_datadir}/%{pkg_name}/mysql.server
+rm %{buildroot}%{_datadir}/%{pkg_name}/mysqld_multi.server
+
+# Binary for monitoring MySQL performance
+# Shipped as a standalona package in Fedora
+rm %{buildroot}%{_bindir}/mytop
commit c9863fb5fed22bae1ae931a6fbf4519ddce56bc9
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Sat Dec 9 02:46:07 2017 +0100
Include aliases for mariadb service; #1520905
diff --git a/mysql.service.in b/mysql.service.in
index 8292553..bb5b8c2 100644
--- a/mysql.service.in
+++ b/mysql.service.in
@@ -67,3 +67,5 @@ PrivateTmp=true
[Install]
WantedBy=multi-user.target
+Alias=mysql.service
+Alias=mysqld.service
diff --git a/mysql@.service.in b/mysql@.service.in
index 3bf386d..34e645f 100644
--- a/mysql@.service.in
+++ b/mysql@.service.in
@@ -73,3 +73,5 @@ PrivateTmp=true
[Install]
WantedBy=multi-user.target
+Alias=mysql.service
+Alias=mysqld.service
commit d413e4241d87749f79bbb7c6d49c75996b183f5f
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Sat Dec 9 02:34:41 2017 +0100
Rebase to 10.2.11
Temporary fix for
https://jira.mariadb.org/browse/MDEV-14537 introduced
Temporary fix for #1523875 intoruced
diff --git a/mariadb.spec b/mariadb.spec
index 895a9bb..29ad620 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -133,11 +133,11 @@
# Make long macros shorter
%global sameevr %{epoch}:%{version}-%{release}
%global compatver 10.2
-%global bugfixver 10
+%global bugfixver 11
Name: mariadb
Version: %{compatver}.%{bugfixver}
-Release: 2%{?with_debug:.debug}%{?dist}
+Release: 1%{?with_debug:.debug}%{?dist}
Epoch: 3
Summary: A community developed branch of MySQL
@@ -786,6 +786,10 @@ CFLAGS=`echo $CFLAGS| sed -e "s|-O2|-O1|g" `
%ifarch ppc64
CFLAGS=`echo $CFLAGS| sed -e "s|-O2|-O3|g" `
%endif
+
+# Temporary fix for rhbz#1523875
+CFLAGS=`echo $CFLAGS| sed -e
"s|-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1||g" `
+
CXXFLAGS="$CFLAGS"
export CFLAGS CXXFLAGS
@@ -841,10 +845,14 @@ export LDFLAGS
-DPLUGIN_ROCKSDB=%{?with_rocksdb:DYNAMIC}%{!?with_rocksdb:NO} \
-DPLUGIN_SPHINX=%{?with_sphinx:DYNAMIC}%{!?with_sphinx:NO} \
-DPLUGIN_TOKUDB=%{?with_tokudb:DYNAMIC}%{!?with_tokudb:NO} \
+ -DTOKUDB_OK=1 \
-DPLUGIN_CONNECT=%{?with_connect:DYNAMIC}%{!?with_connect:NO} \
%{?with_debug: -DCMAKE_BUILD_TYPE=Debug -DWITH_ASAN=OFF -DWITH_INNODB_EXTRA_DEBUG=ON
-DWITH_VALGRIND=ON} \
%{?_hardened_build: -DWITH_MYSQLD_LDFLAGS="-pie -Wl,-z,relro,-z,now"}
+# -DTOKUDB_OK=1
+# ^ is a temporary fix for
https://jira.mariadb.org/browse/MDEV-14537
+
# Print all Cmake options values
cmake -L
@@ -1426,8 +1434,16 @@ fi
%{_datadir}/%{pkg_name}/mysql_test_data_timezone.sql
%{_datadir}/%{pkg_name}/mysql_to_mariadb.sql
%{_datadir}/%{pkg_name}/mysql_performance_tables.sql
-%{?with_mroonga:%{_datadir}/%{pkg_name}/mroonga/install.sql}
-%{?with_mroonga:%{_datadir}/%{pkg_name}/mroonga/uninstall.sql}
+%if %{with mroonga}
+%{_datadir}/%{pkg_name}/mroonga/install.sql
+%{_datadir}/%{pkg_name}/mroonga/uninstall.sql
+%license %{_datadir}/%{pkg_name}/mroonga/COPYING
+%license %{_datadir}/%{pkg_name}/mroonga/AUTHORS
+%license %{_datadir}/groonga-normalizer-mysql/lgpl-2.0.txt
+%license %{_datadir}/groonga/COPYING
+%doc %{_datadir}/groonga-normalizer-mysql/README.md
+%doc %{_datadir}/groonga/README.md
+%endif
%{_datadir}/%{pkg_name}/my-*.cnf
%{_datadir}/%{pkg_name}/wsrep.cnf
%{_datadir}/%{pkg_name}/wsrep_notify
@@ -1583,6 +1599,11 @@ fi
%endif
%changelog
+* Sat Dec 09 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.11-1
+- Rebase to 10.2.11
+- Temporary fix for
https://jira.mariadb.org/browse/MDEV-14537 introduced
+- Temporary fix for #1523875 intoruced
+
* Wed Dec 06 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.10-2
- Fix PID file location
Related: #1483331, #1515779
diff --git a/sources b/sources
index 2161b03..d8648b0 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (mariadb-10.2.10.tar.gz) =
39c198009f8b19f4a08226ef9842b50e24636580b67c1c92d59c61cce3aa1edbd466e253c281dfcdfc58ab573ae9a59aaacb0ce3e8b82222043ddd849fc3e239
+SHA512 (mariadb-10.2.11.tar.gz) =
4041ee1f1e266e8b30f85b19c5c95bcb626f965df9e0e20eb801598cc7fc5f5f37906e8a75cc86d373aa642adcccf3b75a0e67994e18908fb733cc6520d04a44
commit 4983671d078d466b646907b0fb6fe52b4a3bed20
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Wed Dec 6 09:51:51 2017 +0100
Remove 'Group' tags as they should not be used any more
https://fedoraproject.org/wiki/RPMGroups
diff --git a/mariadb.spec b/mariadb.spec
index 2c0d51b..895a9bb 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -141,7 +141,6 @@ Release: 2%{?with_debug:.debug}%{?dist}
Epoch: 3
Summary: A community developed branch of MySQL
-Group: Applications/Databases
URL:
http://mariadb.org
# Exceptions allow client libraries to be linked with most open source SW, not only GPL
code. See README.mysql-license
License: GPLv2 with exceptions and LGPLv2 and BSD
@@ -293,7 +292,6 @@ contains the standard MariaDB/MySQL client programs and generic MySQL
files.
%if %{with clibrary}
%package libs
Summary: The shared libraries required for MariaDB/MySQL clients
-Group: Applications/Databases
Requires: %{name}-common%{?_isa} = %{sameevr}
%if %{with mysql_names}
Provides: mysql-libs = %{sameevr}
@@ -322,7 +320,6 @@ to a MariaDB/MySQL server.
%if %{with config}
%package config
Summary: The config files required by server and client
-Group: Applications/Databases
%description config
The package provides the config file my.cnf and my.cnf.d directory used by any
@@ -335,7 +332,6 @@ package itself.
%if %{with common}
%package common
Summary: The shared files required by server and client
-Group: Applications/Databases
Requires: %{_sysconfdir}/my.cnf
# obsoletion of mariadb-galera-common
@@ -355,7 +351,6 @@ You will need to install this package to use any other MariaDB
package.
%if %{with errmsg}
%package errmsg
Summary: The error messages files required by server and embedded
-Group: Applications/Databases
Requires: %{name}-common%{?_isa} = %{sameevr}
%description errmsg
@@ -368,7 +363,6 @@ MariaDB packages.
%if %{with galera}
%package server-galera
Summary: The configuration files and scripts for galera replication
-Group: Applications/Databases
Requires: %{name}-common%{?_isa} = %{sameevr}
Requires: %{name}-server%{?_isa} = %{sameevr}
Requires: galera >= 25.3.3
@@ -393,7 +387,6 @@ MariaDB is a community developed branch of MySQL.
%package server
Summary: The MariaDB server and related files
-Group: Applications/Databases
# note: no version here = %%{version}-%%{release}
%if %{with mysql_names}
@@ -455,7 +448,6 @@ MariaDB is a community developed branch of MySQL.
%if %{with oqgraph}
%package oqgraph-engine
Summary: The Open Query GRAPH engine for MariaDB
-Group: Applications/Databases
Requires: %{name}-server%{?_isa} = %{sameevr}
# boost and Judy required for oograph
BuildRequires: boost-devel Judy-devel
@@ -472,7 +464,6 @@ standard SQL syntax, and results joined onto other tables.
%if %{with connect}
%package connect-engine
Summary: The CONNECT storage engine for MariaDB
-Group: Applications/Databases
Requires: %{name}-server%{?_isa} = %{sameevr}
%description connect-engine
@@ -487,7 +478,6 @@ or products (such as Excel), or data retrieved from the environment
%if %{with backup}
%package backup
Summary: The mariabackup tool for physical online backups
-Group: Applications/Databases
Requires: %{name}-server%{?_isa} = %{sameevr}
BuildRequires: libarchive-devel
@@ -501,7 +491,6 @@ For InnoDB, "hot online" backups are possible.
%if %{with rocksdb}
%package rocksdb-engine
Summary: The RocksDB storage engine for MariaDB
-Group: Applications/Databases
Requires: %{name}-server%{?_isa} = %{sameevr}
%description rocksdb-engine
@@ -512,7 +501,6 @@ The RocksDB storage engine is used for high performance servers on SSD
drives.
%if %{with tokudb}
%package tokudb-engine
Summary: The TokuDB storage engine for MariaDB
-Group: Applications/Databases
Requires: %{name}-server%{?_isa} = %{sameevr}
%description tokudb-engine
@@ -523,7 +511,6 @@ The TokuDB storage engine from Percona.
%if %{with cracklib}
%package cracklib-password-check
Summary: The password strength checking plugin
-Group: Applications/Databases
Requires: %{name}-server%{?_isa} = %{sameevr}
BuildRequires: cracklib-dicts cracklib-devel
Requires: cracklib-dicts
@@ -540,7 +527,6 @@ also use it to check MariaDB account passwords.
%if %{with gssapi}
%package gssapi-server
Summary: GSSAPI authentication plugin for server
-Group: Applications/Databases
Requires: %{name}-server%{?_isa} = %{sameevr}
BuildRequires: krb5-devel
@@ -553,7 +539,6 @@ This plugin includes support for Kerberos on Unix.
%if %{with sphinx}
%package sphinx-engine
Summary: The Sphinx storage engine for MariaDB
-Group: Applications/Databases
Requires: %{name}-server%{?_isa} = %{sameevr}
BuildRequires: sphinx libsphinxclient libsphinxclient-devel
Requires: sphinx libsphinxclient
@@ -565,7 +550,6 @@ The Sphinx storage engine for MariaDB.
%package server-utils
Summary: Non-essential server utilities for MariaDB/MySQL applications
-Group: Applications/Databases
Requires: %{name}-server%{?_isa} = %{sameevr}
%if %{with mysql_names}
Provides: mysql-perl = %{sameevr}
@@ -582,7 +566,6 @@ the only MariaDB sub-package, except test subpackage, that depends on
Perl.
%if %{with devel}
%package devel
Summary: Files for development of MariaDB/MySQL applications
-Group: Applications/Databases
%{?with_clibrary:Requires: %{name}-libs%{?_isa} = %{sameevr}}
# avoid issues with openssl1.0 / openssl1.1 / compat
Requires: pkgconfig(openssl)
@@ -614,7 +597,6 @@ package.
%if %{with embedded}
%package embedded
Summary: MariaDB as an embeddable library
-Group: Applications/Databases
Requires: %{name}-common%{?_isa} = %{sameevr}
Requires: %{name}-errmsg%{?_isa} = %{sameevr}
%if %{with mysql_names}
@@ -633,7 +615,6 @@ MariaDB is a community developed branch of MySQL.
%package embedded-devel
Summary: Development files for MariaDB as an embeddable library
-Group: Applications/Databases
Requires: %{name}-embedded%{?_isa} = %{sameevr}
Requires: %{name}-devel%{?_isa} = %{sameevr}
# embedded-devel should require libaio-devel (rhbz#1290517)
@@ -657,7 +638,6 @@ the embedded version of the MariaDB server.
%if %{with bench}
%package bench
Summary: MariaDB benchmark scripts and data
-Group: Applications/Databases
Requires: %{name}%{?_isa} = %{sameevr}
%if %{with mysql_names}
Provides: mysql-bench = %{sameevr}
@@ -678,7 +658,6 @@ MariaDB.
%if %{with test}
%package test
Summary: The test suite distributed with MariaDB
-Group: Applications/Databases
Requires: %{name}%{?_isa} = %{sameevr}
Requires: %{name}-common%{?_isa} = %{sameevr}
Requires: %{name}-server%{?_isa} = %{sameevr}
@@ -1604,9 +1583,11 @@ fi
%endif
%changelog
-* Thu Nov 23 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.10-2
+* Wed Dec 06 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.10-2
- Fix PID file location
Related: #1483331, #1515779
+- Remove 'Group' tags as they should not be used any more
+ Related:
https://fedoraproject.org/wiki/RPMGroups
* Mon Nov 20 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.10-1
- Rebase to 10.2.10 version
commit 23b69efe580b1f0c44c1c5828dcad3160945f7f5
Author: Honza Horak <hhorak(a)redhat.com>
Date: Fri Dec 1 16:10:14 2017 +0100
Use conditions definition for optional plugins as described at
https://github.com/rpm-software-management/rpm/blob/34c2ba3c/macros.in#L1...
diff --git a/mariadb.spec b/mariadb.spec
index 07a44f5..2c0d51b 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -44,10 +44,12 @@
%bcond_without oqgraph
# Other plugins
-%bcond_without cracklib
-%bcond_without gssapi
-%bcond_without connect
-%bcond_without sphinx
+# Allow to override the values outside of spec
+#
https://github.com/rpm-software-management/rpm/blob/34c2ba3c/macros.in#L1...
+%{!?_with_cracklib: %{!?_without_cracklib: %bcond_without cracklib}}
+%{!?_with_gssapi: %{!?_without_gssapi: %bcond_without gssapi}}
+%{!?_with_connect: %{!?_without_sphinx: %bcond_without connect}}
+%{!?_with_sphinx: %{!?_without_sphinx: %bcond_without sphinx}}
# For some use cases we do not need some parts of the package. Set to "...with"
to exclude
%bcond_without clibrary
@@ -211,7 +213,7 @@ BuildRequires: bison bison-devel
BuildRequires: pam-devel
# use either new enough version of pcre or provide bundles(pcre)
%{?with_bundled_pcre:BuildRequires: pcre-devel >= 8.35 pkgconf}
-%{?without_bundled_pcre:Provides: bundled(pcre) = %{pcre_bundled_version}}
+%{!?with_bundled_pcre:Provides: bundled(pcre) = %{pcre_bundled_version}}
# Few utilities needs Perl
%if 0%{?fedora} >= 22 || 0%{?rhel} > 7
BuildRequires: perl-interpreter
commit 869d50aa46e27ecf170c32467236689435c6fb19
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Thu Nov 23 15:06:29 2017 +0100
Fix PID file location
Related: #1483331, #1515779
diff --git a/mariadb.spec b/mariadb.spec
index 625ad8c..07a44f5 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -78,7 +78,7 @@
%global daemon_name %{name}
%global daemondir %{_unitdir}
%global daemon_no_prefix %{pkg_name}
-%global mysqld_pid_dir mysqld
+%global mysqld_pid_dir mariadb
%else
%bcond_with init_systemd
%bcond_without init_sysv
@@ -135,7 +135,7 @@
Name: mariadb
Version: %{compatver}.%{bugfixver}
-Release: 1%{?with_debug:.debug}%{?dist}
+Release: 2%{?with_debug:.debug}%{?dist}
Epoch: 3
Summary: A community developed branch of MySQL
@@ -1602,6 +1602,10 @@ fi
%endif
%changelog
+* Thu Nov 23 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.10-2
+- Fix PID file location
+ Related: #1483331, #1515779
+
* Mon Nov 20 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.10-1
- Rebase to 10.2.10 version
- Patch 2: mariadb-install-test.patch has been incorporated by upstream
commit 9454f6d0ae91525e189b970ca26e049ed4656342
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Mon Nov 20 14:38:51 2017 +0100
Remove false Provides
List only relevant Cmake arguments
diff --git a/mariadb.spec b/mariadb.spec
index 0f806ce..625ad8c 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -296,18 +296,6 @@ Requires: %{name}-common%{?_isa} = %{sameevr}
%if %{with mysql_names}
Provides: mysql-libs = %{sameevr}
Provides: mysql-libs%{?_isa} = %{sameevr}
-# these are the provides for the libmysqlclient.so.18 compatibility
-# symlink; the library auto-provides system does not handle this kind
-# of symlink. They should be removed when the symlink is removed
-%if 0%{?__isa_bits} == 64
-Provides: libmysqlclient.so.18()(64bit)
-Provides: libmysqlclient.so.18(libmysqlclient_16)(64bit)
-Provides: libmysqlclient.so.18(libmysqlclient_18)(64bit)
-%else
-Provides: libmysqlclient.so.18
-Provides: libmysqlclient.so.18(libmysqlclient_16)
-Provides: libmysqlclient.so.18(libmysqlclient_18)
-%endif # isa_bits
%endif # mysql_names
%{?obsoleted_mysql_case_evr:Obsoletes: MySQL-libs < %{obsoleted_mysql_case_evr}}
%{?obsoleted_mysql_evr:Obsoletes: mysql-libs < %{obsoleted_mysql_evr}}
@@ -873,52 +861,9 @@ export LDFLAGS
-DPLUGIN_SPHINX=%{?with_sphinx:DYNAMIC}%{!?with_sphinx:NO} \
-DPLUGIN_TOKUDB=%{?with_tokudb:DYNAMIC}%{!?with_tokudb:NO} \
-DPLUGIN_CONNECT=%{?with_connect:DYNAMIC}%{!?with_connect:NO} \
- -DPLUGIN_ARCHIVE=DYNAMIC \
- -DPLUGIN_AUDIT_NULL=DYNAMIC \
- -DPLUGIN_AUTH_ED25519=DYNAMIC \
- -DPLUGIN_AUTH_PAM=DYNAMIC \
- -DPLUGIN_AUTH_SOCKET=DYNAMIC \
- -DPLUGIN_AUTH_TEST_PLUGIN=DYNAMIC \
- -DPLUGIN_AUTH_0X0100=DYNAMIC \
- -DPLUGIN_BLACKHOLE=DYNAMIC \
- -DPLUGIN_CLIENT_ED25519=DYNAMIC \
- -DPLUGIN_DAEMON_EXAMPLE=DYNAMIC \
- -DPLUGIN_DEBUG_KEY_MANAGEMENT=DYNAMIC \
- -DPLUGIN_DIALOG_EXAMPLES=DYNAMIC \
- -DPLUGIN_EXAMPLE=DYNAMIC \
- -DPLUGIN_EXAMPLE_KEY_MANAGEMENT=DYNAMIC \
- -DPLUGIN_FEDERATED=DYNAMIC \
- -DPLUGIN_FEDERATEDX=DYNAMIC \
- -DPLUGIN_FEEDBACK=DYNAMIC \
- -DPLUGIN_FILE_KEY_MANAGEMENT=DYNAMIC \
- -DPLUGIN_FTEXAMPLE=DYNAMIC \
- -DPLUGIN_HANDLERSOCKET=DYNAMIC \
- -DPLUGIN_LOCALES=DYNAMIC \
- -DPLUGIN_METADATA_LOCK_INFO=DYNAMIC \
- -DPLUGIN_QA_AUTH_CLIENT=DYNAMIC \
- -DPLUGIN_QA_AUTH_INTERFACE=DYNAMIC \
- -DPLUGIN_QA_AUTH_SERVER=DYNAMIC \
- -DPLUGIN_QUERY_CACHE_INFO=DYNAMIC \
- -DPLUGIN_QUERY_RESPONSE_TIME=DYNAMIC \
- -DPLUGIN_SEMISYNC_MASTER=DYNAMIC \
- -DPLUGIN_SEMISYNC_SLAVE=DYNAMIC \
- -DPLUGIN_SEQUENCE=DYNAMIC \
- -DPLUGIN_SERVER_AUDIT=DYNAMIC \
- -DPLUGIN_SIMPLE_PASSWORD_CHECK=DYNAMIC \
- -DPLUGIN_SPIDER=DYNAMIC \
- -DPLUGIN_SQL_ERRLOG=DYNAMIC \
- -DPLUGIN_TEST_SQL_DISCOVERY=DYNAMIC \
- -DPLUGIN_USER_VARIABLES=DYNAMIC \
- -DPLUGIN_WSREP_INFO=DYNAMIC \
%{?with_debug: -DCMAKE_BUILD_TYPE=Debug -DWITH_ASAN=OFF -DWITH_INNODB_EXTRA_DEBUG=ON
-DWITH_VALGRIND=ON} \
%{?_hardened_build: -DWITH_MYSQLD_LDFLAGS="-pie -Wl,-z,relro,-z,now"}
-# Following argumets leads to compile errors. Tracked as
https://jira.mariadb.org/browse/MDEV-14373
-# -DPLUGIN_INNOBASE=DYNAMIC \
-# -DPLUGIN_PARTITION=DYNAMIC \
-# -DPLUGIN_ARIA=DYNAMIC \
-# -DPLUGIN_PERFSCHEMA=DYNAMIC \
-
# Print all Cmake options values
cmake -L
@@ -1657,7 +1602,7 @@ fi
%endif
%changelog
-* Mon Nov 13 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.10-1
+* Mon Nov 20 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.10-1
- Rebase to 10.2.10 version
- Patch 2: mariadb-install-test.patch has been incorporated by upstream
- Patch 8: mariadb-install-db-sharedir.patch; upstream started to use macros
@@ -1668,6 +1613,7 @@ fi
Resolves: #1490401; #1400463
- Update of Cmake arguments to supported format
Related:
https://lists.launchpad.net/maria-discuss/msg04852.html
+- Remove false Provides
* Thu Oct 05 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.9-3
- Fix client library obsolete
commit 0c047c18a7607fb225c35088b8814c2ca30fa4f6
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Wed Nov 15 12:02:56 2017 +0100
Fix file removal on multilib systems
diff --git a/mariadb.spec b/mariadb.spec
index 0a259bc..0f806ce 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -1100,7 +1100,6 @@ rm
%{buildroot}%{_libdir}/%{pkg_name}/plugin/{dialog.so,mysql_clear_password.so,
%endif
%if %{without clibrary} || %{without devel}
-unlink %{buildroot}%{_bindir}/mysql_config
rm %{buildroot}%{_bindir}/mysql_config*
rm %{buildroot}%{_bindir}/mariadb_config
rm %{buildroot}%{_mandir}/man1/mysql_config*.1*
commit d82e5cb98533c58398a50f16efb111173230a1c1
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Mon Nov 13 09:18:22 2017 +0100
Divided to more sub-packages to match upstream's RPM list: #1490401; #1400463
Update of Cmake arguments to supported format:
https://lists.launchpad.net/maria-discuss/msg04852.htm
diff --git a/mariadb.spec b/mariadb.spec
index a2cafa7..0a259bc 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -20,28 +20,35 @@
%global _default_patch_flags --no-backup-if-mismatch
# TokuDB engine
-#
https://mariadb.com/kb/en/mariadb/tokudb/
-# TokuDB engine is available only for x86_64
-%ifarch x86_64
-%bcond_without tokudb
-%else
-%bcond_with tokudb
-%endif
-
+#
https://mariadb.com/kb/en/mariadb/tokudb/
+# TokuDB engine is available only for x86_64
# Mroonga engine
-#
https://mariadb.com/kb/en/mariadb/about-mroonga/
-# Actual version in MariaDB, 5.04, only supports the x86_64
-# Mroonga upstream warns about using 32-bit package:
http://mroonga.org/docs/install.html
+#
https://mariadb.com/kb/en/mariadb/about-mroonga/
+# Actual version in MariaDB, 5.04, only supports the x86_64
+# Mroonga upstream warns about using 32-bit package:
http://mroonga.org/docs/install.html
+# RocksDB engine
+#
https://mariadb.com/kb/en/library/myrocks-supported-platforms/
+# RocksB engine is available only for x86_64
%ifarch x86_64
+%bcond_without tokudb
%bcond_without mroonga
+%bcond_without rocksdb
%else
+%bcond_with tokudb
%bcond_with mroonga
+%bcond_with rocksdb
%endif
# The Open Query GRAPH engine (OQGRAPH) is a computation engine allowing
# hierarchies and more complex graph structures to be handled in a relational fashion
%bcond_without oqgraph
+# Other plugins
+%bcond_without cracklib
+%bcond_without gssapi
+%bcond_without connect
+%bcond_without sphinx
+
# For some use cases we do not need some parts of the package. Set to "...with"
to exclude
%bcond_without clibrary
%bcond_without embedded
@@ -51,8 +58,8 @@
%bcond_without errmsg
%bcond_without bench
%bcond_without test
-%bcond_without connect
%bcond_without galera
+%bcond_without backup
# When there is already another package that ships /etc/my.cnf,
# rather include it than ship the file again, since conflicts between
@@ -62,6 +69,8 @@
# For deep debugging we need to build binaries with extra debug info
%bcond_with debug
+
+
# Include files for SysV init or systemd
%if 0%{?fedora} >= 15 || 0%{?rhel} >= 7
%bcond_without init_systemd
@@ -179,29 +188,25 @@ Patch40: %{pkgnamepatch}-galera.cnf.patch
Patch43: %{pkgnamepatch}-recovery.patch
BuildRequires: cmake gcc-c++
+BuildRequires: zlib-devel
+BuildRequires: multilib-rpm-config
+BuildRequires: selinux-policy-devel
+
+# TokuDB and some core stuff
+BuildRequires: jemalloc-devel
+
+# asynchornous operations stuff
BuildRequires: libaio-devel
+# commands history features
BuildRequires: libedit-devel
+# CLI graphic
BuildRequires: ncurses-devel
+# debugging stuff
BuildRequires: systemtap-sdt-devel
-BuildRequires: zlib-devel
-BuildRequires: multilib-rpm-config
-BuildRequires: krb5-devel
-BuildRequires: selinux-policy-devel
%{?with_init_systemd:BuildRequires: systemd systemd-devel}
-# Sphinx storage engine
-#BuildRequires: sphinx libsphinxclient libsphinxclient-devel
# Bison SQL parser
BuildRequires: bison bison-devel
-# Jemalloc, used by TokuDB
-BuildRequires: jemalloc-devel
-
-# Cracklib plugin
-BuildRequires: cracklib-dicts cracklib-devel
-
-# Mariabackup
-BuildRequires: libarchive-devel
-
# auth_pam.so plugin will be build if pam-devel is installed
BuildRequires: pam-devel
# use either new enough version of pcre or provide bundles(pcre)
@@ -230,7 +235,7 @@ BuildRequires: perl(Time::HiRes)
BuildRequires: perl(Symbol)
# for running some openssl tests rhbz#1189180
BuildRequires: openssl openssl-devel
-Recommends: openssl
+Requires: openssl
Requires: bash coreutils grep
@@ -311,7 +316,7 @@ Provides: libmysqlclient.so.18(libmysqlclient_18)
The mariadb-libs package provides the essential shared libraries for any
MariaDB/MySQL client program or interface. You will need to install this
package to use any other MariaDB package or any clients that need to connect
-to a MariaDB/MySQL server. MariaDB is a community developed branch of MySQL.
+to a MariaDB/MySQL server.
%endif #clibrary
@@ -351,7 +356,6 @@ Obsoletes: mariadb-galera-common <
%{obsoleted_mariadb_galera_common_evr}
Obsoletes: %{name}-libs <= %{sameevr}
%endif
-
%description common
The package provides the essential shared files for any MariaDB program.
You will need to install this package to use any other MariaDB package.
@@ -380,6 +384,9 @@ Requires: %{name}-server%{?_isa} = %{sameevr}
Requires: galera >= 25.3.3
Requires(post): libselinux-utils
Requires(post): policycoreutils-python
+# wsrep requirements
+Requires: lsof
+Requires: rsync
# obsoletion of mariadb-galera-server
Provides: mariadb-galera-server = %{sameevr}
@@ -408,18 +415,23 @@ Requires: %{name}%{?_isa}
Requires: %{name}-common%{?_isa} = %{sameevr}
Requires: %{name}-errmsg%{?_isa} = %{sameevr}
Recommends: %{name}-server-utils%{?_isa} = %{sameevr}
+Recommends: %{name}-backup%{?_isa} = %{sameevr}
+Recommends: %{name}-craclkib-password-check%{?_isa} = %{sameevr}
+Recommends: %{name}-gssapi-server%{?_isa} = %{sameevr}
+Recommends: %{name}-rocksdb-engine%{?_isa} = %{sameevr}
+Recommends: %{name}-tokudb-engine%{?_isa} = %{sameevr}
+
Requires: %{_sysconfdir}/my.cnf
Requires: %{_sysconfdir}/my.cnf.d
+
# for fuser in mysql-check-socket
Requires: psmisc
+
Requires: coreutils
Requires(pre): /usr/sbin/useradd
-# Sphinx storage engine
-#Recommends: sphinx libsphinxclient
# Bison SQL parser
+# WHY?? (testsuite??)
Requires: bison
-# Cracklib plugin:
-Recommends: cracklib-dicts
%if %{with init_systemd}
# We require this to be present for %%{_tmpfilesdir}
@@ -429,9 +441,6 @@ Requires(pre): systemd
Requires(posttrans): systemd
%{?systemd_requires: %systemd_requires}
%endif
-# wsrep requirements
-Requires: lsof
-Requires: rsync
# RHBZ#1496131; use 'iproute' instead of 'net-tools'
Requires: iproute
%if %{with mysql_names}
@@ -485,6 +494,85 @@ or products (such as Excel), or data retrieved from the environment
%endif
+%if %{with backup}
+%package backup
+Summary: The mariabackup tool for physical online backups
+Group: Applications/Databases
+Requires: %{name}-server%{?_isa} = %{sameevr}
+BuildRequires: libarchive-devel
+
+%description backup
+MariaDB Backup is an open source tool provided by MariaDB for performing
+physical online backups of InnoDB, Aria and MyISAM tables.
+For InnoDB, "hot online" backups are possible.
+%endif
+
+
+%if %{with rocksdb}
+%package rocksdb-engine
+Summary: The RocksDB storage engine for MariaDB
+Group: Applications/Databases
+Requires: %{name}-server%{?_isa} = %{sameevr}
+
+%description rocksdb-engine
+The RocksDB storage engine is used for high performance servers on SSD drives.
+%endif
+
+
+%if %{with tokudb}
+%package tokudb-engine
+Summary: The TokuDB storage engine for MariaDB
+Group: Applications/Databases
+Requires: %{name}-server%{?_isa} = %{sameevr}
+
+%description tokudb-engine
+The TokuDB storage engine from Percona.
+%endif
+
+
+%if %{with cracklib}
+%package cracklib-password-check
+Summary: The password strength checking plugin
+Group: Applications/Databases
+Requires: %{name}-server%{?_isa} = %{sameevr}
+BuildRequires: cracklib-dicts cracklib-devel
+Requires: cracklib-dicts
+
+%description cracklib-password-check
+CrackLib is a password strength checking library. It is installed by default
+in many Linux distributions and is invoked automatically (by pam_cracklib.so)
+whenever the user login password is modified.
+Now, with the cracklib_password_check password validation plugin, one can
+also use it to check MariaDB account passwords.
+%endif
+
+
+%if %{with gssapi}
+%package gssapi-server
+Summary: GSSAPI authentication plugin for server
+Group: Applications/Databases
+Requires: %{name}-server%{?_isa} = %{sameevr}
+BuildRequires: krb5-devel
+
+%description gssapi-server
+GSSAPI authentication server-side plugin for MariaDB for passwordless login.
+This plugin includes support for Kerberos on Unix.
+%endif
+
+
+%if %{with sphinx}
+%package sphinx-engine
+Summary: The Sphinx storage engine for MariaDB
+Group: Applications/Databases
+Requires: %{name}-server%{?_isa} = %{sameevr}
+BuildRequires: sphinx libsphinxclient libsphinxclient-devel
+Requires: sphinx libsphinxclient
+
+%description sphinx-engine
+The Sphinx storage engine for MariaDB.
+%endif
+
+
%package server-utils
Summary: Non-essential server utilities for MariaDB/MySQL applications
Group: Applications/Databases
@@ -520,10 +608,16 @@ Provides: mysql-devel%{?_isa} = %{sameevr}
%{?with_conflicts:Conflicts: community-mysql-devel}
%description devel
-MariaDB is a multi-user, multi-threaded SQL database server. This
-package contains the libraries and header files that are needed for
-developing MariaDB/MySQL client applications.
+MariaDB is a multi-user, multi-threaded SQL database server.
MariaDB is a community developed branch of MySQL.
+%if %{with clibrary}
+This package contains everything needed for developing MariaDB/MySQL client
+and server applications.
+%else
+This package contains everything needed for developing MariaDB/MySQL server
+applications. For developing client applications, use mariadb-connector-c
+package.
+%endif
%endif
@@ -563,10 +657,10 @@ Provides: mysql-embedded-devel%{?_isa} = %{sameevr}
%{?obsoleted_mysql_evr:Obsoletes: mysql-embedded-devel < %{obsoleted_mysql_evr}}
%description embedded-devel
-MariaDB is a multi-user, multi-threaded SQL database server. This
-package contains files needed for developing and testing with
-the embedded version of the MariaDB server.
+MariaDB is a multi-user, multi-threaded SQL database server.
MariaDB is a community developed branch of MySQL.
+This package contains files needed for developing and testing with
+the embedded version of the MariaDB server.
%endif
@@ -584,10 +678,10 @@ Provides: mysql-bench%{?_isa} = %{sameevr}
%{?obsoleted_mysql_evr:Obsoletes: mysql-bench < %{obsoleted_mysql_evr}}
%description bench
-MariaDB is a multi-user, multi-threaded SQL database server. This
-package contains benchmark scripts and data for use when benchmarking
-MariaDB.
+MariaDB is a multi-user, multi-threaded SQL database server.
MariaDB is a community developed branch of MySQL.
+This package contains benchmark scripts and data for use when benchmarking
+MariaDB.
%endif
@@ -618,10 +712,10 @@ Provides: mysql-test%{?_isa} = %{sameevr}
%{?obsoleted_mysql_evr:Obsoletes: mysql-test < %{obsoleted_mysql_evr}}
%description test
-MariaDB is a multi-user, multi-threaded SQL database server. This
-package contains the regression test suite distributed with
-the MariaDB sources.
+MariaDB is a multi-user, multi-threaded SQL database server.
MariaDB is a community developed branch of MySQL.
+This package contains the regression test suite distributed with the MariaDB
+sources.
%endif
@@ -762,34 +856,75 @@ export LDFLAGS
-DINSTALL_SUPPORTFILESDIR=share/%{pkg_name} \
-DMYSQL_DATADIR="%{dbdatadir}" \
-DMYSQL_UNIX_ADDR="/var/lib/mysql/mysql.sock" \
+ -DTMPDIR=/var/tmp \
-DENABLED_LOCAL_INFILE=ON \
- -DENABLE_DTRACE=OFF \
- -DWITH_EMBEDDED_SERVER=ON \
+ -DENABLE_DTRACE=ON \
+ -DWITH_EMBEDDED_SERVER=%{?with_embedded:ON}%{!?with_embedded:OFF} \
+ -DWITH_MARIABACKUP=%{?with_backup:ON}%{!?with_backup:NO} \
+ -DWITH_UNIT_TESTS=%{?with_test:ON}%{!?with_test:NO} \
+ -DCONC_WITH_SSL=%{?with_clibrary:ON}%{!?with_clibrary:NO} \
-DWITH_SSL=system \
-DWITH_ZLIB=system \
- -DWITH_PCRE=%{?with_bundled_pcre:system}%{!?with_bundled_pcre:bundled} \
-DWITH_JEMALLOC=system \
- -DWITH_LIBARCHIVE=ON \
- -DWITH_MARIABACKUP=ON \
-%{!?with_tokudb: -DWITHOUT_TOKUDB=ON}\
-%{!?with_mroonga: -DWITHOUT_MROONGA=ON}\
-%{!?with_oqgraph: -DWITHOUT_OQGRAPH=ON}\
- -DTMPDIR=/var/tmp \
-%{?with_debug: -DCMAKE_BUILD_TYPE=Debug}\
+ -DPLUGIN_MROONGA=%{?with_mroonga:DYNAMIC}%{!?with_mroonga:NO} \
+ -DPLUGIN_OQGRAPH=%{?with_oqgraph:DYNAMIC}%{!?with_oqgraph:NO} \
+ -DPLUGIN_CRACKLIB_PASSWORD_CHECK=%{?with_cracklib:DYNAMIC}%{!?with_cracklib:NO}
\
+ -DPLUGIN_ROCKSDB=%{?with_rocksdb:DYNAMIC}%{!?with_rocksdb:NO} \
+ -DPLUGIN_SPHINX=%{?with_sphinx:DYNAMIC}%{!?with_sphinx:NO} \
+ -DPLUGIN_TOKUDB=%{?with_tokudb:DYNAMIC}%{!?with_tokudb:NO} \
+ -DPLUGIN_CONNECT=%{?with_connect:DYNAMIC}%{!?with_connect:NO} \
+ -DPLUGIN_ARCHIVE=DYNAMIC \
+ -DPLUGIN_AUDIT_NULL=DYNAMIC \
+ -DPLUGIN_AUTH_ED25519=DYNAMIC \
+ -DPLUGIN_AUTH_PAM=DYNAMIC \
+ -DPLUGIN_AUTH_SOCKET=DYNAMIC \
+ -DPLUGIN_AUTH_TEST_PLUGIN=DYNAMIC \
+ -DPLUGIN_AUTH_0X0100=DYNAMIC \
+ -DPLUGIN_BLACKHOLE=DYNAMIC \
+ -DPLUGIN_CLIENT_ED25519=DYNAMIC \
+ -DPLUGIN_DAEMON_EXAMPLE=DYNAMIC \
+ -DPLUGIN_DEBUG_KEY_MANAGEMENT=DYNAMIC \
+ -DPLUGIN_DIALOG_EXAMPLES=DYNAMIC \
+ -DPLUGIN_EXAMPLE=DYNAMIC \
+ -DPLUGIN_EXAMPLE_KEY_MANAGEMENT=DYNAMIC \
+ -DPLUGIN_FEDERATED=DYNAMIC \
+ -DPLUGIN_FEDERATEDX=DYNAMIC \
+ -DPLUGIN_FEEDBACK=DYNAMIC \
+ -DPLUGIN_FILE_KEY_MANAGEMENT=DYNAMIC \
+ -DPLUGIN_FTEXAMPLE=DYNAMIC \
+ -DPLUGIN_HANDLERSOCKET=DYNAMIC \
+ -DPLUGIN_LOCALES=DYNAMIC \
+ -DPLUGIN_METADATA_LOCK_INFO=DYNAMIC \
+ -DPLUGIN_QA_AUTH_CLIENT=DYNAMIC \
+ -DPLUGIN_QA_AUTH_INTERFACE=DYNAMIC \
+ -DPLUGIN_QA_AUTH_SERVER=DYNAMIC \
+ -DPLUGIN_QUERY_CACHE_INFO=DYNAMIC \
+ -DPLUGIN_QUERY_RESPONSE_TIME=DYNAMIC \
+ -DPLUGIN_SEMISYNC_MASTER=DYNAMIC \
+ -DPLUGIN_SEMISYNC_SLAVE=DYNAMIC \
+ -DPLUGIN_SEQUENCE=DYNAMIC \
+ -DPLUGIN_SERVER_AUDIT=DYNAMIC \
+ -DPLUGIN_SIMPLE_PASSWORD_CHECK=DYNAMIC \
+ -DPLUGIN_SPIDER=DYNAMIC \
+ -DPLUGIN_SQL_ERRLOG=DYNAMIC \
+ -DPLUGIN_TEST_SQL_DISCOVERY=DYNAMIC \
+ -DPLUGIN_USER_VARIABLES=DYNAMIC \
+ -DPLUGIN_WSREP_INFO=DYNAMIC \
+%{?with_debug: -DCMAKE_BUILD_TYPE=Debug -DWITH_ASAN=OFF -DWITH_INNODB_EXTRA_DEBUG=ON
-DWITH_VALGRIND=ON} \
%{?_hardened_build: -DWITH_MYSQLD_LDFLAGS="-pie -Wl,-z,relro,-z,now"}
-make %{?_smp_mflags} VERBOSE=1
+# Following argumets leads to compile errors. Tracked as
https://jira.mariadb.org/browse/MDEV-14373
+# -DPLUGIN_INNOBASE=DYNAMIC \
+# -DPLUGIN_PARTITION=DYNAMIC \
+# -DPLUGIN_ARIA=DYNAMIC \
+# -DPLUGIN_PERFSCHEMA=DYNAMIC \
+# Print all Cmake options values
+cmake -L
+
+make %{?_smp_mflags} VERBOSE=1
-# debuginfo extraction scripts fail to find source files in their real
-# location -- satisfy them by copying these files into location, which
-# is expected by scripts
-#for e in innobase xtradb ; do
-# for f in pars0grm.y pars0lex.l ; do
-# cp -p "storage/$e/pars/$f" "storage/$e/$f"
-# done
-#done
# build selinux policy
%if %{with galera}
@@ -817,7 +952,8 @@ ln -s mysql_config.1
%{buildroot}%{_mandir}/man1/mysql_config-%{__isa_bits}.1
fi
# Upstream install this into arch-independent directory
-# TODO: report to upstream
+# Reported to upstream as:
https://jira.mariadb.org/browse/MDEV-14340
+# TODO: check, if it changes location inside that file depending on values passed to
Cmake
mkdir -p %{buildroot}/%{_libdir}/pkgconfig
mv %{buildroot}/%{_datadir}/pkgconfig/*.pc %{buildroot}/%{_libdir}/pkgconfig
@@ -827,6 +963,7 @@ install -p -m 644 Docs/INFO_SRC %{buildroot}%{_libdir}/%{pkg_name}/
install -p -m 644 Docs/INFO_BIN %{buildroot}%{_libdir}/%{pkg_name}/
rm -r %{buildroot}%{_datadir}/doc/%{_pkgdocdirname}/MariaDB-server-%{version}/
+# Logfile creation
mkdir -p %{buildroot}%{logfiledir}
chmod 0750 %{buildroot}%{logfiledir}
touch %{buildroot}%{logfile}
@@ -843,9 +980,12 @@ install -D -p -m 0644 scripts/my.cnf
%{buildroot}%{_sysconfdir}/my.cnf
rm scripts/my.cnf
%endif
-# use different config file name for each variant of server
+# use different config file name for each variant of server (mariadb / mysql)
mv %{buildroot}%{_sysconfdir}/my.cnf.d/server.cnf
%{buildroot}%{_sysconfdir}/my.cnf.d/%{pkg_name}-server.cnf
+# remove SysV init script and a symlink to that, we pack our very own
+rm %{buildroot}%{_sysconfdir}/init.d/mysql
+rm %{buildroot}%{_libexecdir}/rcmysql
# install systemd unit files and scripts for handling server startup
%if %{with init_systemd}
install -D -p -m 644 scripts/mysql.service
%{buildroot}%{_unitdir}/%{daemon_name}.service
@@ -853,9 +993,8 @@ install -D -p -m 644 scripts/mysql@.service
%{buildroot}%{_unitdir}/%{daemon_nam
install -D -p -m 0644 scripts/mysql.tmpfiles.d %{buildroot}%{_tmpfilesdir}/%{name}.conf
%if 0%{?mysqld_pid_dir:1}
echo "d %{pidfiledir} 0755 mysql mysql -"
>>%{buildroot}%{_tmpfilesdir}/%{name}.conf
-%endif
-%endif
-
+%endif #pid
+%endif #systemd
# install SysV init script
%if %{with init_sysv}
install -D -p -m 755 scripts/mysql.init %{buildroot}%{daemondir}/%{daemon_name}
@@ -870,26 +1009,35 @@ install -p -m 644 scripts/mysql-scripts-common
%{buildroot}%{_libexecdir}/mysql-
install -p -m 755 scripts/mysql-wait-ready %{buildroot}%{_libexecdir}/mysql-wait-ready
%endif
-# install selinux policy
+# install aditional galera selinux policy
%if %{with galera}
install -p -m 644 -D selinux/%{name}-server-galera.pp
%{buildroot}%{_datadir}/selinux/packages/%{name}/%{name}-server-galera.pp
%endif
-# mysql-test includes one executable that doesn't belong under /usr/share,
-# so move it and provide a symlink
+# mysql-test includes one executable that doesn't belong under /usr/share, so move it
and provide a symlink
mv %{buildroot}%{_datadir}/mysql-test/lib/My/SafeProcess/my_safe_process
%{buildroot}%{_bindir}
ln -s ../../../../../bin/my_safe_process
%{buildroot}%{_datadir}/mysql-test/lib/My/SafeProcess/my_safe_process
+# Provide symlink expected by RH QA tests
+ln -s unstable-tests %{buildroot}%{_datadir}/mysql-test/rh-skipped-tests.list
+
# should move this to /etc/ ?
-rm %{buildroot}%{_bindir}/mysql_embedded
+# WHY??
+%{?with_embedded:rm %{buildroot}%{_bindir}/mysql_embedded} #upstream ships in client
+
rm %{buildroot}%{_libdir}/*.a
-rm %{buildroot}%{_datadir}/%{pkg_name}/binary-configure
-rm %{buildroot}%{_datadir}/%{pkg_name}/magic
-rm %{buildroot}%{_datadir}/%{pkg_name}/mysql.server
-rm %{buildroot}%{_datadir}/%{pkg_name}/mysqld_multi.server
-rm %{buildroot}%{_mandir}/man1/mysql-stress-test.pl.1*
-rm %{buildroot}%{_mandir}/man1/mysql-test-run.pl.1*
-rm %{buildroot}%{_bindir}/mytop
+rm %{buildroot}%{_datadir}/%{pkg_name}/binary-configure #This script creates the MySQL
system tables and starts the server.
+
+# WHY??
+rm %{buildroot}%{_datadir}/%{pkg_name}/magic #FS files first-bytes recoginiton?
+
+rm %{buildroot}%{_datadir}/%{pkg_name}/mysql.server #Usage: mysql.server
{start|stop|restart|reload|force-reload|status|configtest|bootstrap} [ MySQL server
options ]
+rm %{buildroot}%{_datadir}/%{pkg_name}/mysqld_multi.server #Can't execute
/usr/local/mysql/bin/mysqld_multi from dir /usr/local/mysql
+
+# WHY??
+rm %{buildroot}%{_bindir}/mytop #not shipped by upstream
+
+
# put logrotate script where it needs to be
mkdir -p %{buildroot}%{logrotateddir}
@@ -906,45 +1054,39 @@ install -p -m 0644 %{SOURCE71} %{basename:%{SOURCE71}}
# install galera config file
sed -i -r
's|^wsrep_provider=none|wsrep_provider=%{_libdir}/galera/libgalera_smm.so|'
support-files/wsrep.cnf
install -p -m 0644 support-files/wsrep.cnf
%{buildroot}%{_sysconfdir}/my.cnf.d/galera.cnf
-
# install the clustercheck script
mkdir -p %{buildroot}%{_sysconfdir}/sysconfig
touch %{buildroot}%{_sysconfdir}/sysconfig/clustercheck
install -p -m 0755 scripts/clustercheck %{buildroot}%{_bindir}/clustercheck
-
# install the galera_new_cluster script anyway
%if %{without init_systemd}
install -p -m 0755 scripts/galera_new_cluster %{buildroot}%{_bindir}/galera_new_cluster
%endif
-# remove SysV init script and a symlink to that
-rm %{buildroot}%{_sysconfdir}/init.d/mysql
-rm %{buildroot}%{_libexecdir}/rcmysql
-
# remove duplicate logrotate script
rm %{buildroot}%{_sysconfdir}/logrotate.d/mysql
-
-# rename the wsrep README so it corresponds with the other README names
-cp Docs/README-wsrep Docs/README.wsrep
-
# remove *.jar file from mysql-test
rm -r %{buildroot}%{_datadir}/mysql-test/plugin/connect/connect/std_data/JdbcMariaDB.jar
rm -r %{buildroot}%{_datadir}/mysql-test/plugin/connect/connect/std_data/Mongo2.jar
rm -r %{buildroot}%{_datadir}/mysql-test/plugin/connect/connect/std_data/Mongo3.jar
+# Remove AppArmor files
+rm -r %{buildroot}%{_datadir}/%{pkg_name}/policy/apparmor
# script without shebang:
https://jira.mariadb.org/browse/MDEV-14266
chmod -x %{buildroot}%{_datadir}/sql-bench/myisam.cnf
-# Remove AppArmor files
-rm -r %{buildroot}%{_datadir}/%{pkg_name}/policy/apparmor
-
# Disable plugins
+%if %{with ggsapi}
sed -i 's/^plugin-load-add/#plugin-load-add/'
%{buildroot}%{_sysconfdir}/my.cnf.d/auth_gssapi.cnf
+%endif
+%if %{with cracklib}
sed -i 's/^plugin-load-add/#plugin-load-add/'
%{buildroot}%{_sysconfdir}/my.cnf.d/cracklib_password_check.cnf
+%endif
+
+%if %{without embedded}
+rm %{buildroot}%{_mandir}/man1/{mysql_client_test_embedded,mysqltest_embedded}.1*
+%endif
-# install the list of skipped tests to be available for user runs
-install -p -m 0644 mysql-test/unstable-tests %{buildroot}%{_datadir}/mysql-test
-ln -s unstable-tests %{buildroot}%{_datadir}/mysql-test/rh-skipped-tests.list
%if %{without clibrary}
rm %{buildroot}%{_sysconfdir}/my.cnf.d/client.cnf
@@ -957,66 +1099,43 @@ unlink %{buildroot}%{_libdir}/libmariadb.so
rm
%{buildroot}%{_libdir}/%{pkg_name}/plugin/{dialog.so,mysql_clear_password.so,sha256_password.so,auth_gssapi_client.so}
%endif
-%if %{without embedded}
-rm %{buildroot}%{_libdir}/%{pkg_name}/libmysqld.so*
-rm %{buildroot}%{_bindir}/{mysql_client_test_embedded,mysqltest_embedded}
-rm %{buildroot}%{_mandir}/man1/{mysql_client_test_embedded,mysqltest_embedded}.1*
-%endif
-
-%if %{without devel}
+%if %{without clibrary} || %{without devel}
unlink %{buildroot}%{_bindir}/mysql_config
rm %{buildroot}%{_bindir}/mysql_config*
rm %{buildroot}%{_bindir}/mariadb_config
-rm -r %{buildroot}%{_includedir}/mysql
-rm %{buildroot}%{_datadir}/aclocal/mysql.m4
-rm %{buildroot}%{_libdir}/pkgconfig/mariadb.pc
rm %{buildroot}%{_mandir}/man1/mysql_config*.1*
unlink %{buildroot}%{_mandir}/man1/mariadb_config.1*
-%else
-%if %{with clibrary}
-# Create symlinks to the 'libmariadb' library, for compatibility reasons
-# Note: the -libs subpackage has Provides: for this compat symlink; when
-# it is removed, they should also be removed
-pushd %{buildroot}%{_libdir}
-#ln -s libmariadb.so libmysqlclient.so
-ln -s libmariadb.so.3 libmysqlclient.so.18
-#ln -s libmariadb.so libmysqlclient_r.so
-popd
-%else
-# This file is already included in mariadb-connector-c
-rm %{buildroot}%{_includedir}/mysql/mysql_version.h
+%endif
-rm %{buildroot}%{_bindir}/*_config*
-rm %{buildroot}%{_mandir}/man1/*_config*
-#rm -r %{buildroot}%{_libdir}/mysql/libmysqlclient*.so*
+%if %{without clibrary} && %{with devel}
+# This files are already included in mariadb-connector-c
+rm %{buildroot}%{_includedir}/mysql/mysql_version.h
rm %{buildroot}%{_includedir}/mysql/{errmsg.h,ma_list.h,ma_pvio.h,mariadb_com.h,\
mariadb_ctype.h,mariadb_dyncol.h,mariadb_stmt.h,mariadb_version.h,ma_tls.h,mysqld_error.h,mysql.h}
rm -r %{buildroot}%{_includedir}/mysql/{mariadb,mysql}
%endif
-%endif
+
+%if %{without devel}
+rm -r %{buildroot}%{_includedir}/mysql
+rm %{buildroot}%{_datadir}/aclocal/mysql.m4
+rm %{buildroot}%{_libdir}/pkgconfig/mariadb.pc
+%if %{with clibrary}
+rm %{buildroot}%{_libdir}/libmariadb*.so
+unlink %{buildroot}%{_libdir}/libmysqlclient.so
+unlink %{buildroot}%{_libdir}/libmysqlclient_r.so
+%endif # clibrary
+%endif # devel
%if %{without client}
rm %{buildroot}%{_bindir}/{msql2mysql,mysql,mysql_find_rows,\
mysql_plugin,mysql_waitpid,mysqlaccess,mysqladmin,mysqlbinlog,mysqlcheck,\
-mysqldump,mysqlimport,mysqlshow,mysqlslap,my_print_defaults}
+mysqldump,mysqlimport,mysqlshow,mysqlslap}
rm %{buildroot}%{_mandir}/man1/{msql2mysql,mysql,mysql_find_rows,\
mysql_plugin,mysql_waitpid,mysqlaccess,mysqladmin,mysqlbinlog,mysqlcheck,\
-mysqldump,mysqlimport,mysqlshow,mysqlslap,my_print_defaults}.1*
-%endif
-
-%if %{without connect}
-rm %{buildroot}%{_sysconfdir}/my.cnf.d/connect.cnf
-%endif
-
-%if %{without oqgraph}
-rm %{buildroot}%{_sysconfdir}/my.cnf.d/oqgraph.cnf
+mysqldump,mysqlimport,mysqlshow,mysqlslap}.1*
%endif
%if %{without tokudb}
-%ifarch x86_64
-rm %{buildroot}%{_bindir}/tokuftdump
-rm %{buildroot}%{_bindir}/tokuft_logprint
-%endif
# because upstream ships manpages for tokudb even on architectures that tokudb
doesn't support
rm %{buildroot}%{_mandir}/man1/tokuftdump.1*
rm %{buildroot}%{_mandir}/man1/tokuft_logdump.1*
@@ -1032,6 +1151,10 @@ rm %{buildroot}%{_sysconfdir}/my.cnf.d/enable_encryption.preset
rm -r %{buildroot}%{_datadir}/%{pkg_name}/charsets
%endif
+%if %{without gssapi}
+rm -r %{buildroot}/etc/my.cnf.d/auth_gssapi.cnf
+%endif
+
%if %{without errmsg}
rm %{buildroot}%{_datadir}/%{pkg_name}/errmsg-utf8.txt
rm -r %{buildroot}%{_datadir}/%{pkg_name}/{english,czech,danish,dutch,estonian,\
@@ -1044,10 +1167,15 @@ rm -r %{buildroot}%{_datadir}/sql-bench
%endif
%if %{without test}
-rm %{buildroot}%{_bindir}/{mysql_client_test,my_safe_process}
+%if %{with embedded}
+rm %{buildroot}%{_bindir}/{mysqltest_embedded,mysql_client_test_embedded}
+rm %{buildroot}%{_mandir}/man1/{mysqltest_embedded,mysql_client_test_embedded}.1*
+%endif # embedded
+rm %{buildroot}%{_bindir}/{mysql_client_test,my_safe_process,mysqltest}
+rm %{buildroot}%{_mandir}/man1/{mysql_client_test,my_safe_process,mysqltest}.1*
+rm %{buildroot}%{_mandir}/man1/{mysql-test-run,mysql-stress-test}.pl.1*
rm -r %{buildroot}%{_datadir}/mysql-test
-rm %{buildroot}%{_mandir}/man1/mysql_client_test.1*
-%endif
+%endif # test
%if %{without galera}
rm %{buildroot}%{_sysconfdir}/my.cnf.d/galera.cnf
@@ -1098,8 +1226,10 @@ export MTR_BUILD_THREAD=%{__isa_bits}
%endif
)
-%endif
-%endif
+%endif # if dry run
+%endif # with test
+
+
%pre server
/usr/sbin/groupadd -g 27 -o -r mysql >/dev/null 2>&1 || :
@@ -1170,6 +1300,8 @@ if [ $1 -ge 1 ]; then
fi
%endif
+
+
%if %{with client}
%files
%{_bindir}/msql2mysql
@@ -1185,7 +1317,6 @@ fi
%{_bindir}/mysqlimport
%{_bindir}/mysqlshow
%{_bindir}/mysqlslap
-%{_bindir}/my_print_defaults
%{_mandir}/man1/msql2mysql.1*
%{_mandir}/man1/mysql.1*
@@ -1200,13 +1331,12 @@ fi
%{_mandir}/man1/mysqlimport.1*
%{_mandir}/man1/mysqlshow.1*
%{_mandir}/man1/mysqlslap.1*
-%{_mandir}/man1/my_print_defaults.1*
%endif
%if %{with clibrary}
%files libs
%{_libdir}/libmariadb.so.*
-%{_libdir}/libmysqlclient.so.18
+%{?with_devel:%{_libdir}/{libmysqlclient.so.18,libmariadb.so,libmysqlclient.so,libmysqlclient_r.so}}
%config(noreplace) %{_sysconfdir}/my.cnf.d/client.cnf
%endif
@@ -1225,10 +1355,10 @@ fi
%doc %{_datadir}/doc/%{_pkgdocdirname}
%dir %{_datadir}/%{pkg_name}
%{_datadir}/%{pkg_name}/charsets
-%if %{with devel} && %{with errmsg} && %{with galera} && %{with
config} && %{with clibrary}
+%if %{with clibrary}
%{_libdir}/%{pkg_name}/plugin/dialog.so
%{_libdir}/%{pkg_name}/plugin/mysql_clear_password.so
-%endif # devel && errmsg && galera && config
+%endif # clibrary
%endif # common
%if %{with errmsg}
@@ -1262,7 +1392,7 @@ fi
%if %{with galera}
%files server-galera
-%doc Docs/README.wsrep
+%doc Docs/README-wsrep
%license LICENSE.clustercheck
%{_bindir}/clustercheck
%{_bindir}/galera_new_cluster
@@ -1283,15 +1413,14 @@ fi
%{_bindir}/aria_ftdump
%{_bindir}/aria_pack
%{_bindir}/aria_read_log
-%{_bindir}/mariabackup
%if %{with init_systemd}
%{_bindir}/mariadb-service-convert
%endif
-%{_bindir}/mbstream
%{_bindir}/myisamchk
%{_bindir}/myisam_ftdump
%{_bindir}/myisamlog
%{_bindir}/myisampack
+%{_bindir}/my_print_defaults
%{_bindir}/mysql_install_db
%{_bindir}/mysql_secure_installation
%{_bindir}/mysql_tzinfo_to_sql
@@ -1307,21 +1436,8 @@ fi
%{_bindir}/wsrep_sst_rsync
%{_bindir}/wsrep_sst_xtrabackup
%{_bindir}/wsrep_sst_xtrabackup-v2
-%{?with_tokudb:%{_bindir}/tokuftdump}
-%{?with_tokudb:%{_bindir}/tokuft_logprint}
%config(noreplace) %{_sysconfdir}/my.cnf.d/%{pkg_name}-server.cnf
-%config(noreplace) %{_sysconfdir}/my.cnf.d/auth_gssapi.cnf
-%{?with_tokudb:%config(noreplace) %{_sysconfdir}/my.cnf.d/tokudb.cnf}
-# Cracklib plugin
-%config(noreplace) %{_sysconfdir}/my.cnf.d/cracklib_password_check.cnf
-# RocksDB engine
-%if %{with rocksdb}
-%config(noreplace) %{_sysconfdir}/my.cnf.d/rocksdb.cnf
-%{_bindir}/mysql_ldb
-%{_bindir}/sst_dump
-%endif
-
%{_libexecdir}/mysqld
@@ -1336,8 +1452,15 @@ fi
%{_libdir}/%{pkg_name}/plugin/*
%{?with_oqgraph:%exclude %{_libdir}/%{pkg_name}/plugin/ha_oqgraph.so}
%{?with_connect:%exclude %{_libdir}/%{pkg_name}/plugin/ha_connect.so}
+%{?with_cracklib:%exclude %{_libdir}/%{pkg_name}/plugin/cracklib_password_check.so}
+%{?with_rocksdb:%exclude %{_libdir}/%{pkg_name}/plugin/ha_rocksdb.so}
+%{?with_tokudb:%exclude %{_libdir}/%{pkg_name}/plugin/ha_tokudb.so}
+%{?with_ggsapi:%exclude %{_libdir}/%{pkg_name}/plugin/auth_gssapi.so}
+%{?with_sphinx:%exclude %{_libdir}/%{pkg_name}/plugin/ha_sphinx.so}
+%if %{with clibrary}
%exclude %{_libdir}/%{pkg_name}/plugin/dialog.so
%exclude %{_libdir}/%{pkg_name}/plugin/mysql_clear_password.so
+%endif
%{_mandir}/man1/aria_chk.1*
%{_mandir}/man1/aria_dump_log.1*
@@ -1351,20 +1474,18 @@ fi
%{_mandir}/man1/myisamlog.1*
%{_mandir}/man1/myisampack.1*
%{_mandir}/man1/myisam_ftdump.1*
+%{_mandir}/man1/my_print_defaults.1*
%{_mandir}/man1/mysql.server.1*
%{_mandir}/man1/mysql_install_db.1*
%{_mandir}/man1/mysql_secure_installation.1*
%{_mandir}/man1/mysql_tzinfo_to_sql.1*
%{_mandir}/man1/mysqld_safe.1*
%{_mandir}/man1/mysqld_safe_helper.1*
-%{_mandir}/man1/my_safe_process.1*
%{_mandir}/man1/innochecksum.1*
%{_mandir}/man1/replace.1*
%{_mandir}/man1/resolveip.1*
%{_mandir}/man1/resolve_stack_dump.1*
%{_mandir}/man8/mysqld.8*
-%{?with_tokudb:%{_mandir}/man1/tokuftdump.1*}
-%{?with_tokudb:%{_mandir}/man1/tokuft_logdump.1*}
%{_mandir}/man1/wsrep_sst_common.1*
%{_mandir}/man1/wsrep_sst_mysqldump.1*
%{_mandir}/man1/wsrep_sst_rsync.1*
@@ -1414,6 +1535,47 @@ fi
%attr(0640,mysql,mysql) %config %ghost %verify(not md5 size mtime) %{logfile}
%config(noreplace) %{logrotateddir}/%{daemon_name}
+%if %{with cracklib}
+%files cracklib-password-check
+%config(noreplace) %{_sysconfdir}/my.cnf.d/cracklib_password_check.cnf
+%{_libdir}/%{pkg_name}/plugin/cracklib_password_check.so
+%endif
+
+%if %{with backup}
+%files backup
+%{_bindir}/mariabackup
+%{_bindir}/mbstream
+%endif
+
+%if %{with rocksdb}
+%files rocksdb-engine
+%config(noreplace) %{_sysconfdir}/my.cnf.d/rocksdb.cnf
+%{_bindir}/mysql_ldb
+%{_bindir}/sst_dump
+%{_libdir}/%{pkg_name}/plugin/ha_rocksdb.so
+%endif
+
+%if %{with tokudb}
+%files tokudb-engine
+%{_bindir}/tokuftdump
+%{_bindir}/tokuft_logprint
+%{_mandir}/man1/tokuftdump.1*
+%{_mandir}/man1/tokuft_logdump.1*
+%config(noreplace) %{_sysconfdir}/my.cnf.d/tokudb.cnf
+%{_libdir}/%{pkg_name}/plugin/ha_tokudb.so
+%endif
+
+%if %{with gssapi}
+%files gssapi-server
+%{_libdir}/%{pkg_name}/plugin/auth_gssapi.so
+%config(noreplace) %{_sysconfdir}/my.cnf.d/auth_gssapi.cnf
+%endif
+
+%if %{with sphinx}
+%files sphinx-engine
+%{_libdir}/%{pkg_name}/plugin/ha_sphinx.so
+%endif
+
%if %{with oqgraph}
%files oqgraph-engine
%config(noreplace) %{_sysconfdir}/my.cnf.d/oqgraph.cnf
@@ -1442,10 +1604,8 @@ fi
%{_mandir}/man1/mysql_setpermission.1*
# Utilities that can be used remotely
%{_bindir}/mysql_upgrade
-%{_bindir}/mysqltest
%{_bindir}/perror
%{_mandir}/man1/mysql_upgrade.1*
-%{_mandir}/man1/mysqltest.1*
%{_mandir}/man1/perror.1*
# Other utilities
%{_bindir}/mysqld_safe_helper
@@ -1472,19 +1632,11 @@ fi
%files embedded-devel
%{_libdir}/libmysqld.so
-%{_bindir}/mysql_client_test_embedded
-%{_bindir}/mysqltest_embedded
-%{_mandir}/man1/mysql_client_test_embedded.1*
-%{_mandir}/man1/mysqltest_embedded.1*
%endif
%if %{with bench}
%files bench
%{_datadir}/sql-bench
-#TODO: do a sanity check
-%exclude %{_datadir}/sql-bench/README
-# RPMLINT W:
-# mariadb-bench.x86_64: W: no-documentation
%doc %{_datadir}/sql-bench/README
%endif
@@ -1492,18 +1644,31 @@ fi
%files test
%{_bindir}/mysql_client_test
%{_bindir}/my_safe_process
+%{_bindir}/mysql_client_test_embedded
+%{_bindir}/mysqltest
+%{_bindir}/mysqltest_embedded
%attr(-,mysql,mysql) %{_datadir}/mysql-test
%{_mandir}/man1/mysql_client_test.1*
+%{_mandir}/man1/my_safe_process.1*
+%{_mandir}/man1/mysql_client_test_embedded.1*
+%{_mandir}/man1/mysqltest.1*
+%{_mandir}/man1/mysqltest_embedded.1*
+%{_mandir}/man1/mysql-stress-test.pl.1*
+%{_mandir}/man1/mysql-test-run.pl.1*
%endif
%changelog
-* Wed Nov 01 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.10-1
+* Mon Nov 13 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.10-1
- Rebase to 10.2.10 version
- Patch 2: mariadb-install-test.patch has been incorporated by upstream
- Patch 8: mariadb-install-db-sharedir.patch; upstream started to use macros
- Update PCRE check
- Start using location libdir/mariadb for plugins
- Move libraries to libdir
+- Divided to more sub-packages to match upstream's RPM list
+ Resolves: #1490401; #1400463
+- Update of Cmake arguments to supported format
+ Related:
https://lists.launchpad.net/maria-discuss/msg04852.html
* Thu Oct 05 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.9-3
- Fix client library obsolete
commit be7f9270916d54b29bb92ffab7054d68f28168ff
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Mon Nov 6 16:06:33 2017 +0100
Added JIRA issue trackers
diff --git a/mariadb.spec b/mariadb.spec
index e75403b..a2cafa7 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -932,8 +932,7 @@ rm -r
%{buildroot}%{_datadir}/mysql-test/plugin/connect/connect/std_data/JdbcMar
rm -r %{buildroot}%{_datadir}/mysql-test/plugin/connect/connect/std_data/Mongo2.jar
rm -r %{buildroot}%{_datadir}/mysql-test/plugin/connect/connect/std_data/Mongo3.jar
-# RPMLINT E:
-# mariadb-bench.x86_64: E: script-without-shebang /usr/share/sql-bench/myisam.cnf
+# script without shebang:
https://jira.mariadb.org/browse/MDEV-14266
chmod -x %{buildroot}%{_datadir}/sql-bench/myisam.cnf
# Remove AppArmor files
@@ -1301,6 +1300,7 @@ fi
%{_bindir}/replace
%{_bindir}/resolve_stack_dump
%{_bindir}/resolveip
+# wsrep_sst_common should be moved to /usr/share/mariadb:
https://jira.mariadb.org/browse/MDEV-14296
%{_bindir}/wsrep_sst_common
%{_bindir}/wsrep_sst_mariabackup
%{_bindir}/wsrep_sst_mysqldump
commit cc70eb14e361b9bc0ef2f77df64ddd038cf6e72c
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Mon Nov 6 13:31:33 2017 +0100
Compatibility fix
diff --git a/mariadb.spec b/mariadb.spec
index 71b65c3..e75403b 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -80,7 +80,7 @@
# MariaDB 10.0 and later requires pcre >= 8.35, otherwise we need to use
# the bundled library, since the package cannot be build with older version
-%if 0%{?fedora} >= 21
+%if 0%{?fedora} >= 21 || 0%{?rhel} > 7
%bcond_without bundled_pcre
%else
%bcond_with bundled_pcre
commit c9e70d5f1447e0bd023c860adb5649559ed2488e
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Fri Nov 3 03:41:33 2017 +0100
Rebase to 10.2.10 version
Patch 2: mariadb-install-test.patch has been incorporated by upstream
Patch 8: mariadb-install-db-sharedir.patch; upstream started to use macros
Update PCRE check
Start using location libdir/mariadb for plugins
Move libraries to libdir
Update unstable tests list
diff --git a/mariadb-install-db-sharedir.patch b/mariadb-install-db-sharedir.patch
deleted file mode 100644
index 77a90e7..0000000
--- a/mariadb-install-db-sharedir.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-Use configured value instead of hardcoded path
-
-diff -up mariadb-10.1.18/scripts/mysql_install_db.pl.in.pbasedir
mariadb-10.1.18/scripts/mysql_install_db.pl.in
---- mariadb-10.1.18/scripts/mysql_install_db.pl.in.pbasedir 2016-10-04 19:03:15.562101826
+0200
-+++ mariadb-10.1.18/scripts/mysql_install_db.pl.in 2016-10-04 19:04:47.833130195 +0200
-@@ -320,7 +320,7 @@ elsif ( $opt->{basedir} )
- find_in_basedir($opt,"file","mysqld-nt",
- "bin"); # ,"sql"
- $srcpkgdatadir =
find_in_basedir($opt,"dir","fill_help_tables.sql",
-- "share","share/mysql"); #
,"scripts"
-+
"share","@INSTALL_MYSQLSHAREDIR@"); # ,"scripts"
- $buildpkgdir = $srcpkgdatadir;
- $scriptdir = "$opt->{basedir}/scripts";
- }
-diff -up mariadb-10.1.18/scripts/mysql_install_db.sh.pbasedir
mariadb-10.1.18/scripts/mysql_install_db.sh
---- mariadb-10.1.18/scripts/mysql_install_db.sh.pbasedir 2016-10-04 19:03:22.714104025
+0200
-+++ mariadb-10.1.18/scripts/mysql_install_db.sh 2016-10-04 19:08:11.457186833 +0200
-@@ -283,17 +283,17 @@ then
- cannot_find_file mysqld $basedir/libexec $basedir/sbin $basedir/bin
- exit 1
- fi
-- langdir=`find_in_basedir --dir errmsg.sys share/english share/mysql/english`
-+ langdir=`find_in_basedir --dir errmsg.sys share/english
@INSTALL_MYSQLSHAREDIR@/english`
- if test -z "$langdir"
- then
-- cannot_find_file errmsg.sys $basedir/share/english $basedir/share/mysql/english
-+ cannot_find_file errmsg.sys $basedir/share/english
$basedir/@INSTALL_MYSQLSHAREDIR@/english
- exit 1
- fi
-- srcpkgdatadir=`find_in_basedir --dir fill_help_tables.sql share share/mysql`
-+ srcpkgdatadir=`find_in_basedir --dir fill_help_tables.sql share
@INSTALL_MYSQLSHAREDIR@`
- buildpkgdatadir=$srcpkgdatadir
- if test -z "$srcpkgdatadir"
- then
-- cannot_find_file fill_help_tables.sql $basedir/share $basedir/share/mysql
-+ cannot_find_file fill_help_tables.sql $basedir/share
$basedir/@INSTALL_MYSQLSHAREDIR@
- exit 1
- fi
- scriptdir="$basedir/scripts"
diff --git a/mariadb-install-test.patch b/mariadb-install-test.patch
deleted file mode 100644
index 1797474..0000000
--- a/mariadb-install-test.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-Improve the documentation that will be installed in the mysql-test RPM.
-
---- mariadb-10.1.13/mysql-test/README.orig 2016-03-24 10:12:10.000000000 +0100
-+++ mariadb-10.1.13/mysql-test/README 2016-03-29 10:23:30.074326900 +0200
-@@ -1,15 +1,28 @@
--This directory contains a test suite for the MySQL daemon. To run
--the currently existing test cases, simply execute ./mysql-test-run in
--this directory. It will fire up the newly built mysqld and test it.
--
--Note that you do not have to have to do "make install", and you could
--actually have a co-existing MySQL installation. The tests will not
--conflict with it. To run the test suite in a source directory, you
--must do make first.
--
--All tests must pass. If one or more of them fail on your system, please
--read the following manual section for instructions on how to report the
--problem:
-+This directory contains a test suite for the MariaDB daemon. To run
-+the currently existing test cases, execute ./mysql-test-run in
-+this directory.
-+
-+For use in Red Hat distributions, you should run the script as user mysql,
-+who is created with nologin shell however, so the best bet is something like
-+ $ su -
-+ # cd /usr/share/mysql-test
-+ # su -s /bin/bash mysql -c "./mysql-test-run
--skip-test-list=unstable-tests"
-+
-+This will use the installed mysql executables, but will run a private copy
-+of the server process (using data files within /usr/share/mysql-test),
-+so you need not start the mysqld service beforehand.
-+
-+The "--skip-test-list=unstable-tests" option excludes tests that are
-+known to fail on one or more Red-Hat-supported platforms. You can omit it
-+if you want to check whether such failures occur for you. Documentation
-+about the reasons for omitting such tests can be found in the file
-+unstable-tests.
-+
-+To clean up afterwards, remove the created "var" subdirectory, eg
-+ # su -s /bin/bash - mysql -c "rm -rf /usr/share/mysql-test/var"
-+
-+If one or more tests fail on your system, please read the following manual
-+section for instructions on how to report the problem:
-
-
https://mariadb.com/kb/en/reporting-bugs
-
-@@ -26,7 +39,8 @@ other relevant options.
-
- With no test cases named on the command line, mysql-test-run falls back
- to the normal "non-extern" behavior. The reason for this is that some
--tests cannot run with an external server.
-+tests cannot run with an external server (because they need to control the
-+options with which the server is started).
-
- You can create your own test cases. To create a test case, create a new
- file in the t subdirectory using a text editor. The file should have a .test
diff --git a/mariadb.spec b/mariadb.spec
index 8701125..71b65c3 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -60,8 +60,7 @@
%bcond_without config
# For deep debugging we need to build binaries with extra debug info
-# Does not work at this time:
https://jira.mariadb.org/browse/MDEV-13986
-%bcond_with debug
+%bcond_with debug
# Include files for SysV init or systemd
%if 0%{?fedora} >= 15 || 0%{?rhel} >= 7
@@ -81,11 +80,11 @@
# MariaDB 10.0 and later requires pcre >= 8.35, otherwise we need to use
# the bundled library, since the package cannot be build with older version
-%global pcre_version 8.41
%if 0%{?fedora} >= 21
-%bcond_without pcre
+%bcond_without bundled_pcre
%else
-%bcond_with pcre
+%bcond_with bundled_pcre
+%global pcre_bundled_version 8.41
%endif
# We define some system's well known locations here so we can use them easily
@@ -123,11 +122,11 @@
# Make long macros shorter
%global sameevr %{epoch}:%{version}-%{release}
%global compatver 10.2
-%global bugfixver 9
+%global bugfixver 10
Name: mariadb
Version: %{compatver}.%{bugfixver}
-Release: 3%{?with_debug:.debug}%{?dist}
+Release: 1%{?with_debug:.debug}%{?dist}
Epoch: 3
Summary: A community developed branch of MySQL
@@ -163,16 +162,11 @@ Source71: LICENSE.clustercheck
#
https://jira.mariadb.org/browse/MDEV-12646
Source72: mariadb-server-galera.te
-# Patch2: testsuite README update, introducing skipped-tests.list
-# upstream questioned, if they are insterested:
https://jira.mariadb.org/browse/MDEV-12263
-Patch2: %{pkgnamepatch}-install-test.patch
# Patch4: Red Hat distributions specific logrotate fix
# it would be big unexpected change, if we start shipping it now. Better wait for
MariaDB 10.2
Patch4: %{pkgnamepatch}-logrotate.patch
# Patch7: add to the CMake file all files where we want macros to be expanded
Patch7: %{pkgnamepatch}-scripts.patch
-# Patch8: resolve conflict, when we combine MariaDB and MySQL packages
-Patch8: %{pkgnamepatch}-install-db-sharedir.patch
# Patch9: pre-configure to comply with guidelines
Patch9: %{pkgnamepatch}-ownsetup.patch
@@ -211,8 +205,8 @@ BuildRequires: libarchive-devel
# auth_pam.so plugin will be build if pam-devel is installed
BuildRequires: pam-devel
# use either new enough version of pcre or provide bundles(pcre)
-%{?with_pcre:BuildRequires: pcre-devel >= 8.35}
-%{!?with_pcre:Provides: bundled(pcre) = %{pcre_version}}
+%{?with_bundled_pcre:BuildRequires: pcre-devel >= 8.35 pkgconf}
+%{?without_bundled_pcre:Provides: bundled(pcre) = %{pcre_bundled_version}}
# Few utilities needs Perl
%if 0%{?fedora} >= 22 || 0%{?rhel} > 7
BuildRequires: perl-interpreter
@@ -271,10 +265,10 @@ Obsoletes: mariadb-galera < %{obsoleted_mariadb_galera_evr}
# Filtering:
https://fedoraproject.org/wiki/Packaging:AutoProvidesAndRequiresFiltering
%if 0%{?fedora} > 14 || 0%{?rhel} > 6
%global __requires_exclude ^perl\\((hostnames|lib::mtr|lib::v1|mtr_|My::)
-%global __provides_exclude_from
^(%{_datadir}/(mysql|mysql-test)/.*|%{_libdir}/mysql/plugin/.*\\.so)$
+%global __provides_exclude_from
^(%{_datadir}/(mysql|mysql-test)/.*|%{_libdir}/%{pkg_name}/plugin/.*\\.so)$
%else
%filter_from_requires /perl(\(hostnames\|lib::mtr\|lib::v1\|mtr_\|My::\)/d
-%filter_provides_in -P
(%{_datadir}/(mysql|mysql-test)/.*|%{_libdir}/mysql/plugin/.*\.so)
+%filter_provides_in -P
(%{_datadir}/(mysql|mysql-test)/.*|%{_libdir}/%{pkg_name}/plugin/.*\.so)
%filter_setup
%endif
@@ -504,7 +498,7 @@ Requires: perl(DBI) perl(DBD::mysql)
%description server-utils
This package contains all non-essential server utilities and scripts for
managing databases. It also contains all utilities requiring Perl and it is
-the only MariaDB subpackage, except test subpackage, that depends on Perl.
+the only MariaDB sub-package, except test subpackage, that depends on Perl.
%if %{with devel}
@@ -634,10 +628,8 @@ MariaDB is a community developed branch of MySQL.
%prep
%setup -q -n mariadb-%{version}
-%patch2 -p1
%patch4 -p1
%patch7 -p1
-%patch8 -p1
%patch9 -p1
%patch37 -p1
%patch40 -p1
@@ -676,17 +668,27 @@ sed -i 's/kerberos_port_t/kerberos_master_port_t/'
selinux/%{name}-server-galera
cat selinux/%{name}-server-galera.te
%endif
-# Check if PCRE version is actual
-%if %{with pcre}
+
+# Get version of PCRE, that upstream use
pcre_maj=`grep '^m4_define(pcre_major' pcre/configure.ac | sed -r
's/^m4_define\(pcre_major, \[([0-9]+)\]\)/\1/'`
pcre_min=`grep '^m4_define(pcre_minor' pcre/configure.ac | sed -r
's/^m4_define\(pcre_minor, \[([0-9]+)\]\)/\1/'`
-if [ %{pcre_version} != "$pcre_maj.$pcre_min" ]
+%if %{without bundled_pcre}
+# Check if the PCRE version in macro 'pcre_bundled_version', used in Provides:
bundled(...), is the same version as upstream actually bundles
+if [ %{pcre_bundled_version} != "$pcre_maj.$pcre_min" ]
then
- echo "\n Error: PCRE version is outdated. \n\tIncluded version:%{pcre_version}
\n\tUpstream version: $pcre_maj.$pcre_min\n"
+ echo "\n Error: Bundled PCRE version is not correct. \n\tBundled version
number:%{pcre_bundled_version} \n\tUpstream version number: $pcre_maj.$pcre_min\n"
exit 1
fi
-%endif
+%else
+# Check if the PCRE version that upstream use, is the same as the one present in system
+pcre_system_version=`pkgconf %{_libdir}/pkgconfig/libpcre.pc --modversion 2>/dev/null
`
+if [ "$pcre_system_version" != "$pcre_maj.$pcre_min" ]
+then
+ echo "\n Warning: Error: Bundled PCRE version is not correct. \n\tSystem version
number:$pcre_system_version \n\tUpstream version number: $pcre_maj.$pcre_min\n"
+fi
+%endif # PCRE
+
%if %{without rocksdb}
rm -r storage/rocksdb/
@@ -695,6 +697,8 @@ rm -r storage/rocksdb/
# Remove python scripts remains from tokudb upstream (those files are not used anyway)
rm -r storage/tokudb/mysql-test/tokudb/t/*.py
+
+
%build
# fail quickly and obviously if user tries to build as root
@@ -747,11 +751,11 @@ export LDFLAGS
-DINSTALL_DOCREADMEDIR="share/doc/%{_pkgdocdirname}" \
-DINSTALL_INCLUDEDIR=include/mysql \
-DINSTALL_INFODIR=share/info \
- -DINSTALL_LIBDIR="%{_lib}/mysql" \
+ -DINSTALL_LIBDIR="%{_lib}" \
-DINSTALL_MANDIR=share/man \
-DINSTALL_MYSQLSHAREDIR=share/%{pkg_name} \
-DINSTALL_MYSQLTESTDIR=share/mysql-test \
- -DINSTALL_PLUGINDIR="%{_lib}/mysql/plugin" \
+ -DINSTALL_PLUGINDIR="%{_lib}/%{pkg_name}/plugin" \
-DINSTALL_SBINDIR=libexec \
-DINSTALL_SCRIPTDIR=bin \
-DINSTALL_SQLBENCHDIR=share \
@@ -763,7 +767,7 @@ export LDFLAGS
-DWITH_EMBEDDED_SERVER=ON \
-DWITH_SSL=system \
-DWITH_ZLIB=system \
-%{?with_pcre: -DWITH_PCRE=system}\
+ -DWITH_PCRE=%{?with_bundled_pcre:system}%{!?with_bundled_pcre:bundled} \
-DWITH_JEMALLOC=system \
-DWITH_LIBARCHIVE=ON \
-DWITH_MARIABACKUP=ON \
@@ -781,11 +785,11 @@ make %{?_smp_mflags} VERBOSE=1
# debuginfo extraction scripts fail to find source files in their real
# location -- satisfy them by copying these files into location, which
# is expected by scripts
-for e in innobase xtradb ; do
- for f in pars0grm.y pars0lex.l ; do
- cp -p "storage/$e/pars/$f" "storage/$e/$f"
- done
-done
+#for e in innobase xtradb ; do
+# for f in pars0grm.y pars0lex.l ; do
+# cp -p "storage/$e/pars/$f" "storage/$e/$f"
+# done
+#done
# build selinux policy
%if %{with galera}
@@ -819,8 +823,8 @@ mv %{buildroot}/%{_datadir}/pkgconfig/*.pc
%{buildroot}/%{_libdir}/pkgconfig
# install INFO_SRC, INFO_BIN into libdir (upstream thinks these are doc files,
# but that's pretty wacko --- see also %%{name}-file-contents.patch)
-install -p -m 644 Docs/INFO_SRC %{buildroot}%{_libdir}/mysql/
-install -p -m 644 Docs/INFO_BIN %{buildroot}%{_libdir}/mysql/
+install -p -m 644 Docs/INFO_SRC %{buildroot}%{_libdir}/%{pkg_name}/
+install -p -m 644 Docs/INFO_BIN %{buildroot}%{_libdir}/%{pkg_name}/
rm -r %{buildroot}%{_datadir}/doc/%{_pkgdocdirname}/MariaDB-server-%{version}/
mkdir -p %{buildroot}%{logfiledir}
@@ -878,7 +882,7 @@ ln -s ../../../../../bin/my_safe_process
%{buildroot}%{_datadir}/mysql-test/lib/
# should move this to /etc/ ?
rm %{buildroot}%{_bindir}/mysql_embedded
-rm %{buildroot}%{_libdir}/mysql/*.a
+rm %{buildroot}%{_libdir}/*.a
rm %{buildroot}%{_datadir}/%{pkg_name}/binary-configure
rm %{buildroot}%{_datadir}/%{pkg_name}/magic
rm %{buildroot}%{_datadir}/%{pkg_name}/mysql.server
@@ -892,12 +896,6 @@ mkdir -p %{buildroot}%{logrotateddir}
mv %{buildroot}%{_datadir}/%{pkg_name}/mysql-log-rotate
%{buildroot}%{logrotateddir}/%{daemon_name}
chmod 644 %{buildroot}%{logrotateddir}/%{daemon_name}
-%if %{with clibrary}
-mkdir -p %{buildroot}%{_sysconfdir}/ld.so.conf.d
-# Save a name of the directory that contains libraries to this file
-echo "%{_libdir}/mysql" >
%{buildroot}%{_sysconfdir}/ld.so.conf.d/%{name}-%{_arch}.conf
-%endif
-
# copy additional docs into build tree so %%doc will find them
install -p -m 0644 %{SOURCE5} %{basename:%{SOURCE5}}
install -p -m 0644 %{SOURCE6} %{basename:%{SOURCE6}}
@@ -952,16 +950,16 @@ ln -s unstable-tests
%{buildroot}%{_datadir}/mysql-test/rh-skipped-tests.list
%if %{without clibrary}
rm %{buildroot}%{_sysconfdir}/my.cnf.d/client.cnf
# Client library and links
-rm %{buildroot}%{_libdir}/mysql/libmariadb*.so.*
-unlink %{buildroot}%{_libdir}/mysql/libmysqlclient.so
-unlink %{buildroot}%{_libdir}/mysql/libmysqlclient_r.so
-unlink %{buildroot}%{_libdir}/mysql/libmariadb.so
+rm %{buildroot}%{_libdir}/libmariadb*.so.*
+unlink %{buildroot}%{_libdir}/libmysqlclient.so
+unlink %{buildroot}%{_libdir}/libmysqlclient_r.so
+unlink %{buildroot}%{_libdir}/libmariadb.so
# Client plugins
-rm
%{buildroot}%{_libdir}/mysql/plugin/{dialog.so,mysql_clear_password.so,sha256_password.so,auth_gssapi_client.so}
+rm
%{buildroot}%{_libdir}/%{pkg_name}/plugin/{dialog.so,mysql_clear_password.so,sha256_password.so,auth_gssapi_client.so}
%endif
%if %{without embedded}
-rm %{buildroot}%{_libdir}/mysql/libmysqld.so*
+rm %{buildroot}%{_libdir}/%{pkg_name}/libmysqld.so*
rm %{buildroot}%{_bindir}/{mysql_client_test_embedded,mysqltest_embedded}
rm %{buildroot}%{_mandir}/man1/{mysql_client_test_embedded,mysqltest_embedded}.1*
%endif
@@ -980,7 +978,7 @@ unlink %{buildroot}%{_mandir}/man1/mariadb_config.1*
# Create symlinks to the 'libmariadb' library, for compatibility reasons
# Note: the -libs subpackage has Provides: for this compat symlink; when
# it is removed, they should also be removed
-pushd %{buildroot}%{_libdir}/mysql/
+pushd %{buildroot}%{_libdir}
#ln -s libmariadb.so libmysqlclient.so
ln -s libmariadb.so.3 libmysqlclient.so.18
#ln -s libmariadb.so libmysqlclient_r.so
@@ -1208,9 +1206,8 @@ fi
%if %{with clibrary}
%files libs
-%{_libdir}/mysql/libmariadb.so.*
-%{_libdir}/mysql/libmysqlclient.so.18
-%{_sysconfdir}/ld.so.conf.d/*
+%{_libdir}/libmariadb.so.*
+%{_libdir}/libmysqlclient.so.18
%config(noreplace) %{_sysconfdir}/my.cnf.d/client.cnf
%endif
@@ -1230,8 +1227,8 @@ fi
%dir %{_datadir}/%{pkg_name}
%{_datadir}/%{pkg_name}/charsets
%if %{with devel} && %{with errmsg} && %{with galera} && %{with
config} && %{with clibrary}
-%{_libdir}/mysql/plugin/dialog.so
-%{_libdir}/mysql/plugin/mysql_clear_password.so
+%{_libdir}/%{pkg_name}/plugin/dialog.so
+%{_libdir}/%{pkg_name}/plugin/mysql_clear_password.so
%endif # devel && errmsg && galera && config
%endif # common
@@ -1328,19 +1325,19 @@ fi
%{_libexecdir}/mysqld
-%{_libdir}/mysql/INFO_SRC
-%{_libdir}/mysql/INFO_BIN
+%{_libdir}/%{pkg_name}/INFO_SRC
+%{_libdir}/%{pkg_name}/INFO_BIN
%if %{without common}
%dir %{_datadir}/%{pkg_name}
%endif
-%dir %{_libdir}/mysql
-%dir %{_libdir}/mysql/plugin
-%{_libdir}/mysql/plugin/*
-%{?with_oqgraph:%exclude %{_libdir}/mysql/plugin/ha_oqgraph.so}
-%{?with_connect:%exclude %{_libdir}/mysql/plugin/ha_connect.so}
-%exclude %{_libdir}/mysql/plugin/dialog.so
-%exclude %{_libdir}/mysql/plugin/mysql_clear_password.so
+%dir %{_libdir}/%{pkg_name}
+%dir %{_libdir}/%{pkg_name}/plugin
+%{_libdir}/%{pkg_name}/plugin/*
+%{?with_oqgraph:%exclude %{_libdir}/%{pkg_name}/plugin/ha_oqgraph.so}
+%{?with_connect:%exclude %{_libdir}/%{pkg_name}/plugin/ha_connect.so}
+%exclude %{_libdir}/%{pkg_name}/plugin/dialog.so
+%exclude %{_libdir}/%{pkg_name}/plugin/mysql_clear_password.so
%{_mandir}/man1/aria_chk.1*
%{_mandir}/man1/aria_dump_log.1*
@@ -1420,13 +1417,13 @@ fi
%if %{with oqgraph}
%files oqgraph-engine
%config(noreplace) %{_sysconfdir}/my.cnf.d/oqgraph.cnf
-%{_libdir}/mysql/plugin/ha_oqgraph.so
+%{_libdir}/%{pkg_name}/plugin/ha_oqgraph.so
%endif
%if %{with connect}
%files connect-engine
%config(noreplace) %{_sysconfdir}/my.cnf.d/connect.cnf
-%{_libdir}/mysql/plugin/ha_connect.so
+%{_libdir}/%{pkg_name}/plugin/ha_connect.so
%endif
%files server-utils
@@ -1461,9 +1458,9 @@ fi
%if %{with clibrary}
%{_bindir}/mysql_config*
%{_bindir}/mariadb_config*
-%{_libdir}/mysql/libmariadb.so
-%{_libdir}/mysql/libmysqlclient.so
-%{_libdir}/mysql/libmysqlclient_r.so
+%{_libdir}/libmariadb.so
+%{_libdir}/libmysqlclient.so
+%{_libdir}/libmysqlclient_r.so
%{_mandir}/man1/mysql_config*
%{_mandir}/man1/mariadb_config*
%endif
@@ -1471,10 +1468,10 @@ fi
%if %{with embedded}
%files embedded
-%{_libdir}/mysql/libmysqld.so.*
+%{_libdir}/libmysqld.so.*
%files embedded-devel
-%{_libdir}/mysql/libmysqld.so
+%{_libdir}/libmysqld.so
%{_bindir}/mysql_client_test_embedded
%{_bindir}/mysqltest_embedded
%{_mandir}/man1/mysql_client_test_embedded.1*
@@ -1500,6 +1497,14 @@ fi
%endif
%changelog
+* Wed Nov 01 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.10-1
+- Rebase to 10.2.10 version
+- Patch 2: mariadb-install-test.patch has been incorporated by upstream
+- Patch 8: mariadb-install-db-sharedir.patch; upstream started to use macros
+- Update PCRE check
+- Start using location libdir/mariadb for plugins
+- Move libraries to libdir
+
* Thu Oct 05 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.9-3
- Fix client library obsolete
Related: #1498956
diff --git a/rh-skipped-tests-base.list b/rh-skipped-tests-base.list
index bf4f3f0..022dda6 100644
--- a/rh-skipped-tests-base.list
+++ b/rh-skipped-tests-base.list
@@ -10,12 +10,9 @@ main.non_blocking_api : #1399847
perfschema.nesting : #1399847
perfschema.socket_summary_by_event_name_func : #1399847
perfschema.socket_summary_by_instance_func : #1399847
-perfschema.bad_option_1 : #1399847
-perfschema.bad_option_5 : #1399847
# <mkocka(a)redhat.com> needs this tests disabled for mode build
plugins.feedback_plugin_load : #
-
plugins.show_all_plugins : warnings in log
# ------------------------------
diff --git a/sources b/sources
index 11e9767..2161b03 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (mariadb-10.2.9.tar.gz) =
11ba0913144d7298ffa4c0a0128a3d1525a39b8205ffc580311751cf25a4e86159e46a32d3c8330c4ea028cdd50643eb5381651df654751ca3e4fb3d4698a373
+SHA512 (mariadb-10.2.10.tar.gz) =
39c198009f8b19f4a08226ef9842b50e24636580b67c1c92d59c61cce3aa1edbd466e253c281dfcdfc58ab573ae9a59aaacb0ce3e8b82222043ddd849fc3e239
commit 7b7a7f80e23807496aa7e4e495a27e5ca555d150
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Mon Oct 16 14:42:14 2017 +0200
Update PCRE version and fix its failsafe
diff --git a/mariadb.spec b/mariadb.spec
index 5033d37..8701125 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -81,7 +81,7 @@
# MariaDB 10.0 and later requires pcre >= 8.35, otherwise we need to use
# the bundled library, since the package cannot be build with older version
-%global pcre_version 8.40
+%global pcre_version 8.41
%if 0%{?fedora} >= 21
%bcond_without pcre
%else
@@ -677,7 +677,7 @@ cat selinux/%{name}-server-galera.te
%endif
# Check if PCRE version is actual
-%{!?with_pcre:
+%if %{with pcre}
pcre_maj=`grep '^m4_define(pcre_major' pcre/configure.ac | sed -r
's/^m4_define\(pcre_major, \[([0-9]+)\]\)/\1/'`
pcre_min=`grep '^m4_define(pcre_minor' pcre/configure.ac | sed -r
's/^m4_define\(pcre_minor, \[([0-9]+)\]\)/\1/'`
@@ -686,7 +686,7 @@ then
echo "\n Error: PCRE version is outdated. \n\tIncluded version:%{pcre_version}
\n\tUpstream version: $pcre_maj.$pcre_min\n"
exit 1
fi
-}
+%endif
%if %{without rocksdb}
rm -r storage/rocksdb/
commit d34bedc1a2ef0b2281daa87ffc507a023a29d4b0
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Mon Oct 16 14:28:44 2017 +0200
RPMLint error fix: Remove unused python scripts which remained from TokuDB upstream
diff --git a/mariadb.spec b/mariadb.spec
index 9b6a54c..5033d37 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -692,6 +692,8 @@ fi
rm -r storage/rocksdb/
%endif
+# Remove python scripts remains from tokudb upstream (those files are not used anyway)
+rm -r storage/tokudb/mysql-test/tokudb/t/*.py
%build
@@ -1502,6 +1504,8 @@ fi
- Fix client library obsolete
Related: #1498956
- RPMLint error fix: description line too long
+- RPMLint error fix:
+ Remove unused python scripts which remained from TokuDB upstream
* Wed Oct 04 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.9-2
- Fix of "with" and "without" macros, so they works
commit 4f0e1812ee6d9d36eea7376b809211a917d6519a
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Sun Oct 8 00:35:13 2017 +0200
RPMLint error fix: description line too long
diff --git a/mariadb.spec b/mariadb.spec
index 08b5450..9b6a54c 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -502,9 +502,9 @@ Provides: mysql-perl = %{sameevr}
Requires: perl(DBI) perl(DBD::mysql)
%description server-utils
-This package contains all non-essential server utilities and scripts for managing
-databases. It also contains all utilities requiring Perl and it is the only MariaDB
-subpackage, except test subpackage, that depends on Perl.
+This package contains all non-essential server utilities and scripts for
+managing databases. It also contains all utilities requiring Perl and it is
+the only MariaDB subpackage, except test subpackage, that depends on Perl.
%if %{with devel}
@@ -879,7 +879,6 @@ rm %{buildroot}%{_bindir}/mysql_embedded
rm %{buildroot}%{_libdir}/mysql/*.a
rm %{buildroot}%{_datadir}/%{pkg_name}/binary-configure
rm %{buildroot}%{_datadir}/%{pkg_name}/magic
-#rm %{buildroot}%{_datadir}/%{pkg_name}/my-*.cnf
rm %{buildroot}%{_datadir}/%{pkg_name}/mysql.server
rm %{buildroot}%{_datadir}/%{pkg_name}/mysqld_multi.server
rm %{buildroot}%{_mandir}/man1/mysql-stress-test.pl.1*
@@ -930,6 +929,8 @@ cp Docs/README-wsrep Docs/README.wsrep
# remove *.jar file from mysql-test
rm -r %{buildroot}%{_datadir}/mysql-test/plugin/connect/connect/std_data/JdbcMariaDB.jar
+rm -r %{buildroot}%{_datadir}/mysql-test/plugin/connect/connect/std_data/Mongo2.jar
+rm -r %{buildroot}%{_datadir}/mysql-test/plugin/connect/connect/std_data/Mongo3.jar
# RPMLINT E:
# mariadb-bench.x86_64: E: script-without-shebang /usr/share/sql-bench/myisam.cnf
@@ -1500,6 +1501,7 @@ fi
* Thu Oct 05 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.9-3
- Fix client library obsolete
Related: #1498956
+- RPMLint error fix: description line too long
* Wed Oct 04 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.9-2
- Fix of "with" and "without" macros, so they works
commit 082df141a1e83be5c01373d772fefd1f740cbe31
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Thu Oct 5 19:05:24 2017 +0200
Bump version for rebuild
diff --git a/mariadb.spec b/mariadb.spec
index e7dddd5..08b5450 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -127,7 +127,7 @@
Name: mariadb
Version: %{compatver}.%{bugfixver}
-Release: 2%{?with_debug:.debug}%{?dist}
+Release: 3%{?with_debug:.debug}%{?dist}
Epoch: 3
Summary: A community developed branch of MySQL
@@ -1497,6 +1497,10 @@ fi
%endif
%changelog
+* Thu Oct 05 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.9-3
+- Fix client library obsolete
+ Related: #1498956
+
* Wed Oct 04 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.9-2
- Fix of "with" and "without" macros, so they works
- Use 'iproute' dependency instead of 'net-tools'
@@ -1507,8 +1511,6 @@ fi
Related: #1497234
- Fix building with client library
- Build with client library and testsuite, since this is F27 branch
-- Fix client library obsolete
- Related: #1498956
* Thu Sep 28 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.9-1
- Rebase to 10.2.9
commit f43c1299ba97cf0b6471899e038b80ad198d38b4
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Thu Oct 5 18:13:25 2017 +0200
Fix client library obsolete
diff --git a/mariadb.spec b/mariadb.spec
index 4c31040..e7dddd5 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -354,8 +354,7 @@ Provides: mariadb-galera-common = %{sameevr}
Obsoletes: mariadb-galera-common < %{obsoleted_mariadb_galera_common_evr}
%if %{without clibrary}
-Obsoletes: %{name}-libs%{?_isa} <= %{sameevr}
-Obsoletes: %{name}-common%{?_isa} < %{sameevr}
+Obsoletes: %{name}-libs <= %{sameevr}
%endif
@@ -1508,6 +1507,8 @@ fi
Related: #1497234
- Fix building with client library
- Build with client library and testsuite, since this is F27 branch
+- Fix client library obsolete
+ Related: #1498956
* Thu Sep 28 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.9-1
- Rebase to 10.2.9
commit 604c1bd8ebe7dbde82cf2efc6e0863414bb9fc6f
Author: Michal Schorm <mschorm(a)redhat.com>
Date: Thu Oct 5 14:37:00 2017 +0200
Start building with client library and testsuite, since this is a F27 branch
diff --git a/mariadb.spec b/mariadb.spec
index 19d1845..4c31040 100644
--- a/mariadb.spec
+++ b/mariadb.spec
@@ -3,7 +3,7 @@
%global pkgnamepatch mariadb
# Regression tests may take a long time (many cores recommended), skip them by
-%{!?runselftest:%global runselftest 0}
+%{!?runselftest:%global runselftest 1}
# Set this to 1 to see which tests fail, but 0 on production ready build
%global ignore_testsuite_result 0
@@ -43,7 +43,7 @@
%bcond_without oqgraph
# For some use cases we do not need some parts of the package. Set to "...with"
to exclude
-%bcond_with clibrary
+%bcond_without clibrary
%bcond_without embedded
%bcond_without devel
%bcond_without client
@@ -1507,6 +1507,7 @@ fi
with dnf "--allowerasing" option
Related: #1497234
- Fix building with client library
+- Build with client library and testsuite, since this is F27 branch
* Thu Sep 28 2017 Michal Schorm <mschorm(a)redhat.com> - 3:10.2.9-1
- Rebase to 10.2.9