Gentoo Archives: gentoo-commits

From: Thomas Deutschmann <whissi@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-db/percona-xtrabackup/files/, dev-db/percona-xtrabackup/
Date: Fri, 04 May 2018 14:40:17
Message-Id: 1525443362.75127cd12bb23cca25c5ee46a016b0d8592e6d05.whissi@gentoo
1 commit: 75127cd12bb23cca25c5ee46a016b0d8592e6d05
2 Author: Tomas Mozes <tmozes <AT> sygic <DOT> com>
3 AuthorDate: Wed May 2 12:42:26 2018 +0000
4 Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
5 CommitDate: Fri May 4 14:16:02 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=75127cd1
7
8 dev-db/percona-xtrabackup: bump to 2.4.11
9
10 Package-Manager: Portage-2.3.31, Repoman-2.3.9
11
12 dev-db/percona-xtrabackup/Manifest | 1 +
13 ...ercona-xtrabackup-2.4.11-fix-gcc6-isystem.patch | 113 +++++++++++++++++++++
14 .../percona-xtrabackup-2.4.11.ebuild | 86 ++++++++++++++++
15 3 files changed, 200 insertions(+)
16
17 diff --git a/dev-db/percona-xtrabackup/Manifest b/dev-db/percona-xtrabackup/Manifest
18 index a28256c1118..41fd3c82675 100644
19 --- a/dev-db/percona-xtrabackup/Manifest
20 +++ b/dev-db/percona-xtrabackup/Manifest
21 @@ -1,4 +1,5 @@
22 DIST percona-xtrabackup-2.4.10.tar.gz 59217573 BLAKE2B 3a4485b6d8c5b9ad2ca4b60603383b18ec0a3da7e4cca3b5a1ee2d24b6ca17844cc406123bbaf9313fc17570db0168c13af16d17404e075fc8140731ef9b79c2 SHA512 a4ebbebabc8b9b5fec9777fc3569c530b4a88a1b75d3e78d2edf7627a2e8cadf7aa2d8988963136b331a274c80371ff9b7fafcc7d8a129f446eb58777ce1764f
23 +DIST percona-xtrabackup-2.4.11.tar.gz 59267058 BLAKE2B 1de9905a2c191a58290e87a90e36c263f66935ce0846af205e1a0accc6e9b2938dd8679f65acc4b51ca956f2bcbca831cd10c9d50c01c2ecfd9d059fde500e20 SHA512 2fa4757fe944fb4c8113dca1fa25beaa23de5d5f9fc830b36a6d9eb4efb7e7fb1eec10f91be5e91fd3b7980bc157832ed52c9da59a342f6aae05ceae8ecdf760
24 DIST percona-xtrabackup-2.4.7.tar.gz 54119422 BLAKE2B 41ae661efe53e0ede92dc1e1555e05f68c2fd2848d32c5ae9df3244a5b3e9d996c23cd3b9b79e5a0630140ea02e04f3560679b4c493484e7c2a1b0bcc5847aa0 SHA512 7aaf82975cd4c0b7af119902eddf96b8ce75c0fbcbd6835991e33f1f89347361fbe3c9040762c9989df5d53199b628aa6b2b45004ef440bb46e2415fbab13009
25 DIST percona-xtrabackup-2.4.8.tar.gz 57965576 BLAKE2B 5cca947549181413ef68bcc7a5fd935404ebf2aaccc2e8de42221cbc0007371ca3499e26f2ab312b7fb94fe74a7079c48a11405df18cc3c809329403a83840cd SHA512 a613c41169c6ebdba27c6cb8111d388ff656d4daf0e69b52e401b293a6ac6499d81d0f028afd805fa60018ad5f2007e70db7a9ba931d6829272f0ce273ba9739
26 DIST percona-xtrabackup-2.4.9.tar.gz 58001052 BLAKE2B d2a25a5ca2190ccf82a600245a0e21848abd9a33ea937a81b2ba9c7e518b24291080a3d3c4b8e6d02f51523e5cf2e78680e4b351c4f2bcd8f122c58f62c14418 SHA512 913431f0fa648731efa2e9bc87c9431a28816b0eca12e1c6df6e7ab04a4148ddd8fa03c9792335ad152b05bede5b9fe64ce94a393b5e4e37d4b18f4989b0ccdb
27
28 diff --git a/dev-db/percona-xtrabackup/files/percona-xtrabackup-2.4.11-fix-gcc6-isystem.patch b/dev-db/percona-xtrabackup/files/percona-xtrabackup-2.4.11-fix-gcc6-isystem.patch
29 new file mode 100644
30 index 00000000000..4fed659cdae
31 --- /dev/null
32 +++ b/dev-db/percona-xtrabackup/files/percona-xtrabackup-2.4.11-fix-gcc6-isystem.patch
33 @@ -0,0 +1,113 @@
34 +Do not use -isystem to add headers, as they break GCC 6's header wrapping.
35 +See also: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70129
36 +
37 +diff --git a/client/CMakeLists.txt b/client/CMakeLists.txt
38 +index dbf1c48..e5d7347 100644
39 +--- a/client/CMakeLists.txt
40 ++++ b/client/CMakeLists.txt
41 +@@ -52,7 +52,7 @@ IF(NOT WITHOUT_SERVER)
42 + upgrade/program.cc
43 + )
44 + ADD_COMPILE_FLAGS(
45 +- upgrade/program.cc COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -isystem ${BOOST_INCLUDE_DIR}
46 ++ upgrade/program.cc COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -I${BOOST_INCLUDE_DIR}
47 + )
48 + TARGET_LINK_LIBRARIES(mysql_upgrade mysqlclient client_base mysqlcheck_core)
49 + ADD_DEPENDENCIES(mysql_upgrade GenFixPrivs GenSysSchema)
50 +diff --git a/client/base/CMakeLists.txt b/client/base/CMakeLists.txt
51 +index b206de7..91cce4c 100644
52 +--- a/client/base/CMakeLists.txt
53 ++++ b/client/base/CMakeLists.txt
54 +@@ -49,7 +49,7 @@ ADD_COMPILE_FLAGS(
55 + mutex.cc
56 + mysql_query_runner.cc
57 + show_variable_query_extractor.cc
58 +- COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -isystem ${BOOST_INCLUDE_DIR}
59 ++ COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -I${BOOST_INCLUDE_DIR}
60 + )
61 +
62 + TARGET_LINK_LIBRARIES(client_base mysqlclient)
63 +diff --git a/client/dump/CMakeLists.txt b/client/dump/CMakeLists.txt
64 +index fdbb631..bae2ce7 100644
65 +--- a/client/dump/CMakeLists.txt
66 ++++ b/client/dump/CMakeLists.txt
67 +@@ -50,7 +50,7 @@ IF(USING_LOCAL_BOOST)
68 +
69 + ADD_COMPILE_FLAGS(
70 + ${BOOST_LIB_SOURCES}
71 +- COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -isystem ${BOOST_INCLUDE_DIR}
72 ++ COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -I${BOOST_INCLUDE_DIR}
73 + )
74 +
75 + IF(HAVE_clock_gettime_IN_rt)
76 +@@ -145,7 +145,7 @@ TARGET_LINK_LIBRARIES(mysqlpump_lib
77 +
78 + ADD_COMPILE_FLAGS(
79 + ${MYSQLPUMP_LIB_SOURCES}
80 +- COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -isystem ${BOOST_INCLUDE_DIR}
81 ++ COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -I${BOOST_INCLUDE_DIR}
82 + )
83 +
84 + # Files that use Boost sources that trigger compilation warnings
85 +@@ -179,7 +179,7 @@ ADD_COMPILE_FLAGS(
86 + )
87 + MYSQL_ADD_EXECUTABLE(mysqlpump program.cc)
88 + ADD_COMPILE_FLAGS(
89 +- program.cc COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -isystem ${BOOST_INCLUDE_DIR}
90 ++ program.cc COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -I${BOOST_INCLUDE_DIR}
91 + )
92 +
93 + TARGET_LINK_LIBRARIES(mysqlpump mysqlpump_lib ${LOCAL_BOOST_LIB})
94 +diff --git a/libmysqld/CMakeLists.txt b/libmysqld/CMakeLists.txt
95 +index 44c1d26..dac03d9 100644
96 +--- a/libmysqld/CMakeLists.txt
97 ++++ b/libmysqld/CMakeLists.txt
98 +@@ -123,7 +123,7 @@ ADD_COMPILE_FLAGS(
99 + ../sql/item_geofunc_setops.cc
100 + ../sql/item_json_func.cc
101 + ../sql/spatial.cc
102 +- COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -isystem ${BOOST_INCLUDE_DIR}
103 ++ COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -I${BOOST_INCLUDE_DIR}
104 + )
105 +
106 + ADD_COMPILE_FLAGS(
107 +diff --git a/sql/CMakeLists.txt b/sql/CMakeLists.txt
108 +index 1d1231f..9a35fa8 100644
109 +--- a/sql/CMakeLists.txt
110 ++++ b/sql/CMakeLists.txt
111 +@@ -312,7 +312,7 @@ ADD_COMPILE_FLAGS(
112 + item_geofunc_setops.cc
113 + item_json_func.cc
114 + spatial.cc
115 +- COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -isystem ${BOOST_INCLUDE_DIR}
116 ++ COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -I${BOOST_INCLUDE_DIR}
117 + )
118 +
119 + ADD_COMPILE_FLAGS(
120 +diff --git a/unittest/gunit/CMakeLists.txt b/unittest/gunit/CMakeLists.txt
121 +index f0123b8..f2169f9 100644
122 +--- a/unittest/gunit/CMakeLists.txt
123 ++++ b/unittest/gunit/CMakeLists.txt
124 +@@ -385,7 +385,7 @@ IF (MERGE_UNITTESTS)
125 + ENDIF()
126 + ADD_COMPILE_FLAGS(
127 + ${MERGE_SMALL_TESTS}
128 +- COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -isystem ${BOOST_INCLUDE_DIR}
129 ++ COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -I${BOOST_INCLUDE_DIR}
130 + )
131 + # Fixes "C1128: number of sections exceeded object file format limit" in MSVC
132 + IF(WIN32)
133 +@@ -467,11 +467,11 @@ ENDIF(MERGE_UNITTESTS)
134 + ENDIF()
135 + ADD_COMPILE_FLAGS(
136 + bounded_queue-t.cc
137 +- COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -isystem ${BOOST_INCLUDE_DIR}
138 ++ COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -I${BOOST_INCLUDE_DIR}
139 + )
140 + ADD_COMPILE_FLAGS(
141 + pump_object_filter-t.cc
142 +- COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -isystem ${BOOST_INCLUDE_DIR}
143 ++ COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -I${BOOST_INCLUDE_DIR}
144 + )
145 +
146 + FOREACH(test ${SERVER_TESTS})
147
148 diff --git a/dev-db/percona-xtrabackup/percona-xtrabackup-2.4.11.ebuild b/dev-db/percona-xtrabackup/percona-xtrabackup-2.4.11.ebuild
149 new file mode 100644
150 index 00000000000..8842c1a74b7
151 --- /dev/null
152 +++ b/dev-db/percona-xtrabackup/percona-xtrabackup-2.4.11.ebuild
153 @@ -0,0 +1,86 @@
154 +# Copyright 1999-2018 Gentoo Foundation
155 +# Distributed under the terms of the GNU General Public License v2
156 +
157 +EAPI=6
158 +
159 +inherit cmake-utils flag-o-matic
160 +
161 +DESCRIPTION="Hot backup utility for MySQL based servers"
162 +HOMEPAGE="https://www.percona.com/software/mysql-database/percona-xtrabackup"
163 +SRC_URI="https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-${PV}/source/tarball/${P}.tar.gz"
164 +
165 +LICENSE="GPL-2"
166 +SLOT="0"
167 +KEYWORDS="~amd64 ~x86"
168 +
169 +DEPEND="
170 + app-arch/lz4:0=
171 + app-editors/vim-core
172 + <dev-libs/boost-1.65.0:=
173 + dev-libs/libaio
174 + <dev-libs/libedit-20170329.3.1
175 + dev-libs/libev
176 + dev-libs/libevent:0=
177 + dev-libs/libgcrypt:0=
178 + dev-libs/libgpg-error
179 + dev-python/sphinx
180 + net-misc/curl
181 + sys-libs/zlib:="
182 +
183 +RDEPEND="
184 + ${DEPEND}
185 + !dev-db/xtrabackup-bin
186 + dev-perl/DBD-mysql"
187 +
188 +PATCHES=(
189 + "${FILESDIR}"/${PN}-2.4.6-remove-boost-version-check.patch
190 + "${FILESDIR}"/${PN}-2.4.11-fix-gcc6-isystem.patch
191 +)
192 +
193 +src_prepare() {
194 + cmake-utils_src_prepare
195 +
196 + # remove bundled boost, libedit, libevent, zlib
197 + # just to be safe...
198 + # We keep lz4 directory because we use extra/lz4/xxhash.c in cmake/libutils.cmake
199 + rm -rv \
200 + include/boost_1_59_0 \
201 + cmd-line-utils/libedit \
202 + libevent \
203 + zlib || die
204 +}
205 +
206 +src_configure() {
207 + # Needed, due to broken handling of CMAKE_BUILD_TYPE leading to
208 + #
209 + # error: 'fts_ast_node_type_get' was not declared in this scope
210 + #
211 + append-cppflags -DDBUG_OFF
212 +
213 + # Upstream doesn't support C++14 -- build will fail with -fpermissive error
214 + # https://bugs.mysql.com/bug.php?id=87956
215 + append-cxxflags $(test-flags-CXX -std=gnu++03) -std=gnu++03
216 +
217 + local mycmakeargs=(
218 + -DBUILD_CONFIG=xtrabackup_release
219 + -DWITH_EDITLINE=system
220 + -DWITH_LIBEVENT=system
221 + -DWITH_LZ4=system
222 + -DWITH_SSL=bundled # uses yassl, which isn't packaged
223 + -DWITH_ZLIB=system
224 + -DWITH_PIC=ON
225 + )
226 +
227 + local CMAKE_BUILD_TYPE="Release"
228 + cmake-utils_src_configure
229 +}
230 +
231 +src_install() {
232 + local p="${BUILD_DIR}/storage/innobase/xtrabackup"
233 +
234 + dobin "${p}"/src/{xbcloud,xbcrypt,xbstream,xtrabackup}
235 + dosym xtrabackup /usr/bin/innobackupex
236 +
237 + einstalldocs
238 + doman "${p}"/doc/source/build/man/*
239 +}