Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-12-SP2:GA
mariadb.5498
mariadb.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File mariadb.spec of Package mariadb.5498
# # spec file for package mariadb # # Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # # Few definitions which will alter build %define preferred 01 %define use_cmake 01 %define cluster 00 %define have_info 0 %define builtin_plugins partition,csv,heap,aria,pbxt,myisam,myisammrg,xtradb %define use_extra_provides 0 %define extra_provides mariadb %if %{?rel:0}%{!?rel:1} %define rel 1 %endif #Distribution: %dist #Packager: %packager #Vendor: %vendor Name: mariadb Summary: Server part of MariaDB License: SUSE-GPL-2.0-with-FLOSS-exception Group: Productivity/Databases/Servers Version: 10.0.32 Release: 0 %define srv_vers 5.6.38 Url: http://www.mariadb.org Source: mariadb-%{version}.tar.bz2 Source2: baselibs.conf Source3: README.debug Source4: suse-test-run Source5: mysql.SuSEfirewall2 Source7: rc.mysql-multi Source8: README.SUSE Source9: mysql-patches.tar.bz2 Source10: build.inc Source11: install.inc Source12: series Source13: configuration-tweaks.tar.bz2 Source14: my.ini BuildRoot: %{_tmppath}/%{name}-%{version}-build # useradd was in package pwdutils before 12.3, "shadow" in 12.3 and up %if 0%{?suse_version} >= 1230 PreReq: shadow BuildRequires: shadow %endif %if 0%{?suse_version} < 1230 PreReq: pwdutils BuildRequires: pwdutils %endif %if 0%{?suse_version} %if %have_info PreReq: %install_info_prereq %insserv_prereq %endif %endif BuildRequires: autoconf BuildRequires: automake BuildRequires: bison BuildRequires: cmake BuildRequires: gcc-c++ BuildRequires: libaio-devel BuildRequires: libedit-devel BuildRequires: libtool BuildRequires: ncurses-devel BuildRequires: openssl-devel BuildRequires: pam-devel BuildRequires: procps BuildRequires: readline-devel BuildRequires: unixODBC-devel BuildRequires: zlib-devel %if 0%{?suse_version} BuildRequires: tcpd-devel %endif %if 0%{?suse_version} > 1030 || 0%{?fedora_version} > 8 BuildRequires: fdupes %endif %if 0%{?fedora_version} > 11 BuildRequires: sqlite %endif %if 0%{?suse_version} > 1030 Recommends: logrotate %else Requires: logrotate %endif # required by rcmysql Requires: %{name}-client Requires: %{name}-errormessages = %version Requires: perl-base BuildRequires: pkgconfig(systemd) %{?systemd_requires} %if "%{name}" != mysql Provides: mysql = %{srv_vers} %endif Provides: mysql-Max = %{srv_vers} %if 0%{?use_extra_provides} > 0 Provides: %{extra_provides} = %{version} Obsoletes: %{extra_provides} < %{version} %endif %if 0%{?preferred} > 0 %if "%{name}" != mysql Obsoletes: mysql < %{srv_vers} %endif Obsoletes: mysql-Max < %{srv_vers} %endif Conflicts: otherproviders(mysql) %description MariaDB is a backward compatible, drop-in replacement branch of the MySQL Database Server. It includes all major open source storage engines, including the Maria storage engine. This package only contains the server-side programs. %if 0%{?preferred} > 0 %package -n libmysqlclient-devel Provides: mysql-devel = %srv_vers-%release Obsoletes: mysql-devel < %srv_vers Requires: glibc-devel Requires: libmysqlclient18 = %version Requires: libmysqlclient_r18 = %version Requires: openssl-devel Requires: zlib-devel Summary: MariaDB development header files and libraries Group: Development/Libraries/C and C++ %description -n libmysqlclient-devel This package contains the development header files and libraries necessary to develop client applications for MariaDB. %package -n libmysqld18 Summary: MariaDB embedded server development files Group: Development/Libraries/C and C++ Requires: %{name}-errormessages = %version %description -n libmysqld18 This package contains the development header files and libraries for developing applications that embed the MariaDB. %package -n libmysqld-devel Summary: MariaDB embedded server development files # the headers files are the shared Group: Development/Libraries/C and C++ Requires: libmysqlclient-devel = %version Requires: libmysqld18 = %version Requires: tcpd-devel %description -n libmysqld-devel This package contains the development header files and libraries for developing applications that embed the MariaDB. %endif %package -n libmysqlclient18 Summary: Shared Libraries for MariaDB Group: Development/Libraries/Other %description -n libmysqlclient18 This package contains the shared libraries (.so) which certain languages and applications need to dynamically load and use MariaDB. %package -n libmysqlclient_r18 Summary: Shared Libraries for MariaDB Group: Development/Libraries/Other %description -n libmysqlclient_r18 This package contains the shared libraries (.so) which certain languages and applications need to dynamically load and use MariaDB. %package client Summary: Client for MariaDB Group: Productivity/Databases/Clients %if "%{name}" != mysql Provides: mysql-client = %{srv_vers} %endif # useradd was in package pwdutils before 12.3, "shadow" in 12.3 and up %if 0%{?suse_version} >= 1230 PreReq: shadow BuildRequires: shadow %endif %if 0%{?suse_version} < 1230 PreReq: pwdutils BuildRequires: pwdutils %endif %if 0%{?use_extra_provides} > 0 Provides: %{extra_provides}-client = %{version} Obsoletes: %{extra_provides}-client < %{version} %endif Requires: %{name}-errormessages = %version %if 0%{?preferred} > 0 %if "%{name}" != mysql Obsoletes: mysql-client < %{srv_vers} %endif %endif Conflicts: otherproviders(mysql-client) %description client This package contains the standard clients for MariaDB. %package errormessages Summary: MySQL Community Server development header files and libraries Group: Development/Libraries/C and C++ %description errormessages This package provides the translated error messages for the standalone server daemon as well as the embedded server %package bench Requires: %{name}-client Requires: perl-DBD-mysql Summary: Benchmarks for MariaDB Group: Productivity/Databases/Tools %if "%{name}" != mysql Provides: mysql-bench = %{srv_vers} %endif %if 0%{?use_extra_provides} > 0 Provides: %{extra_provides}-bench = %{version} Obsoletes: %{extra_provides}-bench < %{version} %endif %if 0%{?preferred} > 0 %if "%{name}" != mysql Obsoletes: mysql-bench < %{srv_vers} %endif %endif Conflicts: otherproviders(mysql-bench) %description bench This package contains benchmark scripts and data for MariaDB. To run these database benchmarks, start the script "run-all-tests" in the directory /usr/share/sql-bench after starting MariaDB. %package debug-version Summary: MariaDB with debug options turned on Group: Productivity/Databases/Servers Requires: %{name} = %{version} Provides: %{name}-debug = %{srv_vers} Provides: mysql-debug = %{srv_vers} %if 0%{?use_extra_provides} > 0 Provides: %{extra_provides}-debug-verion = %{version} Obsoletes: %{extra_provides}-debug-version < %{version} %endif %if 0%{?preferred} > 0 Obsoletes: mysql-debug < %{srv_vers} %endif Conflicts: otherproviders(mysql-debug) %description debug-version A version of the MariaDB that has some debug code turned on. It should be only used to track down problems with the standard servers. Note that merely installing this package will bot replace the standard server. Read /usr/share/doc/packages/mysql/README.debug for information on how to use the debug server. %package test Summary: Testsuite for MariaDB Group: Productivity/Databases/Servers Requires: %{name} = %{version} Requires: %{name}-bench = %{version} Requires: %{name}-client = %{version} Requires: %{name}-tools = %{version} Requires: perl-DBD-mysql %if "%{name}" != mysql Provides: mysql-test = %{srv_vers} %endif %if 0%{?use_extra_provides} > 0 Provides: %{extra_provides}-test = %{version} Obsoletes: %{extra_provides}-test < %{version} %endif %if 0%{?preferred} > 0 %if "%{name}" != mysql Obsoletes: mysql-test < %{srv_vers} %endif %endif Conflicts: otherproviders(mysql-test) %description test This package contains the test scripts and data for MariaDB. To run the testsuite, run /usr/share/mysql-test/suse-test-run. %package tools Summary: MariaDB tools Group: Productivity/Databases/Servers Requires: perl-DBD-mysql # make sure this package is installed when updating from 10.2 and older Provides: mysql-client:/usr/bin/perror %if "%{name}" != mysql Provides: mysql-tools = %{srv_vers} %endif Provides: mysql:/usr/bin/mysqlhotcopy %if 0%{?use_extra_provides} > 0 Provides: %{extra_provides}-tools = %{version} Obsoletes: %{extra_provides}-tools < %{version} %endif %if 0%{?preferred} > 0 %if "%{name}" != mysql Obsoletes: mysql-tools < %{srv_vers} %endif %endif Conflicts: otherproviders(mysql-tools) %description tools A set of scripts for administering a MariaDB or developing applications with MariaDB. %if 0%{?cluster} > 0 %if 0%{?cluster} > 1 %package -n libndbclient6 Summary: Shared Libraries for cluster client Group: Development/Libraries/Other %description -n libndbclient6 This package contains the shared libraries (.so) which certain languages and applications need to dynamically load and use MariaDB cluster. %endif %package ndb-storage Summary: MariaDB - ndbcluster storage engine Group: Productivity/Databases/Servers %if "%{name}" != mysql Provides: mysql-ndb-storage = %{srv_vers} Obsoletes: mysql-ndb-storage < %{srv_vers} %endif Conflicts: otherproviders(mysql-ndb-storage) %description ndb-storage This package contains the ndbcluster storage engine. It is necessary to have this package installed on all computers that should store ndbcluster table data. %package ndb-management Summary: MariaDB - ndbcluster storage engine management Group: Productivity/Databases/Servers %if "%{name}" != mysql Provides: mysql-ndb-management = %{srv_vers} Obsoletes: mysql-ndb-management < %{srv_vers} %endif Conflicts: otherproviders(mysql-ndb-management) %description ndb-management This package contains ndbcluster storage engine management. It is necessary to have this package installed on at least one computer in the cluster. %package ndb-tools Summary: MariaDB - ndbcluster storage engine basic tools Group: Productivity/Databases/Servers %if "%{name}" != mysql Provides: mysql-ndb-tools = %{srv_vers} Obsoletes: mysql-ndb-tools < %{srv_vers} %endif Conflicts: otherproviders(mysql-ndb-tools) %description ndb-tools This package contains ndbcluster storage engine basic tools. %package ndb-extra Summary: MariaDB - ndbcluster storage engine extra tools Group: Productivity/Databases/Servers %if "%{name}" != mysql Provides: mysql-ndb-extra = %{srv_vers} Obsoletes: mysql-ndb-extra < %{srv_vers} %endif Conflicts: otherproviders(mysql-ndb-extra) %description ndb-extra This package contains some extra ndbcluster storage engine tools for the advanced user. They should be used with caution. %endif %prep %setup -q -n mariadb-%{version} -D -a 9 cp %_sourcedir/README.SUSE . cp %_sourcedir/suse-test-run . # apply patches from series mysql-patches/tools/quilt-setup.sh "%{S:12}" mysql-patches/tools/apply-series.sh "%{S:12}" # remove unneeded manpages ('make install' basically installs everything under # man/*) rm -f man/mysqlman.1 # dummy fallback manpage [ \! -f man/CMakeLists.txt ] || sed -i 's|mysqlman.1||' man/CMakeLists.txt rm -f man/mysql.server.1 # init script, not installed in our rpm [ \! -f man/CMakeLists.txt ] || sed -i 's|mysql.server.1||' man/CMakeLists.txt rm -f man/make_win_*.1 # windows build scripts rm -f man/comp_err.1 # built-time utility # 5.1 Carrier Grade Edition only / still under development as of 5.1.22 rm -f man/ndbd_redo_log_reader.1 # breaks VPATH builds when in sourcedir, is generated in the builddirs rm -f sql/sql_builtin.cc sed -i 's|@localstatedir@|/var/log|' support-files/mysql-log-rotate.sh %if 0%{preferred} < 1 for i in `grep -Rl mysqlclient .`; do sed -i 's|mysqlclient|mariadb100client|g' $i done %endif # Broken test that needs sources rm -f mysql-test/t/file_contents.test mysql-test/r/file_contents.result # Present only in newer MariaDB, big change, needs fixing & testing rm -rf storage/tokudb %build %{expand:%(cat %_sourcedir/build.inc)} %install %{expand:%(cat %_sourcedir/install.inc)} %pre /usr/sbin/groupadd -r mysql >/dev/null 2>/dev/null || : /usr/sbin/useradd -r -o -g mysql -u 60 -c "MySQL database admin" \ -s /bin/false -d /var/lib/mysql mysql 2> /dev/null || : /usr/sbin/usermod -g mysql -s /bin/false mysql 2> /dev/null || : # systemd requirment %service_add_pre mysql.service %pre client /usr/sbin/groupadd -r mysql >/dev/null 2>/dev/null || : /usr/sbin/useradd -r -o -g mysql -u 60 -c "MySQL database admin" \ -s /bin/false -d /var/lib/mysql mysql 2> /dev/null || : /usr/sbin/usermod -g mysql -s /bin/false mysql 2> /dev/null || : %post # systemd requirment %service_add_post mysql.service ####################################################################### # preun and posttran takes care of restart # ####################################################################### %preun [ $1 = 1 ] || /usr/sbin/rcmysql stop %service_del_preun mysql.service %pretrans -p <lua> if posix.access("/usr/sbin/rcmysql", "x") then restart = os.execute("/usr/sbin/rcmysql status > /dev/null") os.execute("/usr/sbin/rcmysql stop") if restart == 0 then os.execute("/bin/mkdir -p /var/run/mysql/restart") end end %posttrans %if %have_info [ -z "`ls %{_infodir}/mysql.info.* 2> /dev/null`" ] || \ %install_info --info-dir=%{_infodir} %{_infodir}/mysql.info.* %endif if [ -d /var/lib/mysql ]; then touch /var/lib/mysql/.run-mysql_upgrade chown -R --no-dereference mysql:mysql /var/lib/mysql fi for i in /var/lib/mysql/{.protected,.tmp}; do ( [ -d "$i" ] && rmdir "$i" ) || : done # start mysql again if it should run if [ "`ls /etc/rc.d/rc*.d/S*mysql 2> /dev/null`" ] || [ -d /var/run/mysql/restart ]; then [ -x /usr/sbin/rcmysql ] && /usr/sbin/rcmysql start rmdir /var/run/mysql/restart || : fi ####################################################################### # Various ldconfig post scripts # ####################################################################### %post -n libmysqlclient18 -p /sbin/ldconfig %postun -n libmysqlclient18 -p /sbin/ldconfig %post -n libmysqlclient_r18 -p /sbin/ldconfig %postun -n libmysqlclient_r18 -p /sbin/ldconfig %if 0%{cluster} > 1 %post -n libndbclient6 -p /sbin/ldconfig %postun -n libndbclient6 -p /sbin/ldconfig %endif %if 0%{preferred} > 0 %post -n libmysqld18 -p /sbin/ldconfig %postun -n libmysqld18 -p /sbin/ldconfig %endif %postun if [ $1 = 0 ]; then %if %have_info %install_info_delete --info-dir=%{_infodir} %{_infodir}/mysql.info.* %endif %{insserv_cleanup} %service_del_postun mysql.service fi ####################################################################### # Files section # ####################################################################### %files -f mysql.files %defattr(-, root, root) %config(noreplace) %attr(0640, root, mysql) /etc/my.cnf %dir %attr(0750, root, mysql) /etc/my.cnf.d %config(noreplace) %attr(0640, root, mysql) /etc/my.cnf.d/* %config /etc/logrotate.d/mysql %doc %{_defaultdocdir}/%{name} %if %have_info %doc %{_infodir}/mysql.info.* %endif /etc/init.d/mysql /usr/sbin/rcmysql %dir /usr/share/%{name} %dir /usr/share/mysql /usr/share/%{name}/charsets/ /usr/share/%{name}/*.sql %ghost %dir %attr(755,mysql,mysql)/var/run/mysql %dir %{_libdir}/mysql %{_libdir}/mysql/mysqld.sym %config /etc/sysconfig/SuSEfirewall2.d/services/mysql %dir %_libdir/mysql/plugin %_libdir/mysql/plugin/[!d]*.so %dir %attr(0750, mysql, mysql) /var/lib/mysql-files %files errormessages -f errormessages.files %defattr(-, root, root) /usr/share/%{name}/*/errmsg.sys %files client -f mysql-client.files %defattr(-, root, root) %config(noreplace) %attr(0640, root, mysql) /etc/mysqlaccess.conf %if 0%{preferred} > 0 %files -n libmysqlclient-devel -f libmysqlclient-devel.files %defattr(-, root, root) /usr/include/mysql %{_libdir}/libmysqlclient.so %{_libdir}/libmysqlclient_r.so %dir /usr/share/aclocal /usr/share/aclocal/mysql.m4 %files -n libmysqld-devel %defattr(-,root,root) %_libdir/libmysqld.a %_libdir/libmysqld.so %files -n libmysqld18 %defattr(-,root,root) %_libdir/libmysqld.so.* %endif %files -n libmysqlclient18 %defattr(-, root, root) %{_libdir}/libmysqlclient.so.* %if 0%{cluster} > 1 %files -n libndbclient6 %defattr(-, root, root) %{_libdir}/libndbclient.so.* %endif %files -n libmysqlclient_r18 %defattr(-, root, root) %{_libdir}/libmysqlclient_r.so.* %files bench -f mysql-bench.files %defattr(-, root, root) /usr/share/sql-bench %files debug-version %defattr(-, root, root) /usr/sbin/mysqld-debug %{_libdir}/mysql/mysqld-debug.sym %files test -f mysql-test.files %defattr(-, root, root) %{_bindir}/my_safe_process %_mandir/man1/mysql-test-run.pl.1* %_mandir/man1/mysql-stress-test.pl.1* /usr/share/mysql-test/valgrind.supp %dir %attr(755, root, root)/usr/share/mysql-test /usr/share/mysql-test/[^v]* %dir %attr(755, mysql, mysql) /usr/share/mysql-test/var %files tools -f mysql-tools.files %defattr(-, root, root) %_bindir/mysqlrepair %_bindir/mysqlanalyze %_bindir/mysqloptimize %if 0%{cluster} > 0 %files ndb-storage -f mysql-ndb-storage.files %files ndb-management -f mysql-ndb-management.files %files ndb-tools -f mysql-ndb-tools.files %files ndb-extra -f mysql-ndb-extra.files %endif %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor