2010-05-05 23:42:29 +02:00
|
|
|
#
|
2011-08-17 09:42:39 +02:00
|
|
|
# spec file for package mariadb
|
2010-05-05 23:42:29 +02:00
|
|
|
#
|
2015-06-23 15:23:57 +02:00
|
|
|
# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
|
2010-05-05 23:42:29 +02:00
|
|
|
#
|
|
|
|
# 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/
|
|
|
|
#
|
|
|
|
|
2014-12-06 14:56:41 +01:00
|
|
|
|
2015-06-23 15:23:57 +02:00
|
|
|
%define pretty_name MariaDB
|
|
|
|
%define libname mysqlclient
|
|
|
|
%define soname 18
|
|
|
|
%define preferred 01
|
2011-12-08 10:43:01 +01:00
|
|
|
%define builtin_plugins partition,csv,heap,aria,pbxt,myisam,myisammrg,xtradb
|
2014-05-23 09:29:50 +02:00
|
|
|
%define extra_provides mariadb_100
|
2015-06-23 15:23:57 +02:00
|
|
|
%define srv_vers 5.6.24
|
|
|
|
# Remove when 13.1 is out of support scope
|
2014-05-14 19:52:29 +02:00
|
|
|
%if ! %{defined _rundir}
|
|
|
|
%define _rundir %{_localstatedir}/run
|
|
|
|
%endif
|
2015-04-14 12:29:38 +02:00
|
|
|
%if 0 > 0
|
2015-04-14 12:38:26 +02:00
|
|
|
%define with_jemalloc 1
|
|
|
|
%define with_oqgraph 1
|
|
|
|
%define with_cassandra 1
|
2015-04-14 12:29:38 +02:00
|
|
|
%else
|
2015-04-14 12:38:26 +02:00
|
|
|
%define with_jemalloc 0
|
|
|
|
%define with_oqgraph 0
|
|
|
|
%define with_cassandra 0
|
2015-04-14 10:23:34 +02:00
|
|
|
%endif
|
2011-03-14 16:49:42 +01:00
|
|
|
Name: mariadb
|
2015-06-23 15:23:57 +02:00
|
|
|
Version: 10.0.19
|
2014-12-06 14:56:41 +01:00
|
|
|
Release: 0
|
2015-06-23 15:23:57 +02:00
|
|
|
Summary: Server part of %{pretty_name}
|
2012-02-18 09:26:22 +01:00
|
|
|
License: SUSE-GPL-2.0-with-FLOSS-exception
|
2010-05-05 23:42:29 +02:00
|
|
|
Group: Productivity/Databases/Servers
|
2014-09-03 15:09:43 +02:00
|
|
|
Url: https://www.mariadb.org
|
2014-12-06 14:56:41 +01:00
|
|
|
Source: https://downloads.mariadb.org/f/mariadb-%{version}/source/mariadb-%{version}.tar.gz
|
2010-05-05 23:42:29 +02:00
|
|
|
Source2: baselibs.conf
|
|
|
|
Source3: README.debug
|
|
|
|
Source4: suse-test-run
|
|
|
|
Source5: mysql.SuSEfirewall2
|
2014-05-23 09:29:50 +02:00
|
|
|
Source7: README.install
|
2014-09-03 15:09:43 +02:00
|
|
|
Source8: README.SUSE
|
2011-01-11 12:12:56 +01:00
|
|
|
Source9: mysql-patches.tar.bz2
|
|
|
|
Source11: install.inc
|
|
|
|
Source12: series
|
2011-12-08 10:43:01 +01:00
|
|
|
Source13: configuration-tweaks.tar.bz2
|
2013-06-05 07:52:53 +02:00
|
|
|
Source14: my.ini
|
2014-05-23 09:29:50 +02:00
|
|
|
Source15: rc.mysql.sysvinit
|
|
|
|
Source16: rc.mysql.systemd
|
|
|
|
Source17: mysql.service
|
2013-07-30 22:06:56 +02:00
|
|
|
BuildRequires: bison
|
2012-07-02 14:29:26 +02:00
|
|
|
BuildRequires: cmake
|
2014-12-06 14:56:41 +01:00
|
|
|
BuildRequires: fdupes
|
2012-07-02 14:29:26 +02:00
|
|
|
BuildRequires: gcc-c++
|
2013-06-06 15:23:51 +02:00
|
|
|
BuildRequires: libaio-devel
|
2014-12-06 14:56:41 +01:00
|
|
|
BuildRequires: libbz2-devel
|
2013-06-05 07:52:53 +02:00
|
|
|
BuildRequires: libedit-devel
|
2014-05-23 12:52:59 +02:00
|
|
|
BuildRequires: libevent-devel
|
2012-07-02 14:29:26 +02:00
|
|
|
BuildRequires: libtool
|
2014-12-06 14:56:41 +01:00
|
|
|
BuildRequires: libxml2-devel
|
|
|
|
BuildRequires: lzo-devel
|
2012-07-02 14:29:26 +02:00
|
|
|
BuildRequires: ncurses-devel
|
|
|
|
BuildRequires: openssl-devel
|
2012-02-18 09:26:22 +01:00
|
|
|
BuildRequires: pam-devel
|
2015-03-03 09:15:49 +01:00
|
|
|
BuildRequires: pcre-devel
|
2012-07-02 14:29:26 +02:00
|
|
|
BuildRequires: procps
|
|
|
|
BuildRequires: pwdutils
|
2014-12-06 14:56:41 +01:00
|
|
|
BuildRequires: readline-devel
|
2011-01-11 12:12:56 +01:00
|
|
|
BuildRequires: sqlite
|
2014-12-06 14:56:41 +01:00
|
|
|
BuildRequires: tcpd-devel
|
|
|
|
BuildRequires: zlib-devel
|
|
|
|
BuildRequires: pkgconfig(systemd)
|
2010-05-05 23:42:29 +02:00
|
|
|
# required by rcmysql
|
2013-02-04 17:08:57 +01:00
|
|
|
Requires: %{name}-client
|
2014-12-06 14:56:41 +01:00
|
|
|
Requires: %{name}-errormessages = %{version}
|
2013-02-04 17:08:57 +01:00
|
|
|
Requires: perl-base
|
2014-12-06 14:56:41 +01:00
|
|
|
Requires(pre): pwdutils
|
|
|
|
Recommends: logrotate
|
2015-06-23 15:23:57 +02:00
|
|
|
Conflicts: otherproviders(mariadb-server)
|
|
|
|
Conflicts: otherproviders(mysql)
|
|
|
|
Conflicts: otherproviders(mysql-debug)
|
|
|
|
Conflicts: otherproviders(mysql-server)
|
2014-12-06 14:56:41 +01:00
|
|
|
Provides: mysql-Max = %{srv_vers}
|
|
|
|
# Compatibility with Fedora/CentOS
|
|
|
|
Provides: mysql-server = %{srv_vers}
|
|
|
|
Provides: mariadb-server = %{srv_vers}
|
|
|
|
# Compatibility with old version
|
|
|
|
Provides: %{name}-debug-version = %{srv_vers}
|
|
|
|
Obsoletes: %{name}-debug-version < %{srv_vers}
|
|
|
|
Provides: %{name}-debug = %{srv_vers}
|
|
|
|
Obsoletes: %{name}-debug < %{srv_vers}
|
2015-06-23 15:23:57 +02:00
|
|
|
Provides: mysql = %{srv_vers}
|
|
|
|
Provides: mysql-debug = %{srv_vers}
|
2014-12-06 14:56:41 +01:00
|
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
2013-03-15 09:54:20 +01:00
|
|
|
%{?systemd_requires}
|
2015-06-23 15:23:57 +02:00
|
|
|
%if 0%{with_oqgraph} > 0 || 0%{with_cassandra} > 0
|
|
|
|
BuildRequires: boost-devel
|
2013-03-15 09:54:20 +01:00
|
|
|
%endif
|
2015-06-23 15:23:57 +02:00
|
|
|
%if 0%{with_jemalloc} > 0
|
|
|
|
BuildRequires: jemalloc-devel
|
|
|
|
%endif
|
|
|
|
%if 0%{with_oqgraph} > 0
|
|
|
|
BuildRequires: judy-devel
|
|
|
|
%endif
|
|
|
|
%if 0%{with_cassandra} > 0
|
|
|
|
BuildRequires: libthrift-devel
|
2013-08-12 12:27:00 +02:00
|
|
|
%endif
|
2012-03-12 17:06:36 +01:00
|
|
|
Provides: %{extra_provides} = %{version}
|
|
|
|
Obsoletes: %{extra_provides} < %{version}
|
2014-12-06 14:56:41 +01:00
|
|
|
Provides: %{extra_provides}-debug-version = %{version}
|
|
|
|
Obsoletes: %{extra_provides}-debug-version < %{version}
|
2014-05-23 10:06:28 +02:00
|
|
|
%if 0%{?preferred} > 0
|
2014-12-06 14:56:41 +01:00
|
|
|
Obsoletes: mysql-Max < %{srv_vers}
|
2011-12-08 10:43:01 +01:00
|
|
|
Obsoletes: mysql < %{srv_vers}
|
2014-12-06 14:56:41 +01:00
|
|
|
Obsoletes: mysql-debug < %{srv_vers}
|
2013-08-12 12:27:00 +02:00
|
|
|
%endif
|
2011-08-17 09:42:39 +02:00
|
|
|
|
2010-05-05 23:42:29 +02:00
|
|
|
%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.
|
|
|
|
|
2014-05-23 10:06:28 +02:00
|
|
|
%if 0%{?preferred} > 0
|
2010-05-05 23:42:29 +02:00
|
|
|
%package -n libmysqlclient-devel
|
2015-06-23 15:23:57 +02:00
|
|
|
Summary: %{pretty_name} development header files and libraries
|
2014-12-06 14:56:41 +01:00
|
|
|
Group: Development/Libraries/C and C++
|
2013-02-04 17:08:57 +01:00
|
|
|
Requires: glibc-devel
|
2015-06-23 15:23:57 +02:00
|
|
|
Requires: libmysqlclient_r%{soname} = %{version}
|
|
|
|
Requires: libmysqlclient%{soname} = %{version}
|
2011-12-08 10:43:01 +01:00
|
|
|
Requires: openssl-devel
|
|
|
|
Requires: zlib-devel
|
2010-05-05 23:42:29 +02:00
|
|
|
|
|
|
|
%description -n libmysqlclient-devel
|
|
|
|
This package contains the development header files and libraries
|
2015-06-23 15:23:57 +02:00
|
|
|
necessary to develop client applications for %{pretty_name}.
|
2010-05-05 23:42:29 +02:00
|
|
|
|
2015-06-23 15:23:57 +02:00
|
|
|
%package -n libmysqld%{soname}
|
|
|
|
Summary: %{pretty_name} embedded server development files
|
2010-05-05 23:42:29 +02:00
|
|
|
Group: Development/Libraries/C and C++
|
2014-12-06 14:56:41 +01:00
|
|
|
Requires: %{name}-errormessages = %{version}
|
2010-05-05 23:42:29 +02:00
|
|
|
|
2015-06-23 15:23:57 +02:00
|
|
|
%description -n libmysqld%{soname}
|
2010-05-05 23:42:29 +02:00
|
|
|
This package contains the development header files and libraries
|
2015-06-23 15:23:57 +02:00
|
|
|
for developing applications that embed the %{pretty_name}.
|
2010-05-05 23:42:29 +02:00
|
|
|
|
|
|
|
%package -n libmysqld-devel
|
2015-06-23 15:23:57 +02:00
|
|
|
Summary: %{pretty_name} embedded server development files
|
2013-02-04 17:08:57 +01:00
|
|
|
Group: Development/Libraries/C and C++
|
2010-05-05 23:42:29 +02:00
|
|
|
# the headers files are the shared
|
2014-12-06 14:56:41 +01:00
|
|
|
Requires: libmysqlclient-devel = %{version}
|
2015-06-23 15:23:57 +02:00
|
|
|
Requires: libmysqld%{soname} = %{version}
|
2013-02-04 17:08:57 +01:00
|
|
|
Requires: tcpd-devel
|
2010-05-05 23:42:29 +02:00
|
|
|
|
|
|
|
%description -n libmysqld-devel
|
|
|
|
This package contains the development header files and libraries
|
2015-06-23 15:23:57 +02:00
|
|
|
for developing applications that embed the %{pretty_name}.
|
2011-12-08 10:43:01 +01:00
|
|
|
%endif
|
2010-05-05 23:42:29 +02:00
|
|
|
|
2015-06-23 15:23:57 +02:00
|
|
|
%package -n lib%{libname}%{soname}
|
|
|
|
Summary: Shared Libraries for %{pretty_name}
|
2010-05-05 23:42:29 +02:00
|
|
|
Group: Development/Libraries/Other
|
|
|
|
|
2015-06-23 15:23:57 +02:00
|
|
|
%description -n lib%{libname}%{soname}
|
2010-05-05 23:42:29 +02:00
|
|
|
This package contains the shared libraries (.so) which certain
|
2015-06-23 15:23:57 +02:00
|
|
|
languages and applications need to dynamically load and use %{pretty_name}.
|
2010-05-05 23:42:29 +02:00
|
|
|
|
2015-06-23 15:23:57 +02:00
|
|
|
%package -n lib%{libname}_r%{soname}
|
|
|
|
Summary: Shared Libraries for %{pretty_name}
|
2010-05-05 23:42:29 +02:00
|
|
|
Group: Development/Libraries/Other
|
2015-06-23 15:23:57 +02:00
|
|
|
Requires: lib%{libname}%{soname}
|
2010-05-05 23:42:29 +02:00
|
|
|
|
2015-06-23 15:23:57 +02:00
|
|
|
%description -n lib%{libname}_r%{soname}
|
2010-05-05 23:42:29 +02:00
|
|
|
This package contains the shared libraries (.so) which certain
|
2015-06-23 15:23:57 +02:00
|
|
|
languages and applications need to dynamically load and use %{pretty_name}.
|
2010-05-05 23:42:29 +02:00
|
|
|
|
|
|
|
%package client
|
2015-06-23 15:23:57 +02:00
|
|
|
Summary: Client for %{pretty_name}
|
2010-05-05 23:42:29 +02:00
|
|
|
Group: Productivity/Databases/Clients
|
2014-12-06 14:56:41 +01:00
|
|
|
Requires: %{name}-errormessages = %{version}
|
2015-06-23 15:23:57 +02:00
|
|
|
# Explicit requires to pull in charsets for errormessages
|
|
|
|
Requires: lib%{libname}%{soname}
|
|
|
|
Requires(pre): pwdutils
|
2014-12-06 14:56:41 +01:00
|
|
|
Conflicts: otherproviders(mysql-client)
|
2010-05-05 23:42:29 +02:00
|
|
|
Provides: mysql-client = %{srv_vers}
|
2012-03-12 17:06:36 +01:00
|
|
|
Provides: %{extra_provides}-client = %{version}
|
|
|
|
Obsoletes: %{extra_provides}-client < %{version}
|
2014-05-23 10:06:28 +02:00
|
|
|
%if 0%{?preferred} > 0
|
2011-12-08 10:43:01 +01:00
|
|
|
Obsoletes: mysql-client < %{srv_vers}
|
|
|
|
%endif
|
2010-05-05 23:42:29 +02:00
|
|
|
|
|
|
|
%description client
|
2015-06-23 15:23:57 +02:00
|
|
|
This package contains the standard clients for %{pretty_name}.
|
2010-05-05 23:42:29 +02:00
|
|
|
|
2012-06-25 14:08:16 +02:00
|
|
|
%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
|
|
|
|
|
2010-05-05 23:42:29 +02:00
|
|
|
%package bench
|
2015-06-23 15:23:57 +02:00
|
|
|
Summary: Benchmarks for %{pretty_name}
|
2010-05-05 23:42:29 +02:00
|
|
|
Group: Productivity/Databases/Tools
|
2014-12-06 14:56:41 +01:00
|
|
|
Requires: %{name}-client
|
|
|
|
Requires: perl-DBD-mysql
|
|
|
|
Conflicts: otherproviders(mysql-bench)
|
2010-05-05 23:42:29 +02:00
|
|
|
Provides: mysql-bench = %{srv_vers}
|
2012-03-12 17:06:36 +01:00
|
|
|
Provides: %{extra_provides}-bench = %{version}
|
|
|
|
Obsoletes: %{extra_provides}-bench < %{version}
|
2014-05-23 10:06:28 +02:00
|
|
|
%if 0%{?preferred} > 0
|
2011-12-08 10:43:01 +01:00
|
|
|
Obsoletes: mysql-bench < %{srv_vers}
|
|
|
|
%endif
|
2010-05-05 23:42:29 +02:00
|
|
|
|
|
|
|
%description bench
|
2015-06-23 15:23:57 +02:00
|
|
|
This package contains benchmark scripts and data for %{pretty_name}.
|
2010-05-05 23:42:29 +02:00
|
|
|
|
|
|
|
To run these database benchmarks, start the script "run-all-tests" in
|
2015-06-23 15:23:57 +02:00
|
|
|
the directory %{_datadir}/sql-bench after starting %{pretty_name}.
|
2010-05-05 23:42:29 +02:00
|
|
|
|
|
|
|
%package test
|
2015-06-23 15:23:57 +02:00
|
|
|
Summary: Testsuite for %{pretty_name}
|
2010-05-05 23:42:29 +02:00
|
|
|
Group: Productivity/Databases/Servers
|
2011-07-27 13:56:09 +02:00
|
|
|
Requires: %{name} = %{version}
|
2013-02-04 17:08:57 +01:00
|
|
|
Requires: %{name}-bench = %{version}
|
2011-07-27 13:56:09 +02:00
|
|
|
Requires: %{name}-client = %{version}
|
2013-02-03 15:37:10 +01:00
|
|
|
Requires: %{name}-tools = %{version}
|
2013-02-04 17:08:57 +01:00
|
|
|
Requires: perl-DBD-mysql
|
2014-12-06 14:56:41 +01:00
|
|
|
Conflicts: otherproviders(mysql-test)
|
2010-05-05 23:42:29 +02:00
|
|
|
Provides: mysql-test = %{srv_vers}
|
2012-03-12 17:06:36 +01:00
|
|
|
Provides: %{extra_provides}-test = %{version}
|
|
|
|
Obsoletes: %{extra_provides}-test < %{version}
|
2014-05-23 10:06:28 +02:00
|
|
|
%if 0%{?preferred} > 0
|
2011-12-08 10:43:01 +01:00
|
|
|
Obsoletes: mysql-test < %{srv_vers}
|
|
|
|
%endif
|
2010-05-05 23:42:29 +02:00
|
|
|
|
|
|
|
%description test
|
2015-06-23 15:23:57 +02:00
|
|
|
This package contains the test scripts and data for %{pretty_name}.
|
2010-05-05 23:42:29 +02:00
|
|
|
|
2014-12-06 14:56:41 +01:00
|
|
|
To run the testsuite, run %{_datadir}/mysql-test/suse-test-run.
|
2010-05-05 23:42:29 +02:00
|
|
|
|
|
|
|
%package tools
|
2015-06-23 15:23:57 +02:00
|
|
|
Summary: %{pretty_name} tools
|
2010-05-05 23:42:29 +02:00
|
|
|
Group: Productivity/Databases/Servers
|
|
|
|
Requires: perl-DBD-mysql
|
2015-06-23 15:23:57 +02:00
|
|
|
Conflicts: otherproviders(mysql-tools)
|
2010-05-05 23:42:29 +02:00
|
|
|
# make sure this package is installed when updating from 10.2 and older
|
2014-12-06 14:56:41 +01:00
|
|
|
Provides: mysql-client:%{_bindir}/perror
|
|
|
|
Provides: mysql:%{_bindir}/mysqlhotcopy
|
2010-05-05 23:42:29 +02:00
|
|
|
Provides: mysql-tools = %{srv_vers}
|
2012-03-12 17:06:36 +01:00
|
|
|
Provides: %{extra_provides}-tools = %{version}
|
|
|
|
Obsoletes: %{extra_provides}-tools < %{version}
|
2014-05-23 10:06:28 +02:00
|
|
|
%if 0%{?preferred} > 0
|
2011-12-08 10:43:01 +01:00
|
|
|
Obsoletes: mysql-tools < %{srv_vers}
|
|
|
|
%endif
|
2010-05-05 23:42:29 +02:00
|
|
|
|
|
|
|
%description tools
|
2015-06-23 15:23:57 +02:00
|
|
|
A set of scripts for administering a %{pretty_name} or developing
|
|
|
|
applications with %{pretty_name}.
|
2010-05-05 23:42:29 +02:00
|
|
|
|
|
|
|
%prep
|
2012-04-10 11:53:56 +02:00
|
|
|
%setup -q -n mariadb-%{version} -D -a 9
|
2014-12-06 14:56:41 +01:00
|
|
|
cp %{_sourcedir}/README.SUSE .
|
|
|
|
cp %{_sourcedir}/suse-test-run .
|
2011-01-11 12:12:56 +01:00
|
|
|
# apply patches from series
|
2014-12-06 14:56:41 +01:00
|
|
|
mysql-patches/tools/quilt-setup.sh "%{SOURCE12}"
|
|
|
|
mysql-patches/tools/apply-series.sh "%{SOURCE12}"
|
2010-05-05 23:42:29 +02:00
|
|
|
# remove unneeded manpages ('make install' basically installs everything under
|
|
|
|
# man/*)
|
|
|
|
rm -f man/mysqlman.1 # dummy fallback manpage
|
2012-06-19 16:26:01 +02:00
|
|
|
[ \! -f man/CMakeLists.txt ] || sed -i 's|mysqlman.1||' man/CMakeLists.txt
|
2010-05-05 23:42:29 +02:00
|
|
|
rm -f man/mysql.server.1 # init script, not installed in our rpm
|
2012-06-19 16:26:01 +02:00
|
|
|
[ \! -f man/CMakeLists.txt ] || sed -i 's|mysql.server.1||' man/CMakeLists.txt
|
2010-05-05 23:42:29 +02:00
|
|
|
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
|
2014-12-06 14:56:41 +01:00
|
|
|
sed -i 's|@localstatedir@|%{_localstatedir}/log|' support-files/mysql-log-rotate.sh
|
2014-05-23 10:06:28 +02:00
|
|
|
%if 0%{preferred} < 1
|
2010-05-05 23:42:29 +02:00
|
|
|
for i in `grep -Rl mysqlclient .`; do
|
2015-06-23 15:23:57 +02:00
|
|
|
sed -i 's|mysqlclient|%{libname}|g' $i
|
|
|
|
sed -i 's|-lib%{libname}-symbols.patch|-libmysqlclient-symbols.patch|g' $i
|
2010-05-05 23:42:29 +02:00
|
|
|
done
|
|
|
|
%endif
|
2013-01-17 09:17:25 +01:00
|
|
|
# Broken test that needs sources
|
|
|
|
rm -f mysql-test/t/file_contents.test mysql-test/r/file_contents.result
|
2013-12-11 12:03:05 +01:00
|
|
|
# Specify perl path on shebangs
|
|
|
|
for i in `grep -Rl '^#!@PERL@$' .`; do
|
2014-12-06 14:56:41 +01:00
|
|
|
sed -i 's|@PERL@|%{_bindir}/perl|' $i
|
2013-12-11 12:03:05 +01:00
|
|
|
done
|
2011-08-17 09:42:39 +02:00
|
|
|
|
2010-05-05 23:42:29 +02:00
|
|
|
%build
|
2015-06-23 15:23:57 +02:00
|
|
|
EXTRA_FLAGS="-Wno-unused-but-set-variable -fno-strict-aliasing -Wno-unused-parameter"
|
|
|
|
# Mariadb devs seems to fall in love with -Werror option
|
|
|
|
EXTRA_FLAGS="${EXTRA_FLAGS} -Wno-error"
|
|
|
|
export CFLAGS="%{optflags} -DOPENSSL_LOAD_CONF -DPIC -fPIC -DFORCE_INIT_OF_VARS $EXTRA_FLAGS"
|
|
|
|
export CXXFLAGS="$CFLAGS -felide-constructors"
|
|
|
|
%cmake -DWITH_SSL=system \
|
|
|
|
-DWITH_ZLIB=system \
|
|
|
|
-DWITH_LIBEVENT=system \
|
|
|
|
-DWITH_JEMALLOC=auto \
|
|
|
|
-DWITH_READLINE=0 \
|
|
|
|
-DWITH_LIBEDIT=0 \
|
|
|
|
-DINSTALL_LAYOUT=RPM \
|
|
|
|
-DMYSQL_UNIX_ADDR="%{_localstatedir}/run/mysql/mysql.sock" \
|
|
|
|
-DINSTALL_UNIX_ADDRDIR="%{_localstatedir}/run/mysql/mysql.sock" \
|
|
|
|
-DINSTALL_MYSQLSHAREDIR=share/%{name} \
|
|
|
|
-DWITH_COMMENT="openSUSE MySQL rpm" \
|
|
|
|
-DWITH_EXTRA_CHARSET=all \
|
|
|
|
-DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci \
|
|
|
|
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
|
|
|
|
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
|
|
|
|
%if 0%{with_oqgraph} > 0
|
|
|
|
-DWITH_OQGRAPH_STORAGE_ENGINE=1 \
|
|
|
|
%endif
|
|
|
|
%if 0%{with_cassandra} > 0
|
|
|
|
-DWITH_CASSANDRA_STORAGE_ENGINE=1 \
|
|
|
|
%endif
|
|
|
|
-DWITH_XTRADB_STORAGE_ENGINE=1 \
|
|
|
|
-DWITH_CSV_STORAGE_ENGINE=1 \
|
|
|
|
-DWITH_HANDLERSOCKET_STORAGE_ENGINE=1 \
|
|
|
|
-DWITH_EMBEDDED_SERVER=true \
|
|
|
|
-DCOMPILATION_COMMENT="openSUSE package" \
|
|
|
|
-DDENABLE_DOWNLOADS=false \
|
|
|
|
-DINSTALL_PLUGINDIR_RPM="%{_lib}/mysql/plugin" \
|
|
|
|
-DINSTALL_LIBDIR_RPM="%{_lib}" \
|
|
|
|
-DINSTALL_SYSCONF2DIR="%{_sysconfdir}/my.cnf.d" \
|
|
|
|
-DCMAKE_C_FLAGS_RELWITHDEBINFO="$CFLAGS" \
|
|
|
|
-DCMAKE_CXX_FLAGS_RELWITHDEBINFO="$CXXFLAGS" \
|
|
|
|
-DCMAKE_BUILD_TYPE=RelWithDebInfo -DINSTALL_SQLBENCHDIR=share \
|
|
|
|
-DCMAKE_C_FLAGS="$CFLAGS" \
|
|
|
|
-DCMAKE_CXX_FLAGS="$CXXFLAGS" \
|
|
|
|
-DCMAKE_EXE_LINKER_FLAGS="-Wl,--as-needed -pie -Wl,-z,relro,-z,now" \
|
|
|
|
-DCMAKE_MODULE_LINKER_FLAGS="-Wl,--as-needed -pie -Wl,-z,relro,-z,now" \
|
|
|
|
-DCMAKE_SHARED_LINKER_FLAGS="-Wl,--as-needed -pie -Wl,-z,relro,-z,now" \
|
|
|
|
-Wno-dev "$@" ..
|
|
|
|
make %{?_smp_mflags}
|
|
|
|
nm --numeric-sort sql/mysqld > sql/mysqld.sym
|
2010-05-05 23:42:29 +02:00
|
|
|
|
|
|
|
%install
|
2014-12-06 14:56:41 +01:00
|
|
|
%{expand:%(cat %{_sourcedir}/install.inc)}
|
2010-05-05 23:42:29 +02:00
|
|
|
|
|
|
|
%pre
|
2014-12-06 14:56:41 +01:00
|
|
|
%{_sbindir}/groupadd -r mysql >/dev/null 2>/dev/null || :
|
|
|
|
%{_sbindir}/useradd -r -o -g mysql -u 60 -c "MySQL database admin" \
|
|
|
|
-s /bin/false -d %{_localstatedir}/lib/mysql mysql 2> /dev/null || :
|
|
|
|
%{_sbindir}/usermod -g mysql -s /bin/false mysql 2> /dev/null || :
|
2013-03-15 09:54:20 +01:00
|
|
|
%service_add_pre mysql.service
|
|
|
|
|
2013-06-06 15:23:51 +02:00
|
|
|
%pre client
|
2014-12-06 14:56:41 +01:00
|
|
|
%{_sbindir}/groupadd -r mysql >/dev/null 2>/dev/null || :
|
|
|
|
%{_sbindir}/useradd -r -o -g mysql -u 60 -c "MySQL database admin" \
|
|
|
|
-s /bin/false -d %{_localstatedir}/lib/mysql mysql 2> /dev/null || :
|
|
|
|
%{_sbindir}/usermod -g mysql -s /bin/false mysql 2> /dev/null || :
|
2013-06-06 15:23:51 +02:00
|
|
|
|
2013-03-15 09:54:20 +01:00
|
|
|
%post
|
|
|
|
%service_add_post mysql.service
|
2010-05-05 23:42:29 +02:00
|
|
|
|
2011-12-08 10:43:01 +01:00
|
|
|
#######################################################################
|
|
|
|
# preun and posttran takes care of restart #
|
|
|
|
#######################################################################
|
2014-12-06 14:56:41 +01:00
|
|
|
|
2010-05-05 23:42:29 +02:00
|
|
|
%preun
|
2014-12-06 14:56:41 +01:00
|
|
|
[ $1 = 1 ] || %{_sbindir}/rcmysql stop || true
|
2011-12-08 10:43:01 +01:00
|
|
|
|
2010-05-05 23:42:29 +02:00
|
|
|
%posttrans
|
2015-03-03 09:15:49 +01:00
|
|
|
rm -f %{_localstatedir}/adm/update-messages/%{name}-%{version}-%{release}
|
2014-11-14 20:24:46 +01:00
|
|
|
for in in protected tmp; do
|
2014-12-06 14:56:41 +01:00
|
|
|
rmdir %{_localstatedir}/lib/mysql/.$i 2>/dev/null || :
|
2010-05-05 23:42:29 +02:00
|
|
|
done
|
2015-03-03 09:15:49 +01:00
|
|
|
# During package rename, there might be config file move
|
2015-06-23 15:23:57 +02:00
|
|
|
if [ -f %{_sysconfdir}/my.cnf.rpmsave ]; then
|
|
|
|
mv %{_sysconfdir}/my.cnf{,.rpmnew}
|
|
|
|
mv %{_sysconfdir}/my.cnf{.rpmsave,}
|
2015-03-03 09:15:49 +01:00
|
|
|
cat >> %{_localstatedir}/adm/update-messages/%{name}-%{version}-%{release} << EOF
|
|
|
|
|
2015-06-23 15:23:57 +02:00
|
|
|
WARNING: %{_sysconfdir}/my.cnf.rpmsave file detected!
|
2015-03-03 09:15:49 +01:00
|
|
|
|
|
|
|
This probably means that you are upgrading from different variant of MySQL.
|
|
|
|
Your original configuration file was restored. If it is not a case, you can
|
2015-06-23 15:23:57 +02:00
|
|
|
find your original %{_sysconfdir}/my.cnf as %{_sysconfdir}/my.cnf.rpmnew
|
2015-03-03 09:15:49 +01:00
|
|
|
|
|
|
|
EOF
|
|
|
|
|
2010-05-05 23:42:29 +02:00
|
|
|
fi
|
2014-05-23 09:29:50 +02:00
|
|
|
# warn on first run
|
2014-12-06 14:56:41 +01:00
|
|
|
if [ -x %{_bindir}/my_print_defaults ]; then
|
|
|
|
datadir="`%{_bindir}/my_print_defaults mysqld mysql_server | sed -n 's|--datadir=||p'`"
|
2014-05-23 09:29:50 +02:00
|
|
|
fi
|
2015-03-03 09:15:49 +01:00
|
|
|
[ -n "$datadir" ] || datadir="%{_localstatedir}/lib/mysql"
|
|
|
|
if [ -d "$datadir/mysql" ]; then
|
|
|
|
touch "$datadir/.run-mysql_upgrade"
|
|
|
|
fi
|
|
|
|
for in in protected tmp; do
|
|
|
|
rmdir "$datadir"/.$i 2>/dev/null || :
|
|
|
|
done
|
|
|
|
if [ \! -f "$datadir/mysql_upgrade_info" ]; then
|
|
|
|
cat >> %{_localstatedir}/adm/update-messages/%{name}-%{version}-%{release} << EOF
|
|
|
|
|
2014-12-06 14:56:41 +01:00
|
|
|
%(cat %{_sourcedir}/README.install)
|
2015-03-03 09:15:49 +01:00
|
|
|
|
2014-05-23 09:29:50 +02:00
|
|
|
EOF
|
2015-03-03 09:15:49 +01:00
|
|
|
else
|
|
|
|
MYSQLVER="`echo %{version} | sed 's|\.[0-9]\+$||'`"
|
|
|
|
if [ -f "$datadir/mysql_upgrade_info" ] && \
|
|
|
|
[ -z "`grep "^$MYSQLVER" "$datadir/mysql_upgrade_info" 2> /dev/null`" ]; then
|
|
|
|
cat >> %{_localstatedir}/adm/update-messages/%{name}-%{version}-%{release} << EOF
|
|
|
|
|
|
|
|
WARNING: You are upgrading from different stable version of MySQL!
|
|
|
|
|
|
|
|
Your database will be migrated automatically during next restart of MySQL.
|
|
|
|
Before you do that make sure you have up to date backup of your data. It
|
|
|
|
should be mainly in $datadir directory.
|
|
|
|
|
|
|
|
EOF
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
# start mysql again if it should run - migration from old setup
|
|
|
|
if [ -d %{_rundir}/mysql/restart ]; then
|
|
|
|
[ -x %{_sbindir}/rcmysql ] && %{_sbindir}/rcmysql start
|
|
|
|
# Might not be there, so ignoring errors
|
|
|
|
rmdir %{_rundir}/mysql/restart 2> /dev/null
|
2014-05-23 09:29:50 +02:00
|
|
|
fi
|
2010-05-05 23:42:29 +02:00
|
|
|
|
2011-12-08 10:43:01 +01:00
|
|
|
#######################################################################
|
|
|
|
# Various ldconfig post scripts #
|
|
|
|
#######################################################################
|
2011-08-17 09:42:39 +02:00
|
|
|
|
2015-06-23 15:23:57 +02:00
|
|
|
%post -n lib%{libname}%{soname} -p /sbin/ldconfig
|
2011-08-17 09:42:39 +02:00
|
|
|
|
2015-06-23 15:23:57 +02:00
|
|
|
%postun -n lib%{libname}%{soname} -p /sbin/ldconfig
|
2011-08-17 09:42:39 +02:00
|
|
|
|
2015-06-23 15:23:57 +02:00
|
|
|
%post -n lib%{libname}_r%{soname} -p /sbin/ldconfig
|
2011-08-17 09:42:39 +02:00
|
|
|
|
2015-06-23 15:23:57 +02:00
|
|
|
%postun -n lib%{libname}_r%{soname} -p /sbin/ldconfig
|
2011-01-11 12:12:56 +01:00
|
|
|
|
2014-05-23 10:06:28 +02:00
|
|
|
%if 0%{preferred} > 0
|
2011-12-08 10:43:01 +01:00
|
|
|
%post -n libmysqld18 -p /sbin/ldconfig
|
2011-08-17 09:42:39 +02:00
|
|
|
|
2011-12-08 10:43:01 +01:00
|
|
|
%postun -n libmysqld18 -p /sbin/ldconfig
|
2010-05-05 23:42:29 +02:00
|
|
|
%endif
|
|
|
|
|
|
|
|
%postun
|
|
|
|
if [ $1 = 0 ]; then
|
2014-12-06 14:56:41 +01:00
|
|
|
%insserv_cleanup
|
|
|
|
rm -f "%{_localstatedir}/lib/systemd/migrated/mysql.service"
|
|
|
|
if [ -x %{_bindir}/systemctl ]; then
|
|
|
|
%{_bindir}/systemctl daemon-reload >/dev/null 2>&1 || :
|
2013-03-26 13:57:24 +01:00
|
|
|
fi
|
2010-05-05 23:42:29 +02:00
|
|
|
fi
|
|
|
|
|
2011-12-08 10:43:01 +01:00
|
|
|
#######################################################################
|
|
|
|
# Files section #
|
|
|
|
#######################################################################
|
2011-08-17 09:42:39 +02:00
|
|
|
|
2010-05-05 23:42:29 +02:00
|
|
|
%files -f mysql.files
|
|
|
|
%defattr(-, root, root)
|
2014-12-06 14:56:41 +01:00
|
|
|
%config(noreplace) %attr(0640, root, mysql) %{_sysconfdir}/my.cnf
|
|
|
|
%dir %attr(0750, root, mysql) %{_sysconfdir}/my.cnf.d
|
|
|
|
%config(noreplace) %attr(0640, root, mysql) %{_sysconfdir}/my.cnf.d/*
|
|
|
|
%config %{_sysconfdir}/logrotate.d/mysql
|
2010-05-05 23:42:29 +02:00
|
|
|
%doc %{_defaultdocdir}/%{name}
|
2014-12-06 14:56:41 +01:00
|
|
|
%dir %{_libexecdir}/mysql
|
|
|
|
%{_libexecdir}/mysql/rcmysql
|
|
|
|
%{_libexecdir}/systemd/system/mysql.service
|
|
|
|
%{_sbindir}/rcmysql
|
|
|
|
%dir %{_datadir}/%{name}
|
|
|
|
%dir %{_datadir}/mysql
|
|
|
|
%{_datadir}/%{name}/charsets/
|
|
|
|
%{_datadir}/%{name}/*.sql
|
2010-05-05 23:42:29 +02:00
|
|
|
%dir %{_libdir}/mysql
|
|
|
|
%{_libdir}/mysql/mysqld.sym
|
2014-12-06 14:56:41 +01:00
|
|
|
%config %{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/mysql
|
|
|
|
%dir %{_libdir}/mysql/plugin
|
|
|
|
%{_libdir}/mysql/plugin/[!d]*.so
|
2011-08-17 09:42:39 +02:00
|
|
|
|
2012-06-25 14:08:16 +02:00
|
|
|
%files errormessages -f errormessages.files
|
|
|
|
%defattr(-, root, root)
|
2014-12-06 14:56:41 +01:00
|
|
|
%{_datadir}/%{name}/*/errmsg.sys
|
2012-06-25 14:08:16 +02:00
|
|
|
|
2010-05-05 23:42:29 +02:00
|
|
|
%files client -f mysql-client.files
|
|
|
|
%defattr(-, root, root)
|
|
|
|
|
2014-05-23 10:06:28 +02:00
|
|
|
%if 0%{preferred} > 0
|
2010-05-05 23:42:29 +02:00
|
|
|
%files -n libmysqlclient-devel -f libmysqlclient-devel.files
|
|
|
|
%defattr(-, root, root)
|
2014-12-06 14:56:41 +01:00
|
|
|
%{_includedir}/mysql
|
2014-05-23 09:29:50 +02:00
|
|
|
%{_libdir}/libmysqlclient.so
|
|
|
|
%{_libdir}/libmysqlclient_r.so
|
2014-12-06 14:56:41 +01:00
|
|
|
%dir %{_datadir}/aclocal
|
|
|
|
%{_datadir}/aclocal/mysql.m4
|
2011-08-17 09:42:39 +02:00
|
|
|
|
2010-05-05 23:42:29 +02:00
|
|
|
%files -n libmysqld-devel
|
|
|
|
%defattr(-,root,root)
|
2014-12-06 14:56:41 +01:00
|
|
|
%{_libdir}/libmysqld.a
|
|
|
|
%{_libdir}/libmysqld.so
|
2011-08-17 09:42:39 +02:00
|
|
|
|
2011-12-08 10:43:01 +01:00
|
|
|
%files -n libmysqld18
|
2010-05-05 23:42:29 +02:00
|
|
|
%defattr(-,root,root)
|
2014-12-06 14:56:41 +01:00
|
|
|
%{_libdir}/libmysqld.so.*
|
2011-12-08 10:43:01 +01:00
|
|
|
%endif
|
2011-08-17 09:42:39 +02:00
|
|
|
|
2015-06-23 15:23:57 +02:00
|
|
|
%files -n lib%{libname}%{soname}
|
2010-05-05 23:42:29 +02:00
|
|
|
%defattr(-, root, root)
|
2015-06-23 15:23:57 +02:00
|
|
|
%{_libdir}/lib%{libname}.so.*
|
2011-08-17 09:42:39 +02:00
|
|
|
|
2015-06-23 15:23:57 +02:00
|
|
|
%files -n lib%{libname}_r%{soname}
|
2010-05-05 23:42:29 +02:00
|
|
|
%defattr(-, root, root)
|
2015-06-23 15:23:57 +02:00
|
|
|
%{_libdir}/lib%{libname}_r.so.*
|
2011-08-17 09:42:39 +02:00
|
|
|
|
2010-05-05 23:42:29 +02:00
|
|
|
%files bench -f mysql-bench.files
|
|
|
|
%defattr(-, root, root)
|
2014-12-06 14:56:41 +01:00
|
|
|
%{_datadir}/sql-bench
|
2011-08-17 09:42:39 +02:00
|
|
|
|
2010-05-05 23:42:29 +02:00
|
|
|
%files test -f mysql-test.files
|
|
|
|
%defattr(-, root, root)
|
|
|
|
%{_bindir}/my_safe_process
|
2014-12-06 14:56:41 +01:00
|
|
|
%{_mandir}/man1/mysql-test-run.pl.1*
|
|
|
|
%{_mandir}/man1/mysql-stress-test.pl.1*
|
|
|
|
%{_datadir}/mysql-test/valgrind.supp
|
|
|
|
%dir %attr(755, root, root)%{_datadir}/mysql-test
|
|
|
|
%{_datadir}/mysql-test/[^v]*
|
|
|
|
%dir %attr(755, mysql, mysql) %{_datadir}/mysql-test/var
|
2011-08-17 09:42:39 +02:00
|
|
|
|
2010-05-05 23:42:29 +02:00
|
|
|
%files tools -f mysql-tools.files
|
|
|
|
%defattr(-, root, root)
|
2014-12-06 14:56:41 +01:00
|
|
|
%{_bindir}/mysqlrepair
|
|
|
|
%{_bindir}/mysqlanalyze
|
|
|
|
%{_bindir}/mysqloptimize
|
2010-05-05 23:42:29 +02:00
|
|
|
|
|
|
|
%changelog
|