Date: Sat, 17 Mar 2012 01:15:07 +0200 From: Alex Samorukov <samm@os2.kiev.ua> To: FreeBSD-gnats-submit@FreeBSD.org Cc: aleksandr.kuzminsky@percona.com Subject: ports/166189: [PATCH] databases/xtrabackup: update to 1.6.5 Message-ID: <E1S8gMV-0001UG-FD@s1.sdv.com.ua> Resent-Message-ID: <201203162320.q2GNK4IC096964@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 166189 >Category: ports >Synopsis: [PATCH] databases/xtrabackup: update to 1.6.5 >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: update >Submitter-Id: current-users >Arrival-Date: Fri Mar 16 23:20:04 UTC 2012 >Closed-Date: >Last-Modified: >Originator: Alex Samorukov >Release: FreeBSD 7.4-RELEASE-p6 i386 >Organization: Net-Art >Environment: System: FreeBSD s1.sdv.com.ua 7.4-RELEASE-p6 FreeBSD 7.4-RELEASE-p6 #10: Tue Mar 6 21:00:42 EET >Description: - Update to 1.6.5 - Fix CLANG build - Update description Some comments: This port using a lot of different tools to build because it internally builds part of patched MySQL 5.5 and 5.1. Added file(s): - files/patch-build.sh Removed file(s): - files/patch-Makefile - files/patch-innobackupex Port maintainer (aleksandr.kuzminsky@percona.com) is cc'd. Generated with FreeBSD Port Tools 0.99_4 (mode: update, diff: ports) >How-To-Repeat: >Fix: --- xtrabackup-1.6.5.patch begins here --- diff -ruN --exclude=CVS /usr/ports/databases/xtrabackup/Makefile ./Makefile --- /usr/ports/databases/xtrabackup/Makefile 2010-05-25 21:12:14.000000000 +0300 +++ ./Makefile 2012-03-16 22:35:41.000000000 +0200 @@ -6,37 +6,74 @@ # PORTNAME= xtrabackup -PORTVERSION= 1.1 +PORTVERSION= 1.6.5 CATEGORIES= databases -MASTER_SITES= http://www.percona.com/downloads/XtraBackup/XtraBackup-1.1/source/ \ - http://launchpadlibrarian.net/41612347/ +MASTER_SITES= ${MASTER_SITE_MYSQL_GRP} \ + http://downloads.skysql.com/archives/mysql-5.5/:mysql55 \ + http://downloads.mysql.com/archives/mysql-5.5/:mysql55 \ + http://www.percona.com/downloads/%SUBDIR%/:xtrabackup,libtar,percsrc51,percsrc55 \ + http://samm.kiev.ua/percona/:percsrc51,percsrc55 \ + ftp://ftp.feep.net/pub/software/libtar/:libtar +DISTFILES= mysql-${MYSQL51_SRCVER}.tar.gz:mysql51 mysql-${MYSQL55_SRCVER}.tar.gz:mysql55 \ + xtrabackup-${PORTVERSION}.tar.gz:xtrabackup libtar-1.2.11.tar.gz:libtar \ + Percona-Server-5.1.59-13.0-patches.tar.gz:percsrc51 \ + Percona-Server-5.5.16-22.0-patches.tar.gz:percsrc55 +EXTRACT_ONLY= xtrabackup-${PORTVERSION}.tar.gz MAINTAINER= aleksandr.kuzminsky@percona.com COMMENT= OpenSource version of InnoDB backup with support of Percona extensions -GNU_CONFIGURE= yes +LICENSE= GPLv2 + +# MySQL 5.5 using CMAKE, quilt is requiered by build.sh +BUILD_DEPENDS= bash:${PORTSDIR}/shells/bash quilt:${PORTSDIR}/devel/quilt \ + cmake:${PORTSDIR}/devel/cmake bison:${PORTSDIR}/devel/bison + +# autotool is in use for 5.1 builds MAKE_JOBS_SAFE= yes USE_GMAKE= yes +USE_PERL5= yes +USE_AUTOTOOLS= automake autoheader autoconf libtool aclocal -CONFIGURE_ARGS= --localstatedir=/var/db/mysql \ - --without-debug \ - --without-readline \ - --without-libedit \ - --without-server \ - --with-libwrap \ - --with-low-memory \ - --enable-thread-safe-client \ - --with-named-thread-libs="${PTHREAD_LIBS}" - -PLIST_FILES= bin/xtrabackup bin/tar4ibd bin/innobackupex-1.5.1 - -post-build: - cd ${WRKSRC}/storage/innobase/xtrabackup && ${GMAKE} - cd ${WRKSRC}/libtar-1.2.11 && ./configure && ${GMAKE} +# use MASTER_SITE_MYSQL for the MySQL 5.1 +MASTER_SITE_MYSQL_GRP= ${MASTER_SITE_MYSQL:S@%SUBDIR%/@%SUBDIR%/:mysql51@g} +MASTER_SITE_SUBDIR= MySQL-5.1/:mysql51 community/:libtar \ + XtraBackup/XtraBackup-1.6.5/source/:xtrabackup \ + Percona-Server-5.1/Percona-Server-5.1.59-13.0/source/:percsrc51 \ + Percona-Server-5.5/Percona-Server-5.5.16-22.0/source/:percsrc55 + +# port needs MySQL sources to build +MYSQL51_SRCVER=5.1.59 +MYSQL55_SRCVER=5.5.16 + +PLIST_FILES= bin/xtrabackup bin/xtrabackup_51 bin/xtrabackup_55 bin/tar4ibd bin/innobackupex + +pre-build: + ${CP} ${DISTDIR}/xtrabackup-${PORTVERSION}.tar.gz ${DISTDIR}/libtar-1.2.11.tar.gz \ + ${DISTDIR}/mysql-${MYSQL51_SRCVER}.tar.gz ${DISTDIR}/mysql-${MYSQL55_SRCVER}.tar.gz \ + ${DISTDIR}/Percona-Server-5.1.59-13.0-patches.tar.gz \ + ${DISTDIR}/Percona-Server-5.5.16-22.0-patches.tar.gz ${WRKSRC} + +do-build: + cd ${WRKSRC} && ./utils/build.sh 5.1 + cd ${WRKSRC} && ./utils/build.sh xtradb + cd ${WRKSRC} && ./utils/build.sh xtradb55 do-install: - @${INSTALL_PROGRAM} ${WRKSRC}/storage/innobase/xtrabackup/xtrabackup ${PREFIX}/bin - @${INSTALL_SCRIPT} ${WRKSRC}/storage/innobase/xtrabackup/innobackupex-1.5.1 ${PREFIX}/bin + @${INSTALL_PROGRAM} ${WRKSRC}/Percona-Server/storage/innodb_plugin/xtrabackup/xtrabackup ${PREFIX}/bin + @${INSTALL_PROGRAM} ${WRKSRC}/Percona-Server-5.5/storage/innobase/xtrabackup/xtrabackup_55 ${PREFIX}/bin + @${INSTALL_PROGRAM} ${WRKSRC}/mysql-5.1/storage/innobase/xtrabackup/xtrabackup_51 ${PREFIX}/bin + @${INSTALL_SCRIPT} ${WRKSRC}/innobackupex ${PREFIX}/bin @${INSTALL_PROGRAM} ${WRKSRC}/libtar-1.2.11/libtar/tar4ibd ${PREFIX}/bin +# autoconf is running by build.sh +do-configure: +run-autotools-aclocal: +run-autotools-automake: +run-autotools-autoconf: +run-autotools-autoheader: +run-autotools-libtoolize: +patch-autotools-libtool: + @${TRUE} + .include <bsd.port.mk> diff -ruN --exclude=CVS /usr/ports/databases/xtrabackup/distinfo ./distinfo --- /usr/ports/databases/xtrabackup/distinfo 2011-03-20 14:48:10.000000000 +0200 +++ ./distinfo 2012-03-16 22:35:41.000000000 +0200 @@ -1,2 +1,12 @@ -SHA256 (xtrabackup-1.1.tar.gz) = ce9d25c365e5459a5c51a54dc325789ec810d40a03649b67954a313029ab9f02 -SIZE (xtrabackup-1.1.tar.gz) = 23918777 +SHA256 (mysql-5.1.59.tar.gz) = f87b99b73c0d936ed892326ebd4c90b1d5c7d5d2ac8832fc62f538db99fb04f7 +SIZE (mysql-5.1.59.tar.gz) = 24325443 +SHA256 (mysql-5.5.16.tar.gz) = 38a88d5f3a4e0ab1c6722662a2c858c63fd98f0925691400282cb23f1ea29b70 +SIZE (mysql-5.5.16.tar.gz) = 23816508 +SHA256 (xtrabackup-1.6.5.tar.gz) = b9c789a6304712483d9e457a6a39f0c16c9bd028aa0124f7689f814833fdf990 +SIZE (xtrabackup-1.6.5.tar.gz) = 933213 +SHA256 (libtar-1.2.11.tar.gz) = 4a2eefb6b7088f41de57356e5059cbf1f917509b4a810f7c614625a378e87bb8 +SIZE (libtar-1.2.11.tar.gz) = 145354 +SHA256 (Percona-Server-5.1.59-13.0-patches.tar.gz) = 76f9398d1637c9cfc1b64e35cd272b70ddc71cfb6f00abd2fe6e62918fa920b5 +SIZE (Percona-Server-5.1.59-13.0-patches.tar.gz) = 1203994 +SHA256 (Percona-Server-5.5.16-22.0-patches.tar.gz) = 30d14443027cbcef4266385adfeb385af62cf5551ca044ae83539673497be4be +SIZE (Percona-Server-5.5.16-22.0-patches.tar.gz) = 1141266 diff -ruN --exclude=CVS /usr/ports/databases/xtrabackup/files/patch-Makefile ./files/patch-Makefile --- /usr/ports/databases/xtrabackup/files/patch-Makefile 2010-05-25 22:35:48.000000000 +0300 +++ ./files/patch-Makefile 1970-01-01 03:00:00.000000000 +0300 @@ -1,33 +0,0 @@ ---- storage/innobase/xtrabackup/Makefile.orig 2010-05-25 17:07:27.336100000 +0000 -+++ storage/innobase/xtrabackup/Makefile 2010-05-25 17:07:35.679748000 +0000 -@@ -1,4 +1,4 @@ --LIBS= -lpthread -+LIBS= -lpthread -lz - DEFS= -DUNIV_LINUX -DMYSQL_SERVER - - #x86 Linux -@@ -32,7 +32,7 @@ - INC= -I. -I.. -I./../include -I./../../include -I./../../../include - INNODBOBJS= ../ha_innodb_la-btr0btr.o ../ha_innodb_la-btr0cur.o ../ha_innodb_la-btr0pcur.o ../ha_innodb_la-btr0sea.o ../ha_innodb_la-buf0buddy.o ../ha_innodb_la-buf0buf.o ../ha_innodb_la-buf0flu.o ../ha_innodb_la-buf0lru.o ../ha_innodb_la-buf0rea.o ../ha_innodb_la-data0data.o ../ha_innodb_la-data0type.o ../ha_innodb_la-dict0boot.o ../ha_innodb_la-dict0crea.o ../ha_innodb_la-dict0dict.o ../ha_innodb_la-dict0load.o ../ha_innodb_la-dict0mem.o ../ha_innodb_la-dyn0dyn.o ../ha_innodb_la-eval0eval.o ../ha_innodb_la-eval0proc.o ../ha_innodb_la-fil0fil.o ../ha_innodb_la-fsp0fsp.o ../ha_innodb_la-fut0fut.o ../ha_innodb_la-fut0lst.o ../ha_innodb_la-ha0ha.o ../ha_innodb_la-ha0storage.o ../ha_innodb_la-hash0hash.o ../ha_innodb_la-ibuf0ibuf.o ../ha_innodb_la-lock0iter.o ../ha_innodb_la-lock0lock.o ../ha_innodb_la-log0log.o ../ha_innodb_la-log0recv.o ../ha_innodb_la-mach0data.o ../ha_innodb_la-mem0mem.o ../ha_innodb_la-mem0pool.o ../ha_innodb_la-mtr0log.o ../ha_innodb_la-mtr0mtr.o ../ha_innodb_la -os0file.o ../ha_innodb_la-os0proc.o ../ha_innodb_la-os0sync.o ../ha_innodb_la-os0thread.o ../ha_innodb_la-page0cur.o ../ha_innodb_la-page0page.o ../ha_innodb_la-page0zip.o ../ha_innodb_la-lexyy.o ../ha_innodb_la-pars0grm.o ../ha_innodb_la-pars0opt.o ../ha_innodb_la-pars0pars.o ../ha_innodb_la-pars0sym.o ../ha_innodb_la-que0que.o ../ha_innodb_la-read0read.o ../ha_innodb_la-rem0cmp.o ../ha_innodb_la-rem0rec.o ../ha_innodb_la-row0ext.o ../ha_innodb_la-row0ins.o ../ha_innodb_la-row0merge.o ../ha_innodb_la-row0mysql.o ../ha_innodb_la-row0purge.o ../ha_innodb_la-row0row.o ../ha_innodb_la-row0sel.o ../ha_innodb_la-row0uins.o ../ha_innodb_la-row0umod.o ../ha_innodb_la-row0undo.o ../ha_innodb_la-row0upd.o ../ha_innodb_la-row0vers.o ../ha_innodb_la-srv0que.o ../ha_innodb_la-srv0srv.o ../ha_innodb_la-srv0start.o ../ha_innodb_la-sync0arr.o ../ha_innodb_la-sync0rw.o ../ha_innodb_la-sync0sync.o ../ha_innodb_la-thr0loc.o ../ha_innodb_la-trx0purge.o ../ha_innodb_la-trx0rec.o ../ha_innodb_la-trx0ro ll.o ../ha_innodb_la-trx0rseg.o ../ha_innodb_la-trx0sys.o ../ha_innodb_la-trx0trx.o ../ha_innodb_la-trx0undo.o ../ha_innodb_la-usr0sess.o ../ha_innodb_la-ut0byte.o ../ha_innodb_la-ut0dbg.o ../ha_innodb_la-ut0list.o ../ha_innodb_la-ut0mem.o ../ha_innodb_la-ut0rnd.o ../ha_innodb_la-ut0ut.o ../ha_innodb_la-ut0vec.o ../ha_innodb_la-ut0wqueue.o - INNODBOBJS= ../libinnobase_a-btr0btr.o ../libinnobase_a-btr0cur.o ../libinnobase_a-btr0pcur.o ../libinnobase_a-btr0sea.o ../libinnobase_a-buf0buddy.o ../libinnobase_a-buf0buf.o ../libinnobase_a-buf0flu.o ../libinnobase_a-buf0lru.o ../libinnobase_a-buf0rea.o ../libinnobase_a-data0data.o ../libinnobase_a-data0type.o ../libinnobase_a-dict0boot.o ../libinnobase_a-dict0crea.o ../libinnobase_a-dict0dict.o ../libinnobase_a-dict0load.o ../libinnobase_a-dict0mem.o ../libinnobase_a-dyn0dyn.o ../libinnobase_a-eval0eval.o ../libinnobase_a-eval0proc.o ../libinnobase_a-fil0fil.o ../libinnobase_a-fsp0fsp.o ../libinnobase_a-fut0fut.o ../libinnobase_a-fut0lst.o ../libinnobase_a-ha0ha.o ../libinnobase_a-ha0storage.o ../libinnobase_a-hash0hash.o ../libinnobase_a-ibuf0ibuf.o ../libinnobase_a-lock0iter.o ../libinnobase_a-lock0lock.o ../libinnobase_a-log0log.o ../libinnobase_a-log0recv.o ../libinnobase_a-mach0data.o ../libinnobase_a-mem0mem.o ../libinnobase_a-mem0pool.o ../libinnobase_a-mtr0log.o ../lib innobase_a-mtr0mtr.o ../libinnobase_a-os0file.o ../libinnobase_a-os0proc.o ../libinnobase_a-os0sync.o ../libinnobase_a-os0thread.o ../libinnobase_a-page0cur.o ../libinnobase_a-page0page.o ../libinnobase_a-page0zip.o ../libinnobase_a-lexyy.o ../libinnobase_a-pars0grm.o ../libinnobase_a-pars0opt.o ../libinnobase_a-pars0pars.o ../libinnobase_a-pars0sym.o ../libinnobase_a-que0que.o ../libinnobase_a-read0read.o ../libinnobase_a-rem0cmp.o ../libinnobase_a-rem0rec.o ../libinnobase_a-row0ext.o ../libinnobase_a-row0ins.o ../libinnobase_a-row0merge.o ../libinnobase_a-row0mysql.o ../libinnobase_a-row0purge.o ../libinnobase_a-row0row.o ../libinnobase_a-row0sel.o ../libinnobase_a-row0uins.o ../libinnobase_a-row0umod.o ../libinnobase_a-row0undo.o ../libinnobase_a-row0upd.o ../libinnobase_a-row0vers.o ../libinnobase_a-srv0que.o ../libinnobase_a-srv0srv.o ../libinnobase_a-srv0start.o ../libinnobase_a-sync0arr.o ../libinnobase_a-sync0rw.o ../libinnobase_a-sync0sync.o ../libinnobase_a-thr0loc.o ../li binnobase_a-trx0purge.o ../libinnobase_a-trx0rec.o ../libinnobase_a-trx0roll.o ../libinnobase_a-trx0rseg.o ../libinnobase_a-trx0sys.o ../libinnobase_a-trx0trx.o ../libinnobase_a-trx0undo.o ../libinnobase_a-usr0sess.o ../libinnobase_a-ut0byte.o ../libinnobase_a-ut0dbg.o ../libinnobase_a-ut0list.o ../libinnobase_a-ut0mem.o ../libinnobase_a-ut0rnd.o ../libinnobase_a-ut0ut.o ../libinnobase_a-ut0vec.o ../libinnobase_a-ut0wqueue.o --MYSQLOBJS= ../../../mysys/libmysys.a ../../../strings/libmystrings.a ../../../zlib/.libs/libzlt.a -+MYSQLOBJS= ../../../mysys/libmysys.a ../../../strings/libmystrings.a - - - -@@ -42,7 +42,7 @@ - .c.o: - $(CC) $(CFLAGS) $(INC) $(DEFS) -c $*.c - --all: xtrabackup -+all: buildobj xtrabackup - - xtrabackup : xtrabackup.o $(INNODBOBJS) $(MYSQLOBJS) - $(CC) $(CFLAGS) xtrabackup.o $(INNODBOBJS) $(MYSQLOBJS) $(LIBS) -o xtrabackup -@@ -53,3 +53,6 @@ - install: - cp innobackupex-1.5.1 /usr/bin - cp xtrabackup /usr/bin -+ -+buildobj: -+ cd ../ && $(MAKE) `echo $(INNODBOBJS)|sed 's/..\///g'` diff -ruN --exclude=CVS /usr/ports/databases/xtrabackup/files/patch-build.sh ./files/patch-build.sh --- /usr/ports/databases/xtrabackup/files/patch-build.sh 1970-01-01 03:00:00.000000000 +0300 +++ ./files/patch-build.sh 2012-03-16 22:35:41.000000000 +0200 @@ -0,0 +1,37 @@ +--- utils/build.sh 2012-02-10 15:54:51.000000000 +0100 ++++ utils/build.sh 2012-03-16 20:53:58.366366222 +0100 +@@ -225,9 +225,14 @@ + bzr revert + bzr pull --overwrite + else +- bzr branch -r tag:Percona-Server-$PS_51_VERSION \ +- lp:percona-server/5.1 $branch_dir ++ #bzr branch -r tag:Percona-Server-$PS_51_VERSION \ ++ # lp:percona-server/5.1 $branch_dir ++ tar -xvzf Percona-Server-${PS_51_VERSION}-patches.tar.gz ++ ln -sf Percona-Server-${PS_51_VERSION}-patches $branch_dir ++ ln mysql-${MYSQL_51_VERSION}.tar.gz $branch_dir + cd $branch_dir ++ #fix for cmake, from https://bugs.launchpad.net/percona-xtradb/+bug/666223 ++ sed -i .orig 's/inline void _increment_page_get_statistics/void _increment_page_get_statistics/' patches/innodb_extend_slow.patch + fi + + $MAKE_CMD main +@@ -283,9 +288,15 @@ + bzr revert + bzr pull --overwrite + else +- bzr branch -r tag:Percona-Server-$PS_55_VERSION \ +- lp:percona-server $branch_dir ++# bzr branch -r tag:Percona-Server-$PS_55_VERSION \ ++# lp:percona-server $branch_dir ++ tar -xvzf Percona-Server-${PS_55_VERSION}-patches.tar.gz ++ ln -sf Percona-Server-${PS_55_VERSION}-patches $branch_dir ++ ln mysql-5.5.16.tar.gz $branch_dir + cd $branch_dir ++ #fix for cmake, from https://bugs.launchpad.net/percona-xtradb/+bug/666223 ++ sed -i .orig 's/inline void _increment_page_get_statistics/void _increment_page_get_statistics/' patches/innodb_extend_slow.patch ++ + fi + + $MAKE_CMD PERCONA_SERVER=Percona-Server-5.5 main diff -ruN --exclude=CVS /usr/ports/databases/xtrabackup/files/patch-innobackupex ./files/patch-innobackupex --- /usr/ports/databases/xtrabackup/files/patch-innobackupex 2010-05-25 21:12:15.000000000 +0300 +++ ./files/patch-innobackupex 1970-01-01 03:00:00.000000000 +0300 @@ -1,11 +0,0 @@ ---- storage/innobase/xtrabackup/innobackupex-1.5.1.orig 2010-03-29 02:44:57.000000000 +0300 -+++ storage/innobase/xtrabackup/innobackupex-1.5.1 2010-03-29 02:45:07.000000000 +0300 -@@ -81,7 +81,7 @@ - my $option_no_timestamp = ''; - my $option_slave_info = ''; - my $option_no_lock = ''; --my $option_ibbackup_binary = 'xtrabackup'; -+my $option_ibbackup_binary = '/usr/local/bin/xtrabackup'; - - my $option_defaults_file = ''; - my $option_incremental = ''; diff -ruN --exclude=CVS /usr/ports/databases/xtrabackup/pkg-descr ./pkg-descr --- /usr/ports/databases/xtrabackup/pkg-descr 2011-10-23 02:50:22.000000000 +0300 +++ ./pkg-descr 2012-03-16 22:35:41.000000000 +0200 @@ -1,6 +1,6 @@ -Percona XtraBackup is OpenSource online (non-blockable) backup solution for -InnoDB and XtraDB engines. It works with MySQL 5.0 and 5.1 versions (InnoDB -Plugin and Barracuda format is supported as of release 0.9.5rc) and also can -handle MyISAM tables. +Percona XtraBackup is OpenSource online (non-blockable) backup solution for +InnoDB and XtraDB engines. It can back up data from InnoDB, XtraDB, and MyISAM +tables on unmodified MySQL 5.0, 5.1 and 5.5 servers, as well as Percona Server +with XtraDB. -WWW: http://www.percona.com/docs/wiki/percona-xtrabackup:start +WWW: http://www.percona.com/doc/percona-xtrabackup/ --- xtrabackup-1.6.5.patch ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E1S8gMV-0001UG-FD>