%global commit 9033b0be333cf0629fcdc82ac1a9de6db6d3c205 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %if 0 %global MYSQL_VERSION_MAJOR 5 %global MYSQL_VERSION_MINOR 5 %global MYSQL_VERSION_PATCH 41 %endif %global pxbu_major_minor 22 Summary: Online backup for InnoDB/XtraDB in MySQL, Percona Server and MariaDB Name: percona-xtrabackup Version: 2.2.9 Release: 4%{?dist} License: GPLv2 URL: http://www.percona.com/software/percona-xtrabackup/ Source: https://github.com/percona/%{name}/archive/%{commit}/%{name}-%{commit}.tar.gz Provides: xtrabackup >= 2.0.0 Provides: %{name}-%{pxbu_major_minor} Obsoletes: xtrabackup < 2.0.0 BuildRequires: libaio-devel BuildRequires: libgcrypt-devel BuildRequires: automake BuildRequires: cmake >= 2.6.3 BuildRequires: patch BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: libtool BuildRequires: bison BuildRequires: ncurses-devel BuildRequires: openssl-devel BuildRequires: procps BuildRequires: python-sphinx Requires: perl(DBD::mysql) %description Online backup for InnoDB/XtraDB in MySQL, MariaDB and Percona Server. %package test Summary: Test suite for Percona Xtrabackup Group: Applications/Databases Provides: %{name}-test-%{pxbu_major_minor} Requires: %{name} Requires: /usr/bin/mysql Requires: %{name}%{?_isa} = %{version}-%{release} %description test This package contains the test suite for Percona Xtrabackup %prep %setup -qn %{name}-%{commit} # fails build # build for mariadb version %if 0 rm VERSION cat << EOF > VERSION MYSQL_VERSION_MAJOR=%{MYSQL_VERSION_MAJOR} MYSQL_VERSION_MINOR=%{MYSQL_VERSION_MINOR} MYSQL_VERSION_PATCH=%{MYSQL_VERSION_PATCH} MYSQL_VERSION_EXTRA= EOF %endif # update deprecated m4 macros sed -i "s/AM_CONFIG_HEADER/AM_CONFIG_HEADERS/g" libevent/configure.in sed -i "s/AC_PROG_LIBTOOL/LT_INIT/g" libevent/configure.in sed -i "s/AC_PROG_LIBTOOL/LT_INIT/g" storage/innobase/xtrabackup/src/libarchive/configure.ac %build cmake -DBUILD_CONFIG=xtrabackup_release && make -j4 %install [ "%{buildroot}" != '/' ] && rm -rf %{buildroot} install -d %{buildroot}%{_bindir} install -d %{buildroot}%{_datadir} install -d %{buildroot}%{_mandir}/man1 # install binaries and configs INNO_ROOT=storage/innobase/xtrabackup pushd . cd $INNO_ROOT install -p -m 755 innobackupex %{buildroot}%{_bindir} cd src install -p -m 755 xtrabackup %{buildroot}%{_bindir} install -p -m 755 xbstream %{buildroot}%{_bindir} install -p -m 755 xbcrypt %{buildroot}%{_bindir} cd .. find test -size 0 -delete cp -pR test %{buildroot}%{_datadir}/percona-xtrabackup-test # we don't ship part of the test suite that is generally obsolete # and tricky to run rm -rf %{buildroot}%{_datadir}/percona-xtrabackup-test/kewpie # cleanup cmake rm -rf %{buildroot}%{_datadir}/percona-xtrabackup-test/*Make* # get the man files cd doc/source/build/man install -m 644 *.1 %{buildroot}%{_mandir}/man1 popd %files %{_bindir}/innobackupex %{_bindir}/xtrabackup %{_bindir}/xbstream %{_bindir}/xbcrypt %doc COPYING README VERSION %{_mandir}/man1/innobackupex.1.gz %{_mandir}/man1/xtrabackup.1.gz %{_mandir}/man1/xbstream.1.gz %{_mandir}/man1/xbcrypt.1.gz # upstream has been notified of outdated FSF address in # https://bugs.launchpad.net/percona-xtrabackup/+bug/1222777 %files -n percona-xtrabackup-test %{_datadir}/percona-xtrabackup-test %doc COPYING %changelog * Thu Feb 04 2016 Fedora Release Engineering - 2.2.9-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Tue Nov 3 2015 Peter MacKinnon - 2.2.9-3 - Add an extra provides for version 2.2 * Tue Sep 1 2015 Peter MacKinnon - 2.2.9-2 - Spec changes from Fedora review * Fri Jun 12 2015 Peter MacKinnon - 2.2.9-1 - Updated to 2.2.9 (mariadb 5.5 compatible) * Thu Oct 31 2013 Stewart Smith - 2.1.5-1 - Update packaging for Percona XtraBackup 2.1.5 release * Mon Sep 27 2010 Aleksandr Kuzminsky - Version 1.4 * Wed Jun 30 2010 Aleksandr Kuzminsky - Version 1.3 ported on Percona Server 11 * Thu Mar 11 2010 Aleksandr Kuzminsky - Ported to MySQL 5.1 with InnoDB plugin * Fri Mar 13 2009 Vadim Tkachenko - initial release