49 |
|
|
50 |
%define mirror http://ftp.osuosl.org/pub/mariadb |
%define mirror http://ftp.osuosl.org/pub/mariadb |
51 |
|
|
|
%define boostver 1_53_0 |
|
|
|
|
52 |
%define muser mysql |
%define muser mysql |
53 |
|
|
54 |
|
# rule out some useless autodeps in the test suite |
55 |
|
%define _requires_exceptions perl(th\\|perl(lib\\|perl(mtr\\|perl(My |
56 |
|
%define _provides_exceptions perl(th\\|perl(lib\\|perl(mtr\\|perl(My |
57 |
|
|
58 |
Summary: A very fast and reliable SQL database engine |
Summary: A very fast and reliable SQL database engine |
59 |
Name: mariadb |
Name: mariadb |
60 |
Version: 5.5.35 |
Version: 10.0.7 |
61 |
Release: %mkrel 1 |
Release: %mkrel 0.0 |
62 |
Group: Databases |
Group: Databases |
63 |
License: GPLv2 with exceptions |
License: GPLv2 with exceptions |
64 |
URL: http://mariadb.org/ |
URL: http://mariadb.org/ |
65 |
Source0: %{mirror}/%{name}-%{version}/kvm-tarbake-jaunty-x86/%{name}-%{version}.tar.gz |
Source0: %{mirror}/%{name}-%{version}/kvm-tarbake-jaunty-x86/%{name}-%{version}.tar.gz |
|
Source2: mysqld.sysconfig |
|
66 |
Source3: my.cnf |
Source3: my.cnf |
67 |
Source10: mysql.tmpfiles.d |
Source10: mysql.tmpfiles.d |
68 |
Source11: mysqld.service |
Source11: mysqld.service |
80 |
Patch107: mariadb-5.5-mysql_install_db-quiet.patch |
Patch107: mariadb-5.5-mysql_install_db-quiet.patch |
81 |
|
|
82 |
# mageia patches |
# mageia patches |
83 |
Patch120: mariadb-5.5.25-forgotten-files.patch |
Patch121: mariadb-10.0.7-mysqlbug_67018.diff |
84 |
|
|
85 |
Requires(post): systemd >= %{systemd_required_version} |
Requires(post): systemd >= %{systemd_required_version} |
86 |
Requires(post): rpm-helper >= 0.24.8-1 |
Requires(post): rpm-helper >= 0.24.8-1 |
122 |
BuildRequires: libaio-devel |
BuildRequires: libaio-devel |
123 |
BuildRequires: pam-devel |
BuildRequires: pam-devel |
124 |
BuildConflicts: edit-devel |
BuildConflicts: edit-devel |
|
|
|
|
## internal BOOST sources |
|
|
Source200: http://download.sourceforge.net/boost/boost_%{boostver}.tar.bz2 |
|
|
# https://svn.boost.org/trac/boost/ticket/6150 |
|
|
Patch204: boost-1.50.0-fix-non-utf8-files.patch |
|
|
# https://bugzilla.redhat.com/show_bug.cgi?id=756005 |
|
|
# https://svn.boost.org/trac/boost/ticket/6131 |
|
|
Patch207: boost-1.50.0-foreach.patch |
|
|
# https://bugzilla.redhat.com/show_bug.cgi?id=783660 |
|
|
# https://svn.boost.org/trac/boost/ticket/6459 fixed |
|
|
Patch210: boost-1.50.0-long-double-1.patch |
|
|
# https://bugzilla.redhat.com/show_bug.cgi?id=828856 |
|
|
# https://bugzilla.redhat.com/show_bug.cgi?id=828857 |
|
|
Patch215: boost-1.50.0-pool.patch |
|
|
Patch216: boost-1.54.0-glibc.patch |
|
125 |
BuildRequires: python-devel |
BuildRequires: python-devel |
126 |
BuildRequires: icu-devel |
BuildRequires: icu-devel |
127 |
BuildRequires: bzip2-devel |
BuildRequires: bzip2-devel |
128 |
|
# use system jemalloc libs instead of bundled ones |
129 |
|
BuildRequires: jemalloc-devel |
130 |
|
# required by oqgraph v3 |
131 |
|
BuildRequires: boost-devel |
132 |
|
BuildRequires: judy-devel |
133 |
|
# required by cassandra |
134 |
|
BuildRequires: thrift-devel |
135 |
|
|
136 |
%description |
%description |
137 |
The MariaDB software delivers a very fast, multi-threaded, multi-user, and |
The MariaDB software delivers a very fast, multi-threaded, multi-user, and |
151 |
- MyISAMMRG Storage Engine |
- MyISAMMRG Storage Engine |
152 |
- Partition Storage Engine |
- Partition Storage Engine |
153 |
- Perfschema Storage Engine |
- Perfschema Storage Engine |
154 |
- XtraDB Storage Engine (InnoDB replacement) |
- Percona XtraDB Storage Engine (InnoDB replacement) |
155 |
|
|
156 |
The following extra storage engines are provided by the mariadb-extra package |
The following extra storage engines are provided by the mariadb-extra package |
157 |
|
|
158 |
- OQGraph Storage Engine |
- OQGraph Storage Engine |
159 |
- Sphinx Storage Engine |
- Sphinx Storage Engine |
160 |
|
- Casandra Storage Engine |
161 |
|
- CONNECT handler |
162 |
|
- Sequence Storage Engine |
163 |
|
- Spider Storage Engine |
164 |
|
|
165 |
The feedback storage engine is provided by the mariadb-feedback package |
The feedback storage engine is provided by the mariadb-feedback package |
166 |
|
|
169 |
The following storage engines are provided in the mariadb-obsolete package |
The following storage engines are provided in the mariadb-obsolete package |
170 |
|
|
171 |
- Federated Storage Engine |
- Federated Storage Engine |
|
- InnoDB Storage Engine |
|
172 |
|
|
173 |
%package -n mysql-MariaDB |
%package -n mysql-MariaDB |
174 |
Summary: A MySQL drop-in replacement |
Summary: A MySQL drop-in replacement |
199 |
Conflicts: %{name}-common-core%{_isa} < %{version}-%{release} |
Conflicts: %{name}-common-core%{_isa} < %{version}-%{release} |
200 |
|
|
201 |
%description extra |
%description extra |
202 |
MariaDB oqgraph and sphinx storage engines. |
This package provides various storage engines such as: |
203 |
|
|
204 |
|
- OQGraph Storage Engine |
205 |
|
- Sphinx Storage Engine |
206 |
|
- Casandra Storage Engine |
207 |
|
- CONNECT handler |
208 |
|
- Sequence Storage Engine |
209 |
|
- Spider Storage Engine |
210 |
|
|
211 |
%package obsolete |
%package obsolete |
212 |
Summary: MariaDB obsolete storage engines |
Summary: MariaDB obsolete storage engines |
216 |
Conflicts: mysql-core < 5.5.18 |
Conflicts: mysql-core < 5.5.18 |
217 |
|
|
218 |
%description obsolete |
%description obsolete |
219 |
MariaDB obsolete storage engines. InnoDB and Federated are being replaced by |
MariaDB obsolete storage engines. Federated are being replaced by XtraDB and |
220 |
XtraDB and FederatedX storage engines. These obsolete storage engines are |
FederatedX storage engines. These obsolete storage engines are provided in |
221 |
provided in case you need the vanilla mysql storage engines. |
case you need the vanilla mysql storage engines. |
222 |
|
|
223 |
%package core |
%package core |
224 |
Summary: Server core binary |
Summary: Server core binary |
278 |
Suggests: %{name}%{_isa} >= %{version}-%{release} |
Suggests: %{name}%{_isa} >= %{version}-%{release} |
279 |
Provides: mysql-bench = %{version}-%{release} |
Provides: mysql-bench = %{version}-%{release} |
280 |
Obsoletes: mysql-bench < %{version}-%{release} |
Obsoletes: mysql-bench < %{version}-%{release} |
281 |
|
Conflicts: mariadb < 10.0.7 |
282 |
|
|
283 |
%description bench |
%description bench |
284 |
This package contains MariaDB benchmark scripts and data. |
This package contains MariaDB benchmark scripts and data. |
363 |
%patch101 -p1 |
%patch101 -p1 |
364 |
%patch106 -p1 |
%patch106 -p1 |
365 |
%patch107 -p1 |
%patch107 -p1 |
366 |
%patch120 -p1 |
%patch121 -p1 |
367 |
|
|
368 |
mkdir -p Mageia |
mkdir -p Mageia |
|
cp %{SOURCE2} Mageia/mysqld.sysconfig |
|
369 |
cp %{SOURCE3} Mageia/my.cnf |
cp %{SOURCE3} Mageia/my.cnf |
370 |
|
|
371 |
# remove the sql_yacc.cc file so that bison will regenerate it properly, even if it's patched |
# remove the sql_yacc.cc file so that bison will regenerate it properly, even if it's patched |
393 |
# fix distribution name |
# fix distribution name |
394 |
sed -i 's/Source distribution/%{_vendor} MariaDB Server/' mysql-test/suite/percona/innodb_sys_index.result |
sed -i 's/Source distribution/%{_vendor} MariaDB Server/' mysql-test/suite/percona/innodb_sys_index.result |
395 |
|
|
396 |
## prep internal BOOST |
# static xtradb |
397 |
%setup -q -D -T -b 200 |
perl -pi -e "s|MODULE_ONLY||g" storage/xtradb/CMakeLists.txt |
|
cd ../boost_%{boostver} |
|
|
%patch204 -p1 |
|
|
%patch207 -p2 |
|
|
%patch210 -p1 |
|
|
%patch215 -p0 |
|
|
%patch216 -p1 |
|
|
cd .. |
|
398 |
|
|
399 |
%build |
%build |
400 |
|
|
|
pushd ../boost_%{boostver} |
|
|
## build internal BOOST |
|
|
%define gcc_ver %(rpm -q --queryformat="%%{VERSION}" gcc) |
|
|
cat > ./tools/build/v2/user-config.jam << EOF |
|
|
using gcc : %gcc_ver : gcc : <cflags>"%optflags -I%{_includedir}/python%{py_ver}" <cxxflags>"%optflags -I%{_includedir}/python%{py_ver}" <linkflags>"%ldflags" ; |
|
|
using python : %py_ver : %{_bindir}/python%{py_ver} : %{_includedir}/python%{py_ver} : %{_libdir} ; |
|
|
EOF |
|
|
./bootstrap.sh --with-toolset=gcc --with-icu --prefix=%{_prefix} --libdir=%{_libdir} |
|
|
./b2 -d+2 -q %{?_smp_mflags} --without-mpi \ |
|
|
--prefix=%{_prefix} --libdir=%{_libdir} \ |
|
|
linkflags="%{ldflags} -lpython%{py_ver} -lstdc++ -lm" \ |
|
|
-sHAVE_ICU=1 \ |
|
|
link=shared threading=multi debug-symbols=off --layout=system |
|
|
|
|
|
## install internal BOOST |
|
|
./b2 -d+2 -q %{?_smp_mflags} --without-mpi \ |
|
|
--prefix=%{buildroot}/../boost%{_prefix} --libdir=%{buildroot}/../boost%{_libdir} \ |
|
|
link=shared \ |
|
|
install |
|
|
popd |
|
|
|
|
|
## let oqgraph find boost |
|
|
sed -i '1iSET(BOOST_ROOT %{buildroot}/../boost%{_prefix})' storage/oqgraph/CMakeLists.txt |
|
|
|
|
401 |
## MariaDB |
## MariaDB |
402 |
%serverbuild |
%serverbuild |
403 |
export CFLAGS="${CFLAGS:-%{optflags}}" |
export CFLAGS="${CFLAGS:-%{optflags}}" |
444 |
-DWITHOUT_NDBCLUSTER_STORAGE_ENGINE=1 \ |
-DWITHOUT_NDBCLUSTER_STORAGE_ENGINE=1 \ |
445 |
-DWITHOUT_DAEMON_EXAMPLE=1 \ |
-DWITHOUT_DAEMON_EXAMPLE=1 \ |
446 |
-DWITH_PLUGIN_PBXT=0 \ |
-DWITH_PLUGIN_PBXT=0 \ |
447 |
|
-DWITH_XTRADB=1 \ |
448 |
|
-DWITHOUT_INNOBASE=1 \ |
449 |
-DFEATURE_SET="community" \ |
-DFEATURE_SET="community" \ |
450 |
-DRPM=1 \ |
-DRPM=1 \ |
451 |
-DCOMPILATION_COMMENT="%{_vendor} MariaDB Server" |
-DCOMPILATION_COMMENT="%{_vendor} MariaDB Server" |
472 |
export EXCLUDE_FROM_EOL_CONVERSION="std_data/loaddata7.dat" |
export EXCLUDE_FROM_EOL_CONVERSION="std_data/loaddata7.dat" |
473 |
|
|
474 |
# install configuration files |
# install configuration files |
|
install -m0644 Mageia/mysqld.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/mysqld |
|
475 |
install -m0644 Mageia/my.cnf %{buildroot}%{_sysconfdir}/my.cnf |
install -m0644 Mageia/my.cnf %{buildroot}%{_sysconfdir}/my.cnf |
476 |
|
|
477 |
install -m 0644 -D %{SOURCE10} %{buildroot}%{_tmpfilesdir}/mysql.conf |
install -m 0644 -D %{SOURCE10} %{buildroot}%{_tmpfilesdir}/mysql.conf |
480 |
install -m 0755 %{SOURCE13} %{buildroot}%{_sbindir}/mysqld-wait-ready |
install -m 0755 %{SOURCE13} %{buildroot}%{_sbindir}/mysqld-wait-ready |
481 |
|
|
482 |
# bork |
# bork |
|
mv %{buildroot}%{_bindir}/mysqlaccess.conf %{buildroot}%{_sysconfdir}/ |
|
|
chmod 644 %{buildroot}%{_sysconfdir}/mysqlaccess.conf |
|
483 |
mv %{buildroot}%{_datadir}/mysql/aclocal %{buildroot}%{_datadir}/aclocal |
mv %{buildroot}%{_datadir}/mysql/aclocal %{buildroot}%{_datadir}/aclocal |
484 |
|
|
485 |
pushd %{buildroot}%{_bindir} |
pushd %{buildroot}%{_bindir} |
531 |
#rm -f %{buildroot}%{_bindir}/mysql_plugin |
#rm -f %{buildroot}%{_bindir}/mysql_plugin |
532 |
rm -f %{buildroot}%{_libdir}/mysql/plugin/daemon_example.ini |
rm -f %{buildroot}%{_libdir}/mysql/plugin/daemon_example.ini |
533 |
|
|
|
# remove more useless plugins |
|
|
rm -f %{buildroot}%{_libdir}/mysql/plugin/auth_0x0100.so |
|
|
rm -f %{buildroot}%{_libdir}/mysql/plugin/auth_test_plugin.so |
|
|
rm -f %{buildroot}%{_libdir}/mysql/plugin/dialog_examples.so |
|
|
|
|
534 |
# no RHEL4 selinux files for us |
# no RHEL4 selinux files for us |
535 |
rm -rf %{buildroot}%{_datadir}/mysql/SELinux |
rm -rf %{buildroot}%{_datadir}/mysql/SELinux |
536 |
# no solaris files for us |
# no solaris files for us |
538 |
# no init script for us |
# no init script for us |
539 |
rm -f %{buildroot}%{_initrddir}/mysql |
rm -f %{buildroot}%{_initrddir}/mysql |
540 |
rm -f %{buildroot}%{_initrddir}/mysqld |
rm -f %{buildroot}%{_initrddir}/mysqld |
|
# no split up config yet |
|
|
rm -rf %{buildroot}%{_sysconfdir}/my.cnf.d |
|
541 |
|
|
542 |
# house cleaning |
# house cleaning |
543 |
rm -rf %{buildroot}%{_datadir}/info |
rm -rf %{buildroot}%{_datadir}/info |
565 |
rm -rf %{buildroot}%{_sysconfdir}/init.d/mysql |
rm -rf %{buildroot}%{_sysconfdir}/init.d/mysql |
566 |
rm -rf %{buildroot}%{_sysconfdir}/logrotate.d/mysql |
rm -rf %{buildroot}%{_sysconfdir}/logrotate.d/mysql |
567 |
|
|
568 |
|
# plugin-load-add does not work incrementally, so just disable the loading here for now |
569 |
|
perl -pi -e "s|^plugin-load-add|;plugin-load-add|g" \ |
570 |
|
%{buildroot}%{_sysconfdir}/my.cnf.d/cassandra.cnf \ |
571 |
|
%{buildroot}%{_sysconfdir}/my.cnf.d/connect.cnf \ |
572 |
|
%{buildroot}%{_sysconfdir}/my.cnf.d/oqgraph.cnf |
573 |
|
|
574 |
%multiarch_binaries %{buildroot}%{_bindir}/mysql_config |
%multiarch_binaries %{buildroot}%{_bindir}/mysql_config |
575 |
%multiarch_includes %{buildroot}%{_includedir}/mysql/my_config.h |
%multiarch_includes %{buildroot}%{_includedir}/mysql/my_config.h |
576 |
|
|
680 |
%{_libdir}/mysql/plugin/ha_federatedx.so |
%{_libdir}/mysql/plugin/ha_federatedx.so |
681 |
# sql logging plugin |
# sql logging plugin |
682 |
%{_libdir}/mysql/plugin/sql_errlog.so |
%{_libdir}/mysql/plugin/sql_errlog.so |
683 |
# upstream describes this as "junk" |
# new since 10.x |
684 |
%{_libdir}/mysql/plugin/adt_null.so |
# %%{_libdir}/mysql/plugin/ha_xtradb.so |
685 |
%{_libdir}/mysql/plugin/mypluglib.so |
%{_libdir}/mysql/plugin/locales.so |
686 |
%{_libdir}/mysql/plugin/qa_auth_client.so |
%{_libdir}/mysql/plugin/metadata_lock_info.so |
687 |
%{_libdir}/mysql/plugin/qa_auth_interface.so |
%{_libdir}/mysql/plugin/query_response_time.so |
|
%{_libdir}/mysql/plugin/qa_auth_server.so |
|
|
# example plugins, not usefull at all, removing |
|
|
#%{_libdir}/mysql/plugin/auth_0x0100.so |
|
|
#%{_libdir}/mysql/plugin/auth_test_plugin.so |
|
|
#%{_libdir}/mysql/plugin/dialog_examples.so |
|
688 |
|
|
689 |
%files -n mysql-MariaDB |
%files -n mysql-MariaDB |
690 |
|
|
691 |
%files obsolete |
%files obsolete |
|
%{_libdir}/mysql/plugin/ha_innodb.so |
|
692 |
%{_libdir}/mysql/plugin/ha_federated.so |
%{_libdir}/mysql/plugin/ha_federated.so |
693 |
|
|
694 |
%files feedback |
%files feedback |
695 |
%{_libdir}/mysql/plugin/feedback.so |
%{_libdir}/mysql/plugin/feedback.so |
696 |
|
|
697 |
%files extra |
%files extra |
698 |
|
%config(noreplace) %{_sysconfdir}/my.cnf.d/cassandra.cnf |
699 |
|
%config(noreplace) %{_sysconfdir}/my.cnf.d/connect.cnf |
700 |
|
%config(noreplace) %{_sysconfdir}/my.cnf.d/oqgraph.cnf |
701 |
%{_libdir}/mysql/plugin/ha_oqgraph.so |
%{_libdir}/mysql/plugin/ha_oqgraph.so |
702 |
%{_libdir}/mysql/plugin/ha_sphinx.so |
%{_libdir}/mysql/plugin/ha_sphinx.so |
703 |
%{_libdir}/mysql/plugin/handlersocket.so |
%{_libdir}/mysql/plugin/handlersocket.so |
705 |
%{_libdir}/mysql/plugin/query_cache_info.so |
%{_libdir}/mysql/plugin/query_cache_info.so |
706 |
# sphinx has 2 plugins now? odd, but wth |
# sphinx has 2 plugins now? odd, but wth |
707 |
%{_libdir}/mysql/plugin/sphinx.so |
%{_libdir}/mysql/plugin/sphinx.so |
708 |
|
# new since 10.x |
709 |
|
%{_libdir}/mysql/plugin/ha_cassandra.so |
710 |
|
%{_libdir}/mysql/plugin/ha_connect.so |
711 |
|
%{_libdir}/mysql/plugin/ha_sequence.so |
712 |
|
%{_libdir}/mysql/plugin/ha_spider.so |
713 |
|
%{_datadir}/mysql/install_spider.sql |
714 |
|
|
715 |
%files client |
%files client |
716 |
%config(noreplace) %{_sysconfdir}/mysqlaccess.conf |
%config(noreplace) %{_sysconfdir}/my.cnf.d/client.cnf |
717 |
|
%config(noreplace) %{_sysconfdir}/my.cnf.d/mysql-clients.cnf |
718 |
%{_bindir}/msql2mysql |
%{_bindir}/msql2mysql |
719 |
%{_bindir}/mysql |
%{_bindir}/mysql |
720 |
%{_bindir}/mysqlaccess |
%{_bindir}/mysqlaccess |
759 |
%{_mandir}/man1/mysql_client_test_embedded.1* |
%{_mandir}/man1/mysql_client_test_embedded.1* |
760 |
%{_mandir}/man1/mysqltest.1* |
%{_mandir}/man1/mysqltest.1* |
761 |
%{_mandir}/man1/mysqltest_embedded.1* |
%{_mandir}/man1/mysqltest_embedded.1* |
762 |
|
%{_libdir}/mysql/plugin/adt_null.so |
763 |
|
%{_libdir}/mysql/plugin/auth_0x0100.so |
764 |
|
%{_libdir}/mysql/plugin/auth_test_plugin.so |
765 |
|
%{_libdir}/mysql/plugin/dialog_examples.so |
766 |
|
%{_libdir}/mysql/plugin/ha_test_sql_discovery.so |
767 |
|
%{_libdir}/mysql/plugin/mypluglib.so |
768 |
|
%{_libdir}/mysql/plugin/qa_auth_client.so |
769 |
|
%{_libdir}/mysql/plugin/qa_auth_interface.so |
770 |
|
%{_libdir}/mysql/plugin/qa_auth_server.so |
771 |
|
|
772 |
%files core |
%files core |
773 |
%{_sbindir}/mysqld |
%{_sbindir}/mysqld |
774 |
|
|
775 |
%files common-core |
%files common-core |
776 |
|
%config(noreplace) %{_sysconfdir}/my.cnf.d/server.cnf |
777 |
%config(noreplace) %{_sysconfdir}/my.cnf |
%config(noreplace) %{_sysconfdir}/my.cnf |
778 |
%dir %{_datadir}/mysql |
%dir %{_datadir}/mysql |
779 |
%{_datadir}/mysql/english |
%{_datadir}/mysql/english |
781 |
|
|
782 |
%files common |
%files common |
783 |
%doc README COPYING |
%doc README COPYING |
784 |
%config(noreplace) %{_sysconfdir}/sysconfig/mysqld |
%dir %{_sysconfdir}/my.cnf.d |
785 |
%{_bindir}/aria_chk |
%{_bindir}/aria_chk |
786 |
%{_bindir}/aria_dump_log |
%{_bindir}/aria_dump_log |
787 |
%{_bindir}/aria_ftdump |
%{_bindir}/aria_ftdump |
890 |
%{_includedir}/mysql/private/atomic/*.h |
%{_includedir}/mysql/private/atomic/*.h |
891 |
%{_includedir}/mysql/psi/*.h |
%{_includedir}/mysql/psi/*.h |
892 |
%multiarch %{multiarch_includedir}/mysql/my_config.h |
%multiarch %{multiarch_includedir}/mysql/my_config.h |
|
%{_mandir}/man1/comp_err.1* |
|
893 |
%{_mandir}/man1/mysql_config.1* |
%{_mandir}/man1/mysql_config.1* |
894 |
%{_datadir}/aclocal/mysql.m4 |
%{_datadir}/aclocal/mysql.m4 |
895 |
# mysqlservices library is static, because it doesn't contain any code |
# mysqlservices library is static, because it doesn't contain any code |