Gentoo Archives: gentoo-commits

From: Brian Evans <grknight@×××××××.com>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/mysql:master commit in: eclass/, dev-db/mysql-cluster/
Date: Tue, 02 Jul 2013 04:04:25
Message-Id: 1372737681.3f1111aadd149b38b50b3aa7996da210507b83c2.grknight.pub@gentoo
1 commit: 3f1111aadd149b38b50b3aa7996da210507b83c2
2 Author: Brian Evans <grknight <AT> lavabit <DOT> com>
3 AuthorDate: Fri Apr 12 14:32:20 2013 +0000
4 Commit: Brian Evans <grknight <AT> lavabit <DOT> com>
5 CommitDate: Tue Jul 2 04:01:21 2013 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/mysql.git;a=commit;h=3f1111aa
7
8 Bump mysql-cluster to 7.2.13 and 7.3.0 and fix the old version unpack
9 failure
10
11 ---
12 dev-db/mysql-cluster/ChangeLog | 9 +-
13 dev-db/mysql-cluster/Manifest | 2 +
14 dev-db/mysql-cluster/mysql-cluster-7.2.13.ebuild | 229 +++++++++++++++++++++++
15 dev-db/mysql-cluster/mysql-cluster-7.3.0.ebuild | 229 +++++++++++++++++++++++
16 eclass/mysql-v2.eclass | 13 +-
17 eclass/mysql.eclass | 2 +-
18 6 files changed, 478 insertions(+), 6 deletions(-)
19
20 diff --git a/dev-db/mysql-cluster/ChangeLog b/dev-db/mysql-cluster/ChangeLog
21 index 67c7aca..0e6178d 100644
22 --- a/dev-db/mysql-cluster/ChangeLog
23 +++ b/dev-db/mysql-cluster/ChangeLog
24 @@ -1,7 +1,14 @@
25 # ChangeLog for dev-db/mysql-cluster
26 -# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
27 +# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
28 # $Header: $
29
30 +*mysql-cluster-7.2.13 (01 Jul 2013)
31 +*mysql-cluster-7.3.0 (01 Jul 2013)
32 +
33 + 01 Jul 2013; Brian Evans <grknight@×××××××.com>
34 + +mysql-cluster-7.2.13.ebuild, +mysql-cluster-7.3.0.ebuild:
35 + Bump to version 7.2.13 and 7.3.0
36 +
37 22 May 2012; Jorge Manuel B. S. Vicetto <jmbsvicetto@g.o>
38 mysql-cluster-7.0.9.ebuild:
39 Move EAPI assignment to the top.
40
41 diff --git a/dev-db/mysql-cluster/Manifest b/dev-db/mysql-cluster/Manifest
42 index 9a5d0f3..67110b2 100644
43 --- a/dev-db/mysql-cluster/Manifest
44 +++ b/dev-db/mysql-cluster/Manifest
45 @@ -1,3 +1,5 @@
46 DIST mysql-cluster-gpl-7.0.9.tar.gz 22778151 SHA256 c4d5ff949c7aa8b4173492406b7b202cc9c3755bafe4670bc9e615a688d64d32 SHA512 43875f38d4cef3c58a067893c857df31d09b27909b61be07ccea365e194debea7549687c0941e4d90197b0eb3b21ed24df846b86435225f8ed91168544ee0ba2 WHIRLPOOL 24baee9c07d1a15e503fb43b3bf0ebf1b0349d5572110d7b3caf6850ff96ec071804c5b19c1132640f20ef2dd42e2d4455d9d08058ecf42c7fce06c66128035e
47 +DIST mysql-cluster-gpl-7.2.13.tar.gz 28571637 SHA256 3ea1061617bf2421fc7020c48e39b7539d04580171a663c778f98aa9c0176e85 SHA512 3dbc2ae8c9827b86bc88e89e07d26f1dd72cf3de88929dc9ae520f749a435b06202cdeb026689e8ced696d7440e23b86cf89e24cb0dd9084a8fb2c307ac02cee WHIRLPOOL c5f7b7b0951acc005b0f8b08ddbdb979b94fbe17353203a83b364a6d8c41de0d95caf621eb28c96627e6318240ba1ef604517993645a5878a78734d5f5ab137d
48 +DIST mysql-cluster-gpl-7.3.0.tar.gz 28623955 SHA256 ef0a8474e7debd7d4e2e900e60a08651d0c47d6d395d402061e100dc0fabcc03 SHA512 8c4eeb0d4d422bcffec0ab32286967d5fac8c54b4965f688f79794acfb90b7f477d86a8e980b62d47c68a468ff254c97569db34d2306eb6403a43a0afca64eee WHIRLPOOL 605ad60b6fa1f5948613f86568a94e21031ed7f611f3a621ae67a0ab3a387e0331c48cf2490ab4308a9ebac49e3bf0e25a7b084a4366f756a28dba3d59bcfcb3
49 DIST pbxt-1.0.11-6-pre-ga.tar.gz 3156307 SHA256 71ff3d86e9e5691f3efe541bf31f55a7ec2a88af27df6ad853b65902e00e6d12 SHA512 fa238303f06e0a9adfb10bd5a2e1d2e4850d2c17a350af3874cbff099d6e47b7c555d750c584d06a3ca87c1eb1e9301a9619d8d9a4cffb7fd0169b2b3a63c80c WHIRLPOOL 05cdd39f6f5dafff2def0062a00a24eff6cf6d8754f622b133365cef47cd6b828df5500ac407359d0793a75dd239ec1e49a13d2400a01ddf8b4cef7466e86962
50 DIST percona-xtradb-1.0.6-10.tar.gz 1676716 SHA256 e3aa818f13cf669412e59ad194eae8eada7a857bf7a4260e4bb41cab4d7ae39c SHA512 72e4b656b22a0420e6f5935dc28060e5c50fbeb48c6d1ae430579d9ccef8042fdd4dde128cc977b903de6221f7021e8c87ea29fe6a8a8c74edb84bf54ab889f3 WHIRLPOOL a916879be315498da27c60992efa4d19e91305b81242925e161547f3fb97a820256e1d07863e9e007ef843af54cd087ce5ac47d5ed1b70862da6cd5a9d81eccf
51
52 diff --git a/dev-db/mysql-cluster/mysql-cluster-7.2.13.ebuild b/dev-db/mysql-cluster/mysql-cluster-7.2.13.ebuild
53 new file mode 100644
54 index 0000000..f00e591
55 --- /dev/null
56 +++ b/dev-db/mysql-cluster/mysql-cluster-7.2.13.ebuild
57 @@ -0,0 +1,229 @@
58 +# Copyright 1999-2013 Gentoo Foundation
59 +# Distributed under the terms of the GNU General Public License v2
60 +# $Header: $
61 +
62 +EAPI=4
63 +MY_EXTRAS_VER="live"
64 +BUILD="cmake"
65 +
66 +# PBXT
67 +#PBXT_VERSION='1.0.11-6-pre-ga'
68 +# XtraDB
69 +#PERCONA_VER='5.1.45-10' XTRADB_VER='1.0.6-10'
70 +
71 +inherit toolchain-funcs mysql-v2
72 +# only to make repoman happy. it is really set in the eclass
73 +IUSE="$IUSE"
74 +
75 +# REMEMBER: also update eclass/mysql*.eclass before committing!
76 +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd ~x64-macos ~x86-solaris"
77 +
78 +# When MY_EXTRAS is bumped, the index should be revised to exclude these.
79 +# This is often broken still
80 +EPATCH_EXCLUDE='02040_all_embedded-library-shared-5.1.43.patch '
81 +
82 +DEPEND="|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )"
83 +RDEPEND="!media-sound/amarok[embedded]"
84 +
85 +# Please do not add a naive src_unpack to this ebuild
86 +# If you want to add a single patch, copy the ebuild to an overlay
87 +# and create your own mysql-extras tarball, looking at 000_index.txt
88 +
89 +# Official test instructions:
90 +# USE='berkdb -cluster embedded extraengine perl ssl community' \
91 +# FEATURES='test userpriv -usersandbox' \
92 +# ebuild mysql-X.X.XX.ebuild \
93 +# digest clean package
94 +src_test() {
95 + # Bug #213475 - MySQL _will_ object strenously if your machine is named
96 + # localhost. Also causes weird failures.
97 + [[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
98 +
99 + emake check || die "make check failed"
100 + if ! use "minimal" ; then
101 + if [[ $UID -eq 0 ]]; then
102 + die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
103 + fi
104 + has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
105 + cd "${S}"
106 + einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
107 + local retstatus_unit
108 + local retstatus_ns
109 + local retstatus_ps
110 + local t
111 + addpredict /this-dir-does-not-exist/t9.MYI
112 +
113 + # Ensure that parallel runs don't die
114 + export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
115 +
116 + # archive_gis really sucks a lot, but it's only relevant for the
117 + # USE=extraengines case
118 + case ${PV} in
119 + 5.0.42)
120 + mysql_disable_test "archive_gis" "Totally broken in 5.0.42"
121 + ;;
122 +
123 + 5.0.4[3-9]|5.0.[56]*|5.0.70|5.0.87)
124 + [ "$(tc-endian)" == "big" ] && \
125 + mysql_disable_test \
126 + "archive_gis" \
127 + "Broken in 5.0.43-70 and 5.0.87 on big-endian boxes only"
128 + ;;
129 + esac
130 +
131 + # This was a slight testcase breakage when the read_only security issue
132 + # was fixed.
133 + case ${PV} in
134 + 5.0.54|5.0.51*)
135 + mysql_disable_test \
136 + "read_only" \
137 + "Broken in 5.0.51-54, output in wrong order"
138 + ;;
139 + esac
140 +
141 + # Ditto to read_only
142 + [ "${PV}" == "5.0.51a" ] && \
143 + mysql_disable_test \
144 + "view" \
145 + "Broken in 5.0.51, output in wrong order"
146 +
147 + # x86-specific, OOM issue with some subselects on low memory servers
148 + [ "${PV}" == "5.0.54" ] && \
149 + [ "${ARCH/x86}" != "${ARCH}" ] && \
150 + mysql_disable_test \
151 + "subselect" \
152 + "Testcase needs tuning on x86 for oom condition"
153 +
154 + # Broke with the YaSSL security issue that didn't affect Gentoo.
155 + [ "${PV}" == "5.0.56" ] && \
156 + for t in openssl_1 rpl_openssl rpl_ssl ssl \
157 + ssl_8k_key ssl_compress ssl_connect ; do \
158 + mysql_disable_test \
159 + "$t" \
160 + "OpenSSL tests broken on 5.0.56"
161 + done
162 +
163 + # New test was broken in first time
164 + # Upstream bug 41066
165 + # http://bugs.mysql.com/bug.php?id=41066
166 + [ "${PV}" == "5.0.72" ] && \
167 + mysql_disable_test \
168 + "status2" \
169 + "Broken in 5.0.72, new test is broken, upstream bug #41066"
170 +
171 + # The entire 5.0 series has pre-generated SSL certificates, they have
172 + # mostly expired now. ${S}/mysql-tests/std-data/*.pem
173 + # The certs really SHOULD be generated for the tests, so that they are
174 + # not expiring like this. We cannot do so ourselves as the tests look
175 + # closely as the cert path data, and we do not have the CA key to regen
176 + # ourselves. Alternatively, upstream should generate them with at least
177 + # 50-year validity.
178 + #
179 + # Known expiry points:
180 + # 4.1.*, 5.0.0-5.0.22, 5.1.7: Expires 2013/09/09
181 + # 5.0.23-5.0.77, 5.1.7-5.1.22?: Expires 2009/01/27
182 + # 5.0.78-5.0.90, 5.1.??-5.1.42: Expires 2010/01/28
183 + #
184 + # mysql-test/std_data/untrusted-cacert.pem is MEANT to be
185 + # expired/invalid.
186 + case ${PV} in
187 + 5.0.*|5.1.*|5.4.*|5.5.*)
188 + for t in openssl_1 rpl_openssl rpl.rpl_ssl rpl.rpl_ssl1 ssl ssl_8k_key \
189 + ssl_compress ssl_connect rpl.rpl_heartbeat_ssl ; do \
190 + mysql_disable_test \
191 + "$t" \
192 + "These OpenSSL tests break due to expired certificates"
193 + done
194 + ;;
195 + esac
196 +
197 + # These are also failing in MySQL 5.1 for now, and are believed to be
198 + # false positives:
199 + #
200 + # main.mysql_comment, main.mysql_upgrade, main.information_schema,
201 + # funcs_1.is_columns_mysql funcs_1.is_tables_mysql funcs_1.is_triggers:
202 + # fails due to USE=-latin1 / utf8 default
203 + #
204 + # main.mysql_client_test:
205 + # segfaults at random under Portage only, suspect resource limits.
206 + #
207 + # main.not_partition:
208 + # Failure reason unknown at this time, must resolve before package.mask
209 + # removal FIXME
210 + case ${PV} in
211 + 5.1.*|5.4.*|5.5.*)
212 + for t in main.mysql_client_test main.mysql_comments \
213 + main.mysql_upgrade \
214 + main.information_schema \
215 + main.not_partition funcs_1.is_columns_mysql \
216 + funcs_1.is_tables_mysql funcs_1.is_triggers; do
217 + mysql_disable_test "$t" "False positives in Gentoo"
218 + done
219 + ;;
220 + esac
221 +
222 + use profiling && use community \
223 + || mysql_disable_test main.profiling \
224 + "Profiling test needs profiling support"
225 +
226 + if [ "${PN}" == "mariadb" ]; then
227 + for t in \
228 + parts.part_supported_sql_func_ndb \
229 + parts.partition_auto_increment_ndb ; do
230 + mysql_disable_test $t "ndb not supported in mariadb"
231 + done
232 + fi
233 +
234 + # This fail with XtraDB in place of normal InnoDB
235 + # TODO: test if they are broken with the rest of the Percona patches
236 + if xtradb_patch_available && use xtradb ; then
237 + for t in main.innodb innodb.innodb_bug51378 \
238 + main.information_schema_db main.mysqlshow \
239 + main.innodb-autoinc main.innodb_bug21704 \
240 + main.innodb_bug44369 main.innodb_bug46000 \
241 + main.index_merge_innodb \
242 + innodb.innodb innodb.innodb_misc1 innodb.innodb_bug52663 \
243 + innodb.innodb-autoinc innodb.innodb-autoinc-44030 \
244 + innodb.innodb_bug21704 innodb.innodb_bug44369 \
245 + innodb.innodb_bug46000 innodb.innodb_bug48024 \
246 + innodb.innodb_bug49164 \
247 + ; do
248 + mysql_disable_test $t "tests broken in xtradb"
249 + done
250 + fi
251 +
252 + # create directories because mysqladmin might make out of order
253 + mkdir -p "${S}"/mysql-test/var-{ps,ns}{,/log}
254 +
255 + # We run the test protocols seperately
256 + emake test-unit
257 + retstatus_unit=$?
258 + [[ $retstatus_unit -eq 0 ]] || eerror "test-unit failed"
259 +
260 + emake test-ns force="--force --vardir=${S}/mysql-test/var-ns"
261 + retstatus_ns=$?
262 + [[ $retstatus_ns -eq 0 ]] || eerror "test-ns failed"
263 + has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
264 +
265 + emake test-ps force="--force --vardir=${S}/mysql-test/var-ps"
266 + retstatus_ps=$?
267 + [[ $retstatus_ps -eq 0 ]] || eerror "test-ps failed"
268 + has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
269 +
270 + # TODO:
271 + # When upstream enables the pr and nr testsuites, we need those as well.
272 +
273 + # Cleanup is important for these testcases.
274 + pkill -9 -f "${S}/ndb" 2>/dev/null
275 + pkill -9 -f "${S}/sql" 2>/dev/null
276 + failures=""
277 + [[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
278 + [[ $retstatus_ns -eq 0 ]] || failures="${failures} test-ns"
279 + [[ $retstatus_ps -eq 0 ]] || failures="${failures} test-ps"
280 + has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
281 + [[ -z "$failures" ]] || die "Test failures: $failures"
282 + einfo "Tests successfully completed"
283 + else
284 + einfo "Skipping server tests due to minimal build."
285 + fi
286 +}
287
288 diff --git a/dev-db/mysql-cluster/mysql-cluster-7.3.0.ebuild b/dev-db/mysql-cluster/mysql-cluster-7.3.0.ebuild
289 new file mode 100644
290 index 0000000..f00e591
291 --- /dev/null
292 +++ b/dev-db/mysql-cluster/mysql-cluster-7.3.0.ebuild
293 @@ -0,0 +1,229 @@
294 +# Copyright 1999-2013 Gentoo Foundation
295 +# Distributed under the terms of the GNU General Public License v2
296 +# $Header: $
297 +
298 +EAPI=4
299 +MY_EXTRAS_VER="live"
300 +BUILD="cmake"
301 +
302 +# PBXT
303 +#PBXT_VERSION='1.0.11-6-pre-ga'
304 +# XtraDB
305 +#PERCONA_VER='5.1.45-10' XTRADB_VER='1.0.6-10'
306 +
307 +inherit toolchain-funcs mysql-v2
308 +# only to make repoman happy. it is really set in the eclass
309 +IUSE="$IUSE"
310 +
311 +# REMEMBER: also update eclass/mysql*.eclass before committing!
312 +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd ~x64-macos ~x86-solaris"
313 +
314 +# When MY_EXTRAS is bumped, the index should be revised to exclude these.
315 +# This is often broken still
316 +EPATCH_EXCLUDE='02040_all_embedded-library-shared-5.1.43.patch '
317 +
318 +DEPEND="|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )"
319 +RDEPEND="!media-sound/amarok[embedded]"
320 +
321 +# Please do not add a naive src_unpack to this ebuild
322 +# If you want to add a single patch, copy the ebuild to an overlay
323 +# and create your own mysql-extras tarball, looking at 000_index.txt
324 +
325 +# Official test instructions:
326 +# USE='berkdb -cluster embedded extraengine perl ssl community' \
327 +# FEATURES='test userpriv -usersandbox' \
328 +# ebuild mysql-X.X.XX.ebuild \
329 +# digest clean package
330 +src_test() {
331 + # Bug #213475 - MySQL _will_ object strenously if your machine is named
332 + # localhost. Also causes weird failures.
333 + [[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
334 +
335 + emake check || die "make check failed"
336 + if ! use "minimal" ; then
337 + if [[ $UID -eq 0 ]]; then
338 + die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
339 + fi
340 + has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
341 + cd "${S}"
342 + einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
343 + local retstatus_unit
344 + local retstatus_ns
345 + local retstatus_ps
346 + local t
347 + addpredict /this-dir-does-not-exist/t9.MYI
348 +
349 + # Ensure that parallel runs don't die
350 + export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
351 +
352 + # archive_gis really sucks a lot, but it's only relevant for the
353 + # USE=extraengines case
354 + case ${PV} in
355 + 5.0.42)
356 + mysql_disable_test "archive_gis" "Totally broken in 5.0.42"
357 + ;;
358 +
359 + 5.0.4[3-9]|5.0.[56]*|5.0.70|5.0.87)
360 + [ "$(tc-endian)" == "big" ] && \
361 + mysql_disable_test \
362 + "archive_gis" \
363 + "Broken in 5.0.43-70 and 5.0.87 on big-endian boxes only"
364 + ;;
365 + esac
366 +
367 + # This was a slight testcase breakage when the read_only security issue
368 + # was fixed.
369 + case ${PV} in
370 + 5.0.54|5.0.51*)
371 + mysql_disable_test \
372 + "read_only" \
373 + "Broken in 5.0.51-54, output in wrong order"
374 + ;;
375 + esac
376 +
377 + # Ditto to read_only
378 + [ "${PV}" == "5.0.51a" ] && \
379 + mysql_disable_test \
380 + "view" \
381 + "Broken in 5.0.51, output in wrong order"
382 +
383 + # x86-specific, OOM issue with some subselects on low memory servers
384 + [ "${PV}" == "5.0.54" ] && \
385 + [ "${ARCH/x86}" != "${ARCH}" ] && \
386 + mysql_disable_test \
387 + "subselect" \
388 + "Testcase needs tuning on x86 for oom condition"
389 +
390 + # Broke with the YaSSL security issue that didn't affect Gentoo.
391 + [ "${PV}" == "5.0.56" ] && \
392 + for t in openssl_1 rpl_openssl rpl_ssl ssl \
393 + ssl_8k_key ssl_compress ssl_connect ; do \
394 + mysql_disable_test \
395 + "$t" \
396 + "OpenSSL tests broken on 5.0.56"
397 + done
398 +
399 + # New test was broken in first time
400 + # Upstream bug 41066
401 + # http://bugs.mysql.com/bug.php?id=41066
402 + [ "${PV}" == "5.0.72" ] && \
403 + mysql_disable_test \
404 + "status2" \
405 + "Broken in 5.0.72, new test is broken, upstream bug #41066"
406 +
407 + # The entire 5.0 series has pre-generated SSL certificates, they have
408 + # mostly expired now. ${S}/mysql-tests/std-data/*.pem
409 + # The certs really SHOULD be generated for the tests, so that they are
410 + # not expiring like this. We cannot do so ourselves as the tests look
411 + # closely as the cert path data, and we do not have the CA key to regen
412 + # ourselves. Alternatively, upstream should generate them with at least
413 + # 50-year validity.
414 + #
415 + # Known expiry points:
416 + # 4.1.*, 5.0.0-5.0.22, 5.1.7: Expires 2013/09/09
417 + # 5.0.23-5.0.77, 5.1.7-5.1.22?: Expires 2009/01/27
418 + # 5.0.78-5.0.90, 5.1.??-5.1.42: Expires 2010/01/28
419 + #
420 + # mysql-test/std_data/untrusted-cacert.pem is MEANT to be
421 + # expired/invalid.
422 + case ${PV} in
423 + 5.0.*|5.1.*|5.4.*|5.5.*)
424 + for t in openssl_1 rpl_openssl rpl.rpl_ssl rpl.rpl_ssl1 ssl ssl_8k_key \
425 + ssl_compress ssl_connect rpl.rpl_heartbeat_ssl ; do \
426 + mysql_disable_test \
427 + "$t" \
428 + "These OpenSSL tests break due to expired certificates"
429 + done
430 + ;;
431 + esac
432 +
433 + # These are also failing in MySQL 5.1 for now, and are believed to be
434 + # false positives:
435 + #
436 + # main.mysql_comment, main.mysql_upgrade, main.information_schema,
437 + # funcs_1.is_columns_mysql funcs_1.is_tables_mysql funcs_1.is_triggers:
438 + # fails due to USE=-latin1 / utf8 default
439 + #
440 + # main.mysql_client_test:
441 + # segfaults at random under Portage only, suspect resource limits.
442 + #
443 + # main.not_partition:
444 + # Failure reason unknown at this time, must resolve before package.mask
445 + # removal FIXME
446 + case ${PV} in
447 + 5.1.*|5.4.*|5.5.*)
448 + for t in main.mysql_client_test main.mysql_comments \
449 + main.mysql_upgrade \
450 + main.information_schema \
451 + main.not_partition funcs_1.is_columns_mysql \
452 + funcs_1.is_tables_mysql funcs_1.is_triggers; do
453 + mysql_disable_test "$t" "False positives in Gentoo"
454 + done
455 + ;;
456 + esac
457 +
458 + use profiling && use community \
459 + || mysql_disable_test main.profiling \
460 + "Profiling test needs profiling support"
461 +
462 + if [ "${PN}" == "mariadb" ]; then
463 + for t in \
464 + parts.part_supported_sql_func_ndb \
465 + parts.partition_auto_increment_ndb ; do
466 + mysql_disable_test $t "ndb not supported in mariadb"
467 + done
468 + fi
469 +
470 + # This fail with XtraDB in place of normal InnoDB
471 + # TODO: test if they are broken with the rest of the Percona patches
472 + if xtradb_patch_available && use xtradb ; then
473 + for t in main.innodb innodb.innodb_bug51378 \
474 + main.information_schema_db main.mysqlshow \
475 + main.innodb-autoinc main.innodb_bug21704 \
476 + main.innodb_bug44369 main.innodb_bug46000 \
477 + main.index_merge_innodb \
478 + innodb.innodb innodb.innodb_misc1 innodb.innodb_bug52663 \
479 + innodb.innodb-autoinc innodb.innodb-autoinc-44030 \
480 + innodb.innodb_bug21704 innodb.innodb_bug44369 \
481 + innodb.innodb_bug46000 innodb.innodb_bug48024 \
482 + innodb.innodb_bug49164 \
483 + ; do
484 + mysql_disable_test $t "tests broken in xtradb"
485 + done
486 + fi
487 +
488 + # create directories because mysqladmin might make out of order
489 + mkdir -p "${S}"/mysql-test/var-{ps,ns}{,/log}
490 +
491 + # We run the test protocols seperately
492 + emake test-unit
493 + retstatus_unit=$?
494 + [[ $retstatus_unit -eq 0 ]] || eerror "test-unit failed"
495 +
496 + emake test-ns force="--force --vardir=${S}/mysql-test/var-ns"
497 + retstatus_ns=$?
498 + [[ $retstatus_ns -eq 0 ]] || eerror "test-ns failed"
499 + has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
500 +
501 + emake test-ps force="--force --vardir=${S}/mysql-test/var-ps"
502 + retstatus_ps=$?
503 + [[ $retstatus_ps -eq 0 ]] || eerror "test-ps failed"
504 + has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
505 +
506 + # TODO:
507 + # When upstream enables the pr and nr testsuites, we need those as well.
508 +
509 + # Cleanup is important for these testcases.
510 + pkill -9 -f "${S}/ndb" 2>/dev/null
511 + pkill -9 -f "${S}/sql" 2>/dev/null
512 + failures=""
513 + [[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
514 + [[ $retstatus_ns -eq 0 ]] || failures="${failures} test-ns"
515 + [[ $retstatus_ps -eq 0 ]] || failures="${failures} test-ps"
516 + has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
517 + [[ -z "$failures" ]] || die "Test failures: $failures"
518 + einfo "Tests successfully completed"
519 + else
520 + einfo "Skipping server tests due to minimal build."
521 + fi
522 +}
523
524 diff --git a/eclass/mysql-v2.eclass b/eclass/mysql-v2.eclass
525 index 7a301d2..66d3f07 100644
526 --- a/eclass/mysql-v2.eclass
527 +++ b/eclass/mysql-v2.eclass
528 @@ -137,8 +137,13 @@ if [[ -z ${SERVER_URI} ]]; then
529 SERVER_URI="http://www.percona.com/redir/downloads/${PERCONA_PN}-${MIRROR_PV}/LATEST/source/${PERCONA_PN}-${MY_PV}-rel30.${MY_PATCH}.tar.gz"
530 # http://www.percona.com/redir/downloads/Percona-Server-5.5/LATEST/source/Percona-Server-5.5.30-rel30.2.tar.gz
531 else
532 - URI_DIR="MySQL"
533 - URI_FILE="mysql"
534 + if [[ "${PN}" == "mysql-cluster" ]] ; then
535 + URI_DIR="MySQL-Cluster"
536 + URI_FILE="mysql-cluster-gpl"
537 + else
538 + URI_DIR="MySQL"
539 + URI_FILE="mysql"
540 + fi
541 URI_A="${URI_FILE}-${MY_PV}.tar.gz"
542 MIRROR_PV=$(get_version_component_range 1-2 ${PV})
543 # Recently upstream switched to an archive site, and not on mirrors
544 @@ -241,7 +246,7 @@ if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] ; then
545 fi
546
547 # Having different flavours at the same time is not a good idea
548 -for i in "mysql" "mariadb" "mariadb-galera" "percona-server"; do
549 +for i in "mysql" "mariadb" "mariadb-galera" "percona-server" "mysql-cluster" ; do
550 [[ ${i} == ${PN} ]] ||
551 DEPEND="${DEPEND} !dev-db/${i}"
552 done
553 @@ -411,7 +416,7 @@ mysql-v2_pkg_setup() {
554 enewgroup mysql 60 || die "problem adding 'mysql' group"
555 enewuser mysql 60 -1 /dev/null mysql || die "problem adding 'mysql' user"
556
557 - if use cluster; then
558 + if use cluster && [[ "${PN}" != "mysql-cluster" ]]; then
559 ewarn "Upstream has noted that the NDB cluster support in the 5.0 and"
560 ewarn "5.1 series should NOT be put into production. In the near"
561 ewarn "future, it will be disabled from building."
562
563 diff --git a/eclass/mysql.eclass b/eclass/mysql.eclass
564 index 3cc5df7..01f1c6d 100644
565 --- a/eclass/mysql.eclass
566 +++ b/eclass/mysql.eclass
567 @@ -878,7 +878,7 @@ mysql_src_unpack() {
568
569 unpack ${A}
570 # Grab the patches
571 - [[ "${MY_EXTRAS_VER}" == "live" ]] && S="${WORKDIR}/mysql-extras" git_src_unpack
572 + [[ "${MY_EXTRAS_VER}" == "live" ]] && S="${WORKDIR}/mysql-extras" git-2_src_unpack
573
574 mv -f "${WORKDIR}/${MY_SOURCEDIR}" "${S}"