mariadb/mariadb.spec

616 lines
19 KiB
RPMSpec
Raw Normal View History

2015-01-16 22:54:50 +10:00
%{?build_systap}%{?!build_systap:%bcond_without systap}
2013-12-20 16:31:08 +04:00
%define muser mysql
%define major 18
%define libmysqlclient %mklibname mysqlclient %{major}
%define libmysqlclient_r %mklibname mysqlclient_r %{major}
%define libmysqld %mklibname mysqld %{major}
%define devname %mklibname mysqlclient -d
%define sdevname %mklibname mysqlclient -d -s
%define semddevname %mklibname mysqld -d -s
Summary: The MariaDB database, a drop-in replacement for MySQL
Name: mariadb
2019-07-14 22:47:38 +03:00
Version: 10.1.40
Release: 2
# Keep this Epoch higher than in mysql-community!! (see bellow why)
Epoch: 50
License: GPLv2+
Group: System/Servers
Url: http://mariadb.org/
2016-11-02 23:52:10 +03:00
Source0: https://downloads.mariadb.org/interstitial/mariadb-%{version}/source/mariadb-%{version}.tar.gz
Source100: mysqld.service
Source101: mysqld-prepare-db-dir
Source102: mysqld-wait-ready
Source1000: %{name}.rpmlintrc
2018-09-27 21:31:03 +03:00
Patch1: mariadb-10.1.36-conf-ip6.patch
2013-12-21 14:38:27 +01:00
BuildRequires: bison
BuildRequires: cmake
BuildRequires: dos2unix
BuildRequires: doxygen
BuildRequires: python
BuildRequires: systemd-units
2015-01-16 22:54:50 +10:00
%if %{with systap}
2013-12-21 14:38:27 +01:00
BuildRequires: systemtap
2015-01-16 22:54:50 +10:00
%endif
# For plugin/ha_oqgraph.so
BuildRequires: boost-devel
BuildRequires: jemalloc-devel
2013-12-21 14:38:27 +01:00
BuildRequires: libaio-devel
# For plugin/auth_pam.so
BuildRequires: pam-devel
2013-12-21 14:38:27 +01:00
BuildRequires: readline-devel
BuildRequires: stdc++-devel
BuildRequires: wrap-devel
2013-12-21 14:38:27 +01:00
BuildRequires: xfsprogs-devel
BuildRequires: pkgconfig(krb5)
BuildRequires: pkgconfig(krb5-gssapi)
BuildRequires: pkgconfig(libevent)
BuildRequires: pkgconfig(liblz4)
2013-12-21 14:38:27 +01:00
BuildRequires: pkgconfig(ncursesw)
BuildRequires: pkgconfig(openssl)
BuildRequires: pkgconfig(zlib)
Requires: %{name}-server = %{EVRD}
Requires: %{name}-client = %{EVRD}
Obsoletes: mysql < 5.7
2019-07-14 22:47:38 +03:00
Provides: mysql = %{EVRD}
2013-12-20 16:31:08 +04:00
%description
2014-01-17 17:20:18 +04:00
The MariaDB database, a drop-in replacement for MySQL.
2013-12-20 16:31:08 +04:00
%files
# meta package
#----------------------------------------------------------------------------
%package -n %{libmysqlclient}
Summary: Shared library for MariaDB database
Group: System/Libraries
Conflicts: %{_lib}mysql18 < 5.7
Obsoletes: %{_lib}mysql18 < 5.7
2013-12-20 16:31:08 +04:00
%description -n %{libmysqlclient}
Shared library for MariaDB database.
2014-02-20 02:12:59 +01:00
%files -n %{libmysqlclient}
%{_libdir}/libmysqlclient.so.%{major}*
2013-12-20 16:31:08 +04:00
#----------------------------------------------------------------------------
2013-12-20 16:31:08 +04:00
%package -n %{libmysqlclient_r}
Summary: Shared library for MariaDB database
Group: System/Libraries
%description -n %{libmysqlclient_r}
Shared library for MariaDB database.
%files -n %{libmysqlclient_r}
%{_libdir}/libmysqlclient_r.so.%{major}*
#----------------------------------------------------------------------------
%package -n %{libmysqld}
Summary: Shared library for MariaDB database
Group: System/Libraries
%description -n %{libmysqld}
Shared library for MariaDB database.
%files -n %{libmysqld}
%{_libdir}/libmysqld.so.%{major}*
#----------------------------------------------------------------------------
%package -n %{devname}
Summary: Development files for the MariaDB database
Group: Development/Other
Requires: %{libmysqlclient} = %{EVRD}
Requires: %{libmysqlclient_r} = %{EVRD}
Requires: %{libmysqld} = %{EVRD}
Requires: %{name}-common = %{EVRD}
Provides: %{name}-devel = %{EVRD}
Obsoletes: %{_lib}mysql-devel < 5.7
2019-07-15 00:09:31 +03:00
# ROSA has/will have both Oracle MySQL (mysql-community) and MariaDB (mariadb)
# and may also package other MySQL derivatives, for example PerconaDB.
# These package cannot coexist and have nearly the same functionality,
# and some parts of MariaDB are called "MySQL".
# Let's keep MariaDB "the default" MySQL derivative
# and so make build dependency mysql-devel point to MariaDB.
2019-07-15 00:09:31 +03:00
# To achieve this, Epoch is higher in mariadb than in mysql-community (Oracle MySQL),
# this allows both Oracle MySQL and MariaDB to provide mysql-devel,
# but MariaDB will be the default choice for mysql-devel.
# "Provides: mysql-devel" is not removed from mysql-community to allow
# all MySQL derivatives to be a drop-in replacement of each other.
Provides: mysql-devel = %{EVRD}
Provides: mariadb-devel = %{EVRD}
%description -n %{devname}
2014-01-17 17:20:18 +04:00
Development files for the MariaDB database.
2013-12-20 16:31:08 +04:00
%files -n %{devname}
2013-12-20 16:31:08 +04:00
%{_includedir}/mysql
%{_libdir}/*.so
%{_datadir}/aclocal/mysql.m4
2016-11-03 02:08:23 +03:00
%{_datadir}/pkgconfig/mariadb.pc
2013-12-20 16:31:08 +04:00
#----------------------------------------------------------------------------
2013-12-20 16:31:08 +04:00
%package -n %{sdevname}
Summary: Static libraries for the MariaDB database
Group: Development/Other
Requires: %{devname} = %{EVRD}
Provides: %{name}-static-devel = %{EVRD}
Conflicts: mysql-static-devel < 5.7
Obsoletes: mysql-static-devel < 5.7
2019-07-14 22:47:38 +03:00
Provides: mysql-static-devel = %{EVRD}
2013-12-20 16:31:08 +04:00
%description -n %{sdevname}
2014-01-17 17:20:18 +04:00
Static libraries for the MariaDB database.
2013-12-20 16:31:08 +04:00
%files -n %{sdevname}
2013-12-20 16:31:08 +04:00
%{_libdir}/libmysqlclient.a
%{_libdir}/libmysqlclient_r.a
%{_libdir}/libmysqlservices.a
#----------------------------------------------------------------------------
2014-02-20 02:12:59 +01:00
%package -n %{semddevname}
Summary: Static libraries for the Embedded MariaDB database
Group: Development/Other
Provides: %{name}-embedded-static-devel = %{EVRD}
Requires: %{sdevname} = %{EVRD}
2014-02-20 02:12:59 +01:00
%description -n %{semddevname}
Static libraries for the Embedded MariaDB database.
2014-02-20 02:12:59 +01:00
%files -n %{semddevname}
2014-02-20 02:12:59 +01:00
%{_libdir}/libmysqld.a
#----------------------------------------------------------------------------
2013-12-20 16:31:08 +04:00
%package plugin
Summary: MariaDB plugins
Group: Databases
Conflicts: mysql-server < 5.7
Obsoletes: mysql-plugin < 5.7
2019-07-14 22:47:38 +03:00
Provides: mysql-plugin = %{EVRD}
2013-12-20 16:31:08 +04:00
%description plugin
2014-01-17 17:20:18 +04:00
Plugins for the MariaDB database.
2013-12-20 16:31:08 +04:00
%files plugin
%{_libdir}/mysql/plugin/adt_null.so
%{_libdir}/mysql/plugin/auth_0x0100.so
2017-04-22 09:39:36 +03:00
%{_libdir}/mysql/plugin/auth_ed25519.so
%{_libdir}/mysql/plugin/auth_gssapi.so
%{_libdir}/mysql/plugin/auth_gssapi_client.so
2013-12-20 16:31:08 +04:00
%{_libdir}/mysql/plugin/auth_pam.so
%{_libdir}/mysql/plugin/auth_socket.so
%{_libdir}/mysql/plugin/auth_test_plugin.so
2017-04-22 09:39:36 +03:00
%{_libdir}/mysql/plugin/client_ed25519.so
2013-12-20 16:31:08 +04:00
%{_libdir}/mysql/plugin/daemon_example.ini
%{_libdir}/mysql/plugin/dialog.so
%{_libdir}/mysql/plugin/dialog_examples.so
%{_libdir}/mysql/plugin/disks.so
2013-12-20 16:31:08 +04:00
%{_libdir}/mysql/plugin/ha_archive.so
%{_libdir}/mysql/plugin/ha_blackhole.so
%{_libdir}/mysql/plugin/ha_connect.so
%{_libdir}/mysql/plugin/ha_example.so
%{_libdir}/mysql/plugin/ha_federated.so
%{_libdir}/mysql/plugin/ha_federatedx.so
%{_libdir}/mysql/plugin/ha_sphinx.so
%{_libdir}/mysql/plugin/ha_spider.so
%{_libdir}/mysql/plugin/ha_test_sql_discovery.so
2014-03-11 14:23:14 +01:00
%{_libdir}/mysql/plugin/ha_innodb.so
2013-12-20 16:31:08 +04:00
%{_libdir}/mysql/plugin/handlersocket.so
%{_libdir}/mysql/plugin/libdaemon_example.so
%{_libdir}/mysql/plugin/locales.so
%{_libdir}/mysql/plugin/metadata_lock_info.so
2013-12-20 16:31:08 +04:00
%{_libdir}/mysql/plugin/mypluglib.so
%{_libdir}/mysql/plugin/mysql_clear_password.so
%{_libdir}/mysql/plugin/qa_auth_client.so
%{_libdir}/mysql/plugin/qa_auth_interface.so
%{_libdir}/mysql/plugin/qa_auth_server.so
%{_libdir}/mysql/plugin/query_cache_info.so
%{_libdir}/mysql/plugin/query_response_time.so
%{_libdir}/mysql/plugin/semisync_master.so
%{_libdir}/mysql/plugin/semisync_slave.so
2014-03-31 16:17:30 +02:00
%{_libdir}/mysql/plugin/server_audit.so
2013-12-20 16:31:08 +04:00
%{_libdir}/mysql/plugin/sql_errlog.so
2016-11-03 02:08:23 +03:00
%{_libdir}/mysql/plugin/debug_key_management.so
%{_libdir}/mysql/plugin/example_key_management.so
%{_libdir}/mysql/plugin/file_key_management.so
%{_libdir}/mysql/plugin/simple_password_check.so
%{_libdir}/mysql/plugin/wsrep_info.so
2013-12-20 16:31:08 +04:00
%{_mandir}/man1/mysql_plugin.1*
#----------------------------------------------------------------------------
%package plugin-tokudb
Summary: The TokuDB storage engine plugin for MariaDB
Group: Databases
Requires: %{name}-server = %{EVRD}
%description plugin-tokudb
The TokuDB storage engine plugin for MariaDB.
TokuDB is a storage engine for MySQL and MariaDB that is specifically
designed for high performance on write-intensive workloads.
It achieves this via Fractal Tree indexing. TokuDB is a scalable, ACID
and MVCC compliant storage engine that provides indexing-based query
improvements, offers online schema modifications, and reduces slave lag
for both hard disk drives and flash memory.
# As of 10.0.6, tokudb is x86_64 only
%ifarch x86_64
%files plugin-tokudb
%{_libdir}/mysql/plugin/ha_tokudb.so
%{_sysconfdir}/my.cnf.d/tokudb.cnf
%{_bindir}/tokuft_logprint
%{_bindir}/tokuftdump
%endif
#----------------------------------------------------------------------------
%package plugin-mroonga
Summary: The Mroonga storage engine plugin for MariaDB
Requires: %{name}-server = %{EVRD}
Group: Databases
%description plugin-mroonga
Mroonga is a storage engine for MySQL. It provides fast fulltext search feature
to all MySQL users. Mroonga was called Groonga storage engine.
%files plugin-mroonga
%{_libdir}/mysql/plugin/ha_mroonga.so
%{_datadir}/mysql/mroonga/install.sql
%{_datadir}/mysql/mroonga/uninstall.sql
#----------------------------------------------------------------------------
2013-12-20 16:31:08 +04:00
%package test
Summary: MariaDB test suite
Group: Databases
Conflicts: mysql-bench < 5.7
Conflicts: mysql-server < 5.7
Conflicts: mysql-test < 5.7
Obsoletes: mysql-bench < 5.7
Obsoletes: mysql-test < 5.7
2019-07-14 22:47:38 +03:00
Provides: mysql-bench = %{EVRD}
Provides: mysql-test = %{EVRD}
2013-12-20 16:31:08 +04:00
%description test
2014-01-17 17:20:18 +04:00
MariaDB test suite.
2013-12-20 16:31:08 +04:00
%files test
%{_bindir}/mysqltest
2014-02-20 02:12:59 +01:00
%{_bindir}/mysqltest_embedded
2013-12-20 16:31:08 +04:00
%{_bindir}/mysql_client_test
2014-02-20 02:12:59 +01:00
%{_bindir}/mysql_client_test_embedded
2013-12-20 16:31:08 +04:00
%{_datadir}/mysql-test
%{_mandir}/man1/mysql-stress-test.pl.1*
%{_mandir}/man1/mysql-test-run.pl.1*
%{_mandir}/man1/mysql_client_test.1*
%{_mandir}/man1/mysql_client_test_embedded.1*
%{_mandir}/man1/mysqltest.1*
%{_mandir}/man1/mysqltest_embedded.1*
#----------------------------------------------------------------------------
2013-12-20 16:31:08 +04:00
%package server
Summary: MariaDB server
Group: System/Servers
Requires: %{name}-common = %{EVRD}
Requires: %{name}-plugin = %{EVRD}
Conflicts: mysql-client < 5.7
Conflicts: mysql-server < 5.7
Obsoletes: mysql-server < 5.7
2019-07-14 22:47:38 +03:00
Provides: mysql-server = %{EVRD}
Requires(post,preun): rpm-helper
2013-12-20 16:31:08 +04:00
%description server
The MariaDB server. For a full MariaDB database server, install
package '%{name}'.
%pre server
2013-12-25 22:01:10 +01:00
%_pre_useradd %{muser} /srv/mysql /sbin/nologin
2013-12-20 16:31:08 +04:00
%post server
%systemd_post mysqld.service
2013-12-20 16:31:08 +04:00
%preun server
%systemd_preun mysqld.service
2013-12-20 16:31:08 +04:00
%files server
%dir %{_datadir}/mysql
%{_datadir}/mysql/errmsg-utf8.txt
%{_datadir}/mysql/fill_help_tables.sql
%{_datadir}/mysql/install_spider.sql
%{_datadir}/mysql/mysql_performance_tables.sql
%{_datadir}/mysql/mysql_system_tables.sql
%{_datadir}/mysql/mysql_system_tables_data.sql
%{_datadir}/mysql/mysql_test_data_timezone.sql
%{_datadir}/mysql/*.cnf
2016-11-03 02:08:23 +03:00
%{_datadir}/mysql/maria_add_gis_sp.sql
%{_datadir}/mysql/maria_add_gis_sp_bootstrap.sql
%{_datadir}/mysql/wsrep_notify
2013-12-20 16:31:08 +04:00
%{_mandir}/man8/*
%dir %{_libdir}/mysql
%dir %{_libdir}/mysql/plugin
%{_sysconfdir}/logrotate.d/mysql
%{_sysconfdir}/my.cnf.d/client.cnf
%{_sysconfdir}/my.cnf.d/mysql-clients.cnf
%{_sysconfdir}/my.cnf.d/server.cnf
2016-11-03 02:08:23 +03:00
%{_sysconfdir}/my.cnf.d/enable_encryption.preset
2013-12-20 16:31:08 +04:00
%{_bindir}/aria_chk
%{_bindir}/aria_dump_log
%{_bindir}/aria_ftdump
%{_bindir}/aria_pack
%{_bindir}/aria_read_log
%{_bindir}/innochecksum
%{_bindir}/myisam_ftdump
%{_bindir}/myisamchk
%{_bindir}/myisamlog
%{_bindir}/myisampack
%{_bindir}/mysql_convert_table_format
%{_bindir}/mysql_fix_extensions
%{_bindir}/mysql_install_db
%{_bindir}/mysql_plugin
%{_bindir}/mysql_secure_installation
%{_bindir}/mysql_setpermission
%{_bindir}/mysql_tzinfo_to_sql
%{_bindir}/mysql_upgrade
%{_bindir}/mysql_zap
%{_bindir}/mysqlbug
%{_bindir}/mysqld_multi
%{_bindir}/mysqld_safe
2017-01-19 07:10:22 +03:00
%{_bindir}/mysqld_safe_helper
2013-12-20 16:31:08 +04:00
%{_bindir}/mysqlhotcopy
%{_bindir}/mytop
%{_bindir}/perror
%{_bindir}/replace
%{_bindir}/resolve_stack_dump
%{_bindir}/resolveip
2016-11-03 02:08:23 +03:00
%{_bindir}/wsrep_*
2013-12-20 16:31:08 +04:00
%{_sbindir}/mysqld
%{_systemunitdir}/mysqld.service
%{_sbindir}/mysqld-prepare-db-dir
2013-12-20 16:31:08 +04:00
%{_bindir}/mysqld-wait-ready
%doc %{_docdir}/%{name}-%{version}
2013-12-25 22:01:10 +01:00
%attr(711,%{muser},%{muser}) /srv/mysql
2013-12-20 16:31:08 +04:00
%attr(711,%{muser},%{muser}) %{_localstatedir}/log/mysqld
%{_mandir}/man1/aria_chk.1*
%{_mandir}/man1/aria_dump_log.1*
%{_mandir}/man1/aria_ftdump.1*
%{_mandir}/man1/aria_pack.1*
%{_mandir}/man1/aria_read_log.1*
2013-12-20 16:31:08 +04:00
%{_mandir}/man1/innochecksum.1*
%{_mandir}/man1/myisam_ftdump.1*
%{_mandir}/man1/myisamchk.1*
%{_mandir}/man1/myisamlog.1*
%{_mandir}/man1/myisampack.1*
%{_mandir}/man1/mysql.server.1*
%{_mandir}/man1/mysql_config.1*
%{_mandir}/man1/mysql_convert_table_format.1*
%{_mandir}/man1/mysql_fix_extensions.1*
%{_mandir}/man1/mysql_install_db.1*
%{_mandir}/man1/mysql_secure_installation.1*
%{_mandir}/man1/mysql_setpermission.1*
%{_mandir}/man1/mysql_tzinfo_to_sql.1*
%{_mandir}/man1/mysql_upgrade.1*
%{_mandir}/man1/mysql_zap.1*
%{_mandir}/man1/mysqlbug.1*
%{_mandir}/man1/mysqld_multi.1*
%{_mandir}/man1/mysqld_safe.1*
%{_mandir}/man1/mysqlhotcopy.1*
%{_mandir}/man1/perror.1*
%{_mandir}/man1/replace.1*
%{_mandir}/man1/resolve_stack_dump.1*
%{_mandir}/man1/resolveip.1*
#----------------------------------------------------------------------------
2013-12-20 16:31:08 +04:00
%package msql2mysql
Summary: Tool to convert code written for mSQL to MySQL/MariaDB
Group: Development/Other
Conflicts: mysql-client < 5.7
Conflicts: mysql-cluster-client
2013-12-20 16:31:08 +04:00
%description msql2mysql
2014-01-17 17:20:18 +04:00
Tool to convert code written for mSQL to MySQL/MariaDB.
2013-12-20 16:31:08 +04:00
%files msql2mysql
%{_bindir}/msql2mysql
%{_mandir}/man1/msql2mysql.1*
#----------------------------------------------------------------------------
2013-12-20 16:31:08 +04:00
%package common
Summary: Common files needed by both the MariaDB server and client
Group: System/Servers
Obsoletes: mysql-common < 5.7
Conflicts: mysql-common-core < 5.7
Obsoletes: mysql-common-core < 5.7
2019-07-14 22:47:38 +03:00
Provides: mysql-common = %{EVRD}
2013-12-20 16:31:08 +04:00
%description common
2014-01-17 17:20:18 +04:00
Common files needed by both the MariaDB server and client.
2013-12-20 16:31:08 +04:00
%files common
%doc README COPYING
%{_sysconfdir}/my.cnf
%dir %{_sysconfdir}/my.cnf.d
%dir %{_datadir}/mysql
2016-11-03 02:08:23 +03:00
%{_datadir}/mysql/mysql_to_mariadb.sql
2013-12-20 16:31:08 +04:00
%{_datadir}/mysql/english
%{_datadir}/mysql/charsets
%{_datadir}/mysql/czech
%{_datadir}/mysql/danish
%{_datadir}/mysql/dutch
%{_datadir}/mysql/estonian
%{_datadir}/mysql/french
%{_datadir}/mysql/german
%{_datadir}/mysql/greek
%{_datadir}/mysql/hungarian
%{_datadir}/mysql/italian
%{_datadir}/mysql/japanese
%{_datadir}/mysql/korean
%{_datadir}/mysql/norwegian
%{_datadir}/mysql/norwegian-ny
%{_datadir}/mysql/polish
%{_datadir}/mysql/portuguese
%{_datadir}/mysql/romanian
%{_datadir}/mysql/russian
%{_datadir}/mysql/serbian
%{_datadir}/mysql/slovak
%{_datadir}/mysql/spanish
%{_datadir}/mysql/swedish
%{_datadir}/mysql/ukrainian
2016-11-03 12:49:48 +03:00
%{_datadir}/mysql/policy
# We put this into -common for now because it is needed for both
# -server (used by mysqld_safe) and by -devel (configure scripts calling
# it, e.g. php)
%{_bindir}/mysql_config
2017-07-20 12:30:26 +03:00
%{_bindir}/mariabackup
%{_bindir}/mbstream
%{_mandir}/man1/galera_new_cluster.1.*
%{_mandir}/man1/galera_recovery.1.*
2018-09-24 20:09:37 +03:00
%{_mandir}/man1/mariabackup.1.*
2017-07-20 12:30:26 +03:00
%{_mandir}/man1/mariadb-service-convert.1.*
2018-09-24 20:09:37 +03:00
%{_mandir}/man1/mbstream.1.*
2017-07-20 12:30:26 +03:00
%{_mandir}/man1/my_safe_process.1.*
2018-09-24 20:09:37 +03:00
%{_mandir}/man1/mysql_embedded.1.*
2017-07-20 12:30:26 +03:00
%{_mandir}/man1/mysqld_safe_helper.1.*
2018-09-24 20:09:37 +03:00
%{_mandir}/man1/tokuft_logprint.1.*
2017-07-20 12:30:26 +03:00
%{_mandir}/man1/tokuftdump.1.*
%{_mandir}/man1/wsrep_sst_common.1.*
2018-09-24 20:09:37 +03:00
%{_mandir}/man1/wsrep_sst_mariabackup.1.*
2017-07-20 12:30:26 +03:00
%{_mandir}/man1/wsrep_sst_mysqldump.1.*
%{_mandir}/man1/wsrep_sst_rsync.1.*
2018-09-24 20:09:37 +03:00
%{_mandir}/man1/wsrep_sst_rsync_wan.1.*
2017-07-20 12:30:26 +03:00
%{_mandir}/man1/wsrep_sst_xtrabackup-v2.1.*
%{_mandir}/man1/wsrep_sst_xtrabackup.1.*
2013-12-20 16:31:08 +04:00
#----------------------------------------------------------------------------
2013-12-20 16:31:08 +04:00
%package client
Summary: MariaDB command line client
Group: Databases
Conflicts: mysql-server < 5.7
Conflicts: mysql-client < 5.7
Obsoletes: mysql-client < 5.7
2019-07-14 22:47:38 +03:00
Provides: mysql-client = %{EVRD}
Conflicts: %{_lib}mysqld0 < 5.7
2013-12-20 16:31:08 +04:00
%description client
2014-01-17 17:20:18 +04:00
MariaDB command line client.
2013-12-20 16:31:08 +04:00
%files client
%{_bindir}/mysql
2014-02-20 02:12:59 +01:00
%{_bindir}/mysql_embedded
2013-12-20 16:31:08 +04:00
%{_bindir}/mysqlaccess
%{_bindir}/mysqladmin
%{_bindir}/mysqlbinlog
%{_bindir}/mysqlcheck
%{_bindir}/mysqldump
%{_bindir}/mysqldumpslow
%{_bindir}/mysql_find_rows
%{_bindir}/mysqlimport
%{_bindir}/mysqlshow
%{_bindir}/mysqlslap
%{_bindir}/mysql_waitpid
%{_bindir}/my_print_defaults
%{_mandir}/man1/mysql.1*
%{_mandir}/man1/mysqlaccess.1*
%{_mandir}/man1/mysqladmin.1*
%{_mandir}/man1/mysqlbinlog.1*
%{_mandir}/man1/mysqlcheck.1*
%{_mandir}/man1/mysqldump.1*
%{_mandir}/man1/mysqldumpslow.1*
%{_mandir}/man1/mysql_find_rows.1*
%{_mandir}/man1/mysqlimport.1*
%{_mandir}/man1/mysqlslap.1*
%{_mandir}/man1/mysqlshow.1*
%{_mandir}/man1/mysql_waitpid.1*
%{_mandir}/man1/my_print_defaults.1*
#----------------------------------------------------------------------------
2013-12-20 16:31:08 +04:00
%prep
%setup -q
2018-09-27 21:31:03 +03:00
%patch1 -p1 -b .ip6
2013-12-20 16:31:08 +04:00
# Workarounds for bugs
sed -i "s@data/test@\${INSTALL_MYSQLTESTDIR}@g" sql/CMakeLists.txt
#sed -i "s/srv_buf_size/srv_sort_buf_size/" storage/innobase/row/row0log.cc
2018-09-24 20:09:37 +03:00
2014-05-14 22:22:46 +02:00
# -flto doesn't work with the way tokudb builds static libraries
2016-11-02 23:52:10 +03:00
sed -e 's, -flto,,' -i storage/tokudb/PerconaFT/cmake_modules/TokuSetupCompiler.cmake storage/tokudb/CMakeLists.txt
2013-12-20 16:31:08 +04:00
2014-03-16 06:21:27 +00:00
%build
2013-12-20 16:31:08 +04:00
# aliasing rule violations at least in storage/tokudb/ft-index/ft/dbufio.cc
2014-03-11 14:23:14 +01:00
# -fuse-ld=bfd is necessary for the libmysql_versions.ld linker script to work.
export CFLAGS="%{optflags} -fno-strict-aliasing -Wno-error=maybe-uninitialized -fuse-ld=bfd -fno-delete-null-pointer-checks"
export CXXFLAGS="%{optflags} -fno-strict-aliasing -Wno-error=maybe-uninitialized -fuse-ld=bfd -fno-delete-null-pointer-checks"
2014-03-11 14:23:14 +01:00
export LDFLAGS="%{optflags} -fuse-ld=bfd"
2013-12-20 16:31:08 +04:00
%cmake \
-DINSTALL_LAYOUT=RPM \
2013-12-20 16:31:08 +04:00
-DMYSQL_DATADIR=/srv/mysql \
2013-12-25 22:01:10 +01:00
-DMYSQL_UNIX_ADDR=/run/mysqld/mysql.sock \
2013-12-20 16:31:08 +04:00
-DWITH_EXTRA_CHARSETS=complex \
2014-02-20 02:12:59 +01:00
-DWITH_EMBEDDED_SERVER:BOOL=ON \
-DWITH_READLINE:BOOL=ON \
2017-02-27 16:30:53 +03:00
-DWITH_LIBEVENT=system \
-DWITH_SYSTEMD=no \
-DCOMPILATION_COMMENT="ROSA MariaDB Server" \
-DCONNECT_WITH_JDBC:BOOL=OFF \
-DLZ4_LIBS:FILEPATH=%{_libdir}/liblz4.so
2013-12-20 16:31:08 +04:00
# Used by logformat during build
export LD_LIBRARY_PATH=`pwd`/storage/tokudb/ft-index/portability:$LD_LIBRARY_PATH
2018-09-24 20:09:37 +03:00
%make -ks || make
2013-12-20 16:31:08 +04:00
%install
%makeinstall_std -C build
# systemd integration
mkdir -p %{buildroot}%{_systemunitdir}
2013-12-20 16:31:08 +04:00
install -c -m 644 %{SOURCE100} %{buildroot}%{_systemunitdir}
install -c -m 755 %{SOURCE101} %{buildroot}%{_sbindir}
2013-12-20 16:31:08 +04:00
install -c -m 755 %{SOURCE102} %{buildroot}%{_bindir}
rm -rf %{buildroot}%{_sysconfdir}/init.d
2016-11-03 02:08:23 +03:00
rm -f %{buildroot}%{_sbindir}/rcmysql
2013-12-20 16:31:08 +04:00
# Fix bogus doc installation
mkdir -p %{buildroot}%{_docdir}/%{name}-%{version}
find %{buildroot}%{_docdir} -type f -exec mv {} %{buildroot}%{_docdir}/%{name}-%{version}/ ';'
2013-12-25 22:01:10 +01:00
mkdir -p %{buildroot}/srv/mysql \
2013-12-20 16:31:08 +04:00
%{buildroot}%{_localstatedir}/log/mysqld
2013-12-25 22:01:10 +01:00
chmod 711 %{buildroot}/srv/mysql \
2013-12-20 16:31:08 +04:00
%{buildroot}%{_localstatedir}/log/mysqld
# Unneeded stuff
2017-12-12 21:38:21 +03:00
rm -f %{buildroot}%{_datadir}/mysql/binary-configure \
2013-12-20 16:31:08 +04:00
%{buildroot}%{_datadir}/mysql/magic \
%{buildroot}%{_datadir}/mysql/mysql-log-rotate \
%{buildroot}%{_datadir}/mysql/solaris/postinstall-solaris
# Should those go to docs rather than just being deleted?
2017-12-12 21:38:21 +03:00
rm -f %{buildroot}%{_datadir}/mysql/config.huge.ini \
2013-12-20 16:31:08 +04:00
%{buildroot}%{_datadir}/mysql/config.medium.ini \
%{buildroot}%{_datadir}/mysql/config.small.ini \
%{buildroot}%{_datadir}/mysql/mysql.server \
%{buildroot}%{_datadir}/mysql/mysqld_multi.server \
%{buildroot}%{_datadir}/mysql/ndb-config-2-node.ini \
%{buildroot}%{_datadir}/mysql/SELinux/RHEL4/mysql.fc \
%{buildroot}%{_datadir}/mysql/SELinux/RHEL4/mysql.te
2017-12-12 21:38:21 +03:00
rm -f %{buildroot}%{_datadir}/groonga-normalizer-mysql/README.md \
%{buildroot}%{_datadir}/groonga-normalizer-mysql/lgpl-2.0.txt \
%{buildroot}%{_datadir}/groonga/COPYING \
%{buildroot}%{_datadir}/groonga/README.md \
%{buildroot}%{_datadir}/mysql/mroonga/AUTHORS \
%{buildroot}%{_datadir}/mysql/mroonga/COPYING