Gentoo Archives: gentoo-commits

From: Brian Evans <grknight@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-db/mysql-cluster/
Date: Mon, 21 Jan 2019 00:25:15
Message-Id: 1548030293.f15392b08c5e03e9757368279fa9358e3856d2cb.grknight@gentoo
1 commit: f15392b08c5e03e9757368279fa9358e3856d2cb
2 Author: Brian Evans <grknight <AT> gentoo <DOT> org>
3 AuthorDate: Mon Jan 21 00:24:53 2019 +0000
4 Commit: Brian Evans <grknight <AT> gentoo <DOT> org>
5 CommitDate: Mon Jan 21 00:24:53 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f15392b0
7
8 dev-db/mysql-cluster: Drop old
9
10 Package-Manager: Portage-2.3.56, Repoman-2.3.12
11 Signed-off-by: Brian Evans <grknight <AT> gentoo.org>
12
13 dev-db/mysql-cluster/Manifest | 5 -
14 dev-db/mysql-cluster/metadata.xml | 6 -
15 dev-db/mysql-cluster/mysql-cluster-7.2.31.ebuild | 126 ---------------
16 dev-db/mysql-cluster/mysql-cluster-7.3.19.ebuild | 190 -----------------------
17 dev-db/mysql-cluster/mysql-cluster-7.4.17.ebuild | 190 -----------------------
18 5 files changed, 517 deletions(-)
19
20 diff --git a/dev-db/mysql-cluster/Manifest b/dev-db/mysql-cluster/Manifest
21 index 59b46cc17dc..0ebf0edc95e 100644
22 --- a/dev-db/mysql-cluster/Manifest
23 +++ b/dev-db/mysql-cluster/Manifest
24 @@ -1,9 +1,4 @@
25 -DIST mysql-cluster-gpl-7.2.31.tar.gz 25109340 BLAKE2B c0af2b85c9760636f35ab461997ac5e8e5d20085dbfef6e7a265931e743b288a4cdb8e282f7e9436daa8b9e060fe110f5522c640e2e2a7f0b54fe2686ebb751b SHA512 ab6a7ad2bb981e8351d1d337eb0a75ad952da6f100a6c17a02c629936c4a3bad5701ead6ccf9b912ba0412d3442b6ad87c8e0c5409b84f10af8ec86a7c44b881
26 DIST mysql-cluster-gpl-7.2.34.tar.gz 25114728 BLAKE2B b9337cf8ae6742c58f92ae64b8a636c8e54e6db3be45b329a695700a55a89b77839a5417c949ae37b2897d3bbd1274e41efcacde735f40d1de9ae14b16dd4576 SHA512 b73a3d13665a6efdad1e0e18e61780d8b99621ab46269a98723b9ddd9526edb77b5418947cb88b8d287c73eba7659aced363d747df18596ac34eb701ec83623c
27 -DIST mysql-cluster-gpl-7.3.19.tar.gz 41340089 BLAKE2B 25ca93a9bcc41fb03ba0e4d34a1c672ddee3db7ff76fcf483187483dec16d8bffaaf1ab0704b4bed6ebb57681768429f7088757769d6b23dfa757517eef767ea SHA512 2d12124ec6b7ffa904538f21b676b15e093b3720d067b6eaffe609310ffd6261308ddcfbba4ce259f73d8e905f96bdcd21c5b7ec8fb940d2e9a8ec64c0f397a3
28 DIST mysql-cluster-gpl-7.3.22.tar.gz 41356026 BLAKE2B 055a3f8590f0e2e53f8620244bd2ca7d619ab5549de7b33c4d41d2fabd260d98eaabdc0169488a6d018bcafc4458433e21b65025827998a31e9abc1deb5101ae SHA512 ccb9f3429e6ccb2dbb53d98f54abeae3c3128e65dc69c41918324630fef665f48d3c3af2d60bf1cce4e28c492e525c6bbc32cc8a39a9ea47988184adeafd5bd3
29 -DIST mysql-cluster-gpl-7.4.17.tar.gz 41691695 BLAKE2B 9a9641a4962e625364fe9739d0954eeac8d773cb106e05c3cebd9ce94843246db679a1e81db383a861f9cec052193fa1ca80b34fb05d80ffbe248c29094476d2 SHA512 eaeab8b4c62e4b503210c269cf3147cb1fd3690e9bdb291a6bb46c874adf958166ccdf5b8766a09ec14d7fd63e3aff3e4b1f1527201e50e86e588507aa01767f
30 DIST mysql-cluster-gpl-7.4.21.tar.gz 41718490 BLAKE2B 4578e477b345c85ccf12e4ea79893dda9b33bf35722ff8c6d706f150d8506d07b5e49a8e69e37cb3c8ff449832c80f72430924559b4a6d209d11d31cc2a67ca4 SHA512 48f475806608c0f6e0c45cc9c3b3851678153e17cf5c74114b2ca7a75eee455798c8decb857738eecb3fe664930e378e1d399509a954a7073802285eb87801b5
31 -DIST mysql-extras-20171108-2050Z.tar.bz2 313241 BLAKE2B 83900f96392edb97c47007ba0faa4c259b7a3c6f17a7ed7161c7c632ac2466f9ab59777e6c17fdeeb8553650ea654633e3b10cf6f8e7692fbee4ebc5db495aea SHA512 830e6bac6fcead4b2d9649f6aaf6ec6573f86ce3c1a8bc1be6c89a408d69bfb81136baa7273d4449688d683b832880c2470970cd737c2b07cc7a1c2ce9c5a0b6
32 -DIST mysql-extras-20171121-1518Z.tar.bz2 313539 BLAKE2B c397fdf7ffb3fcbcecda20933e18234062a9500dcf4031e9b17131e2a1f23dca7535ed33ff541fc075eb9995c67a9a8fd7261d7524dd42d8d333543c368b4c15 SHA512 dd0d4a00c0ed710e786d157a73f02c6f555ab7a68e57014d958627096a4245a0b45d22ec860dc5389002d106554e80166661c0b6ddcadff1f737e3fa195badda
33 DIST mysql-extras-20190121-0015Z.tar.bz2 330807 BLAKE2B d5beae3d5a493e01d57130f835cd0d7dcbf53af389f9b933446ab43b86f96c85b5858a7a56ffe882ee63371ab96f0226e04f710dfb119ddd91b5c5685d0999bc SHA512 2f092b8e1e2f836d19e4663d383be876d498bca0ee005a690f48ba1797e9e5b648c4a15c36885faa286ce12a49386bf2898940e19eb1d288e7ee084968821a05
34
35 diff --git a/dev-db/mysql-cluster/metadata.xml b/dev-db/mysql-cluster/metadata.xml
36 index 75d88ec7fb1..c82ebfd6fc5 100644
37 --- a/dev-db/mysql-cluster/metadata.xml
38 +++ b/dev-db/mysql-cluster/metadata.xml
39 @@ -7,15 +7,9 @@
40 </maintainer>
41 <use>
42 <flag name="client-libs">Build the client libraries from the server package instead of the C Connector packages (not recommended)</flag>
43 - <flag name="cluster">Add support for NDB clustering</flag>
44 - <flag name="community">Enables the community features from upstream.</flag>
45 - <flag name="embedded">Build embedded server (libmysqld)</flag>
46 <flag name="extraengine">Add support for alternative storage engines (Archive, CSV, Blackhole, Federated(X), Partition)</flag>
47 <flag name="latin1">Use LATIN1 encoding instead of UTF8</flag>
48 <flag name="libressl">Enable SSL connections and crypto functions using <pkg>dev-libs/libressl</pkg></flag>
49 - <flag name="openssl">Enable SSL connections and crypto functions using <pkg>dev-libs/openssl</pkg></flag>
50 - <flag name="max-idx-128">Raise the max index per table limit from 64 to 128</flag>
51 - <flag name="minimal">Install client programs only, no server</flag>
52 <flag name="numa">Enable NUMA support using <pkg>sys-process/numactl</pkg> (NUMA kernel support is also required)</flag>
53 <flag name="profiling">Add support for statement profiling (requires USE=community).</flag>
54 <flag name="server">Build the server program</flag>
55
56 diff --git a/dev-db/mysql-cluster/mysql-cluster-7.2.31.ebuild b/dev-db/mysql-cluster/mysql-cluster-7.2.31.ebuild
57 deleted file mode 100644
58 index d5e946e39e0..00000000000
59 --- a/dev-db/mysql-cluster/mysql-cluster-7.2.31.ebuild
60 +++ /dev/null
61 @@ -1,126 +0,0 @@
62 -# Copyright 1999-2017 Gentoo Foundation
63 -# Distributed under the terms of the GNU General Public License v2
64 -
65 -EAPI=5
66 -MY_EXTRAS_VER="20171108-2050Z"
67 -BUILD="cmake"
68 -#fails to build with ninja
69 -CMAKE_MAKEFILE_GENERATOR=emake
70 -
71 -inherit toolchain-funcs java-pkg-opt-2 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="~amd64 ~x86"
77 -
78 -# When MY_EXTRAS is bumped, the index should be revised to exclude these.
79 -# This is often broken still
80 -EPATCH_EXCLUDE='20006_all_cmake_elib-mysql-cluster-5.5.37.patch 20008_all_mysql-tzinfo-symlink.patch 20019_all_mysql-5.5-mtr-perl-deprecation.patch 20020_all_mysql-5.6-events_1-bug-78899.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='cluster extraengine perl ssl community' \
91 -# FEATURES='test userpriv -usersandbox' \
92 -# ebuild mysql-cluster-X.X.XX.ebuild \
93 -# digest clean package
94 -src_test() {
95 -
96 - local TESTDIR="${CMAKE_BUILD_DIR}/mysql-test"
97 - local retstatus_unit
98 - local retstatus_tests
99 -
100 - # Bug #213475 - MySQL _will_ object strenously if your machine is named
101 - # localhost. Also causes weird failures.
102 - [[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
103 -
104 - if ! use "minimal" ; then
105 -
106 - if [[ $UID -eq 0 ]]; then
107 - die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
108 - fi
109 - has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
110 -
111 - einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
112 - addpredict /this-dir-does-not-exist/t9.MYI
113 -
114 - # Run CTest (test-units)
115 - cmake-utils_src_test
116 - retstatus_unit=$?
117 - [[ $retstatus_unit -eq 0 ]] || eerror "test-unit failed"
118 -
119 - # Ensure that parallel runs don't die
120 - export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
121 -
122 - # create directories because mysqladmin might right out of order
123 - mkdir -p "${T}"/var-tests{,/log}
124 -
125 - # These are failing in MySQL 5.5 for now and are believed to be
126 - # false positives:
127 - #
128 - # main.information_schema, binlog.binlog_statement_insert_delayed,
129 - # main.mysqld--help-notwin, ndb.ndbinfo, ndb_binlog.ndb_binlog_index
130 - # fails due to USE=-latin1 / utf8 default
131 - #
132 - # main.mysql_client_test:
133 - # segfaults at random under Portage only, suspect resource limits.
134 - #
135 - # sys_vars.plugin_dir_basic
136 - # fails because PLUGIN_DIR is set to MYSQL_LIBDIR64/plugin
137 - # instead of MYSQL_LIBDIR/plugin
138 - #
139 - # main.flush_read_lock_kill
140 - # fails because of unknown system variable 'DEBUG_SYNC'
141 - #
142 - # main.openssl_1
143 - # error message changing
144 - # -mysqltest: Could not open connection 'default': 2026 SSL connection
145 - # error: ASN: bad other signature confirmation
146 - # +mysqltest: Could not open connection 'default': 2026 SSL connection
147 - # error: error:00000001:lib(0):func(0):reason(1)
148 - #
149 -
150 - for t in main.mysql_client_test \
151 - binlog.binlog_statement_insert_delayed main.information_schema \
152 - main.mysqld--help-notwin main.flush_read_lock_kill \
153 - sys_vars.plugin_dir_basic main.openssl_1 \
154 - main.mysqlhotcopy_archive main.mysqlhotcopy_myisam \
155 - ndb.ndbinfo ndb_binlog.ndb_binlog_index ; do
156 - mysql-v2_disable_test "$t" "False positives in Gentoo"
157 - done
158 -
159 - # Run mysql tests
160 - pushd "${TESTDIR}"
161 -
162 - # run mysql-test tests
163 - perl mysql-test-run.pl --force --vardir="${T}/var-tests" \
164 - --parallel=auto
165 - retstatus_tests=$?
166 - [[ $retstatus_tests -eq 0 ]] || eerror "tests failed"
167 - has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
168 -
169 - popd
170 -
171 - # Cleanup is important for these testcases.
172 - pkill -9 -f "${S}/ndb" 2>/dev/null
173 - pkill -9 -f "${S}/sql" 2>/dev/null
174 -
175 - failures=""
176 - [[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
177 - [[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
178 - has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
179 -
180 - [[ -z "$failures" ]] || die "Test failures: $failures"
181 - einfo "Tests successfully completed"
182 -
183 - else
184 -
185 - einfo "Skipping server tests due to minimal build."
186 - fi
187 -}
188
189 diff --git a/dev-db/mysql-cluster/mysql-cluster-7.3.19.ebuild b/dev-db/mysql-cluster/mysql-cluster-7.3.19.ebuild
190 deleted file mode 100644
191 index 465e47e22e5..00000000000
192 --- a/dev-db/mysql-cluster/mysql-cluster-7.3.19.ebuild
193 +++ /dev/null
194 @@ -1,190 +0,0 @@
195 -# Copyright 1999-2017 Gentoo Foundation
196 -# Distributed under the terms of the GNU General Public License v2
197 -
198 -EAPI=6
199 -MY_EXTRAS_VER="20171121-1518Z"
200 -SUBSLOT="18"
201 -MYSQL_PV_MAJOR="5.6"
202 -#fails to build with ninja
203 -CMAKE_MAKEFILE_GENERATOR=emake
204 -
205 -inherit java-utils-2 mysql-multilib-r1
206 -# only to make repoman happy. it is really set in the eclass
207 -IUSE="$IUSE numa"
208 -
209 -# REMEMBER: also update eclass/mysql*.eclass before committing!
210 -KEYWORDS="~amd64 ~x86"
211 -COMMON_DEPEND="numa? ( sys-process/numactl ) dev-libs/libevent:0= ${JAVA_PKG_E_DEPEND}"
212 -DEPEND="${COMMON_DEPEND} || ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 ) >=virtual/jdk-1.6 test? ( dev-perl/JSON )"
213 -RDEPEND="${COMMON_DEPEND} !media-sound/amarok[embedded] >=virtual/jre-1.6"
214 -
215 -MY_PATCH_DIR="${WORKDIR}/mysql-extras-${MY_EXTRAS_VER}"
216 -
217 -PATCHES=(
218 - "${MY_PATCH_DIR}"/01050_all_mysql_config_cleanup-5.6.patch
219 - "${MY_PATCH_DIR}"/02040_all_embedded-library-shared-5.5.10.patch
220 - "${MY_PATCH_DIR}"/20007_all_cmake-debug-werror-5.6.22.patch
221 - "${MY_PATCH_DIR}"/20009_all_mysql_myodbc_symbol_fix-5.6.patch
222 -# "${MY_PATCH_DIR}"/20018_all_mysql-5.6.25-without-clientlibs-tools.patch
223 - "${MY_PATCH_DIR}"/20027_all_mysql-5.5-perl5.26-includes.patch
224 - "${MY_PATCH_DIR}"/20028_all_mysql-5.6-gcc7.patch
225 - "${MY_PATCH_DIR}"/30000_all_mysql-cluster-multilib-property.patch
226 -)
227 -
228 -MULTILIB_WRAPPED_HEADERS+=( /usr/include/mysql/storage/ndb/ndb_types.h )
229 -
230 -# Please do not add a naive src_unpack to this ebuild
231 -# If you want to add a single patch, copy the ebuild to an overlay
232 -# and create your own mysql-extras tarball, looking at 000_index.txt
233 -
234 -pkg_setup() {
235 - mysql-multilib-r1_pkg_setup
236 - java-pkg_init
237 -}
238 -
239 -src_prepare() {
240 - mysql-multilib-r1_src_prepare
241 - java-utils-2_src_prepare
242 - if use libressl ; then
243 - sed -i 's/OPENSSL_MAJOR_VERSION STREQUAL "1"/OPENSSL_MAJOR_VERSION STREQUAL "2"/' \
244 - "${S}/cmake/ssl.cmake" || die
245 - fi
246 -}
247 -
248 -src_configure() {
249 - # validate_password plugin uses exceptions when it shouldn't yet (until 5.7)
250 - # disable until we see what happens with it
251 - local MYSQL_CMAKE_NATIVE_DEFINES=(
252 - -DWITHOUT_VALIDATE_PASSWORD=1
253 - -DWITH_NUMA=$(usex numa ON OFF)
254 - -DWITH_NDBCLUSTER=1 -DWITH_PARTITION_STORAGE_ENGINE=1
255 - -DWITHOUT_PARTITION_STORAGE_ENGINE=0 )
256 - mysql-multilib-r1_src_configure
257 -}
258 -
259 -pkg_preinst() {
260 - java-utils-2_pkg_preinst
261 - mysql-multilib-r1_pkg_preinst
262 -}
263 -
264 -# Official test instructions:
265 -# USE='extraengine perl openssl' \
266 -# FEATURES='test userpriv -usersandbox' \
267 -# ebuild mysql-cluster-X.X.XX.ebuild \
268 -# digest clean package
269 -multilib_src_test() {
270 -
271 - if ! multilib_is_native_abi ; then
272 - einfo "Server tests not available on non-native abi".
273 - return 0;
274 - fi
275 -
276 - _disable_test() {
277 - local rawtestname reason
278 - rawtestname="${1}" ; shift
279 - reason="${@}"
280 - ewarn "test '${rawtestname}' disabled: '${reason}'"
281 - echo ${rawtestname} : ${reason} >> "${T}/disabled.def"
282 - }
283 -
284 - local TESTDIR="${CMAKE_BUILD_DIR}/mysql-test"
285 - local retstatus_unit
286 - local retstatus_tests
287 -
288 - # Bug #213475 - MySQL _will_ object strenously if your machine is named
289 - # localhost. Also causes weird failures.
290 - [[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
291 -
292 - if use server ; then
293 -
294 - if [[ $UID -eq 0 ]]; then
295 - die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
296 - fi
297 - has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
298 -
299 - einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
300 -
301 - # Ensure that parallel runs don't die
302 - export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
303 - # Enable parallel testing, auto will try to detect number of cores
304 - # You may set this by hand.
305 - # The default maximum is 8 unless MTR_MAX_PARALLEL is increased
306 - export MTR_PARALLEL="${MTR_PARALLEL:-auto}"
307 -
308 - # create directories because mysqladmin might right out of order
309 - mkdir -p "${T}"/var-tests{,/log}
310 -
311 - # create symlink for the tests to find mysql_tzinfo_to_sql
312 - ln -s "${BUILD_DIR}/sql/mysql_tzinfo_to_sql" "${S}/sql/"
313 -
314 - touch "${T}/disabled.def"
315 - # These are failing in MySQL 5.5/5.6 for now and are believed to be
316 - # false positives:
317 - #
318 - # main.information_schema, binlog.binlog_statement_insert_delayed,
319 - # main.mysqld--help-notwin, funcs_1.is_triggers funcs_1.is_tables_mysql,
320 - # funcs_1.is_columns_mysql, binlog.binlog_mysqlbinlog_filter,
321 - # perfschema.binlog_edge_mix, perfschema.binlog_edge_stmt,
322 - # mysqld--help-notwin, funcs_1.is_triggers, funcs_1.is_tables_mysql, funcs_1.is_columns_mysql
323 - # perfschema.binlog_edge_stmt, perfschema.binlog_edge_mix, binlog.binlog_mysqlbinlog_filter
324 - # fails due to USE=-latin1 / utf8 default
325 - #
326 - # main.mysql_client_test:
327 - # segfaults at random under Portage only, suspect resource limits.
328 - #
329 - for t in \
330 - binlog.binlog_mysqlbinlog_filter \
331 - binlog.binlog_statement_insert_delayed \
332 - funcs_1.is_columns_mysql \
333 - funcs_1.is_tables_mysql \
334 - funcs_1.is_triggers \
335 - main.information_schema \
336 - main.mysqld--help-notwinfuncs_1.is_triggers \
337 - main.mysql_client_test \
338 - mysqld--help-notwin \
339 - main.mysqlhotcopy_archive main.mysqlhotcopy_myisam \
340 - perfschema.binlog_edge_mix \
341 - perfschema.binlog_edge_stmt \
342 - rpl.rpl_plugin_load main.mysql \
343 - main.mysql_upgrade \
344 - ; do
345 - _disable_test "$t" "False positives in Gentoo"
346 - done
347 - # ndb.ndbinfo, ndb_binlog.ndb_binlog_index: latin1/utf8
348 - for t in \
349 - ndb.ndbinfo ndb.ndb_tools_connect \
350 - ndb_binlog.ndb_binlog_index ; do
351 - _disable_test "$t" "False positives in Gentoo (NDB) (Latin1/UTF8)"
352 - done
353 -
354 - # Set file limits higher so tests run
355 - ulimit -n 3000
356 -
357 - # Run mysql tests
358 - pushd "${TESTDIR}" > /dev/null || die
359 -
360 - # run mysql-test tests
361 - perl mysql-test-run.pl --force --vardir="${T}/var-tests" \
362 - --suite-timeout=5000 --reorder --skip-test-list="${T}/disabled.def" \
363 - --nounit-tests
364 - retstatus_tests=$?
365 -
366 - popd > /dev/null || die
367 -
368 - # Cleanup is important for these testcases.
369 - pkill -9 -f "${S}/ndb" 2>/dev/null
370 - pkill -9 -f "${S}/sql" 2>/dev/null
371 -
372 - failures=""
373 - [[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
374 - [[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
375 - has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
376 -
377 - [[ -z "$failures" ]] || die "Test failures: $failures"
378 - einfo "Tests successfully completed"
379 -
380 - else
381 -
382 - einfo "Skipping server tests due to minimal build."
383 - fi
384 -}
385
386 diff --git a/dev-db/mysql-cluster/mysql-cluster-7.4.17.ebuild b/dev-db/mysql-cluster/mysql-cluster-7.4.17.ebuild
387 deleted file mode 100644
388 index 465e47e22e5..00000000000
389 --- a/dev-db/mysql-cluster/mysql-cluster-7.4.17.ebuild
390 +++ /dev/null
391 @@ -1,190 +0,0 @@
392 -# Copyright 1999-2017 Gentoo Foundation
393 -# Distributed under the terms of the GNU General Public License v2
394 -
395 -EAPI=6
396 -MY_EXTRAS_VER="20171121-1518Z"
397 -SUBSLOT="18"
398 -MYSQL_PV_MAJOR="5.6"
399 -#fails to build with ninja
400 -CMAKE_MAKEFILE_GENERATOR=emake
401 -
402 -inherit java-utils-2 mysql-multilib-r1
403 -# only to make repoman happy. it is really set in the eclass
404 -IUSE="$IUSE numa"
405 -
406 -# REMEMBER: also update eclass/mysql*.eclass before committing!
407 -KEYWORDS="~amd64 ~x86"
408 -COMMON_DEPEND="numa? ( sys-process/numactl ) dev-libs/libevent:0= ${JAVA_PKG_E_DEPEND}"
409 -DEPEND="${COMMON_DEPEND} || ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 ) >=virtual/jdk-1.6 test? ( dev-perl/JSON )"
410 -RDEPEND="${COMMON_DEPEND} !media-sound/amarok[embedded] >=virtual/jre-1.6"
411 -
412 -MY_PATCH_DIR="${WORKDIR}/mysql-extras-${MY_EXTRAS_VER}"
413 -
414 -PATCHES=(
415 - "${MY_PATCH_DIR}"/01050_all_mysql_config_cleanup-5.6.patch
416 - "${MY_PATCH_DIR}"/02040_all_embedded-library-shared-5.5.10.patch
417 - "${MY_PATCH_DIR}"/20007_all_cmake-debug-werror-5.6.22.patch
418 - "${MY_PATCH_DIR}"/20009_all_mysql_myodbc_symbol_fix-5.6.patch
419 -# "${MY_PATCH_DIR}"/20018_all_mysql-5.6.25-without-clientlibs-tools.patch
420 - "${MY_PATCH_DIR}"/20027_all_mysql-5.5-perl5.26-includes.patch
421 - "${MY_PATCH_DIR}"/20028_all_mysql-5.6-gcc7.patch
422 - "${MY_PATCH_DIR}"/30000_all_mysql-cluster-multilib-property.patch
423 -)
424 -
425 -MULTILIB_WRAPPED_HEADERS+=( /usr/include/mysql/storage/ndb/ndb_types.h )
426 -
427 -# Please do not add a naive src_unpack to this ebuild
428 -# If you want to add a single patch, copy the ebuild to an overlay
429 -# and create your own mysql-extras tarball, looking at 000_index.txt
430 -
431 -pkg_setup() {
432 - mysql-multilib-r1_pkg_setup
433 - java-pkg_init
434 -}
435 -
436 -src_prepare() {
437 - mysql-multilib-r1_src_prepare
438 - java-utils-2_src_prepare
439 - if use libressl ; then
440 - sed -i 's/OPENSSL_MAJOR_VERSION STREQUAL "1"/OPENSSL_MAJOR_VERSION STREQUAL "2"/' \
441 - "${S}/cmake/ssl.cmake" || die
442 - fi
443 -}
444 -
445 -src_configure() {
446 - # validate_password plugin uses exceptions when it shouldn't yet (until 5.7)
447 - # disable until we see what happens with it
448 - local MYSQL_CMAKE_NATIVE_DEFINES=(
449 - -DWITHOUT_VALIDATE_PASSWORD=1
450 - -DWITH_NUMA=$(usex numa ON OFF)
451 - -DWITH_NDBCLUSTER=1 -DWITH_PARTITION_STORAGE_ENGINE=1
452 - -DWITHOUT_PARTITION_STORAGE_ENGINE=0 )
453 - mysql-multilib-r1_src_configure
454 -}
455 -
456 -pkg_preinst() {
457 - java-utils-2_pkg_preinst
458 - mysql-multilib-r1_pkg_preinst
459 -}
460 -
461 -# Official test instructions:
462 -# USE='extraengine perl openssl' \
463 -# FEATURES='test userpriv -usersandbox' \
464 -# ebuild mysql-cluster-X.X.XX.ebuild \
465 -# digest clean package
466 -multilib_src_test() {
467 -
468 - if ! multilib_is_native_abi ; then
469 - einfo "Server tests not available on non-native abi".
470 - return 0;
471 - fi
472 -
473 - _disable_test() {
474 - local rawtestname reason
475 - rawtestname="${1}" ; shift
476 - reason="${@}"
477 - ewarn "test '${rawtestname}' disabled: '${reason}'"
478 - echo ${rawtestname} : ${reason} >> "${T}/disabled.def"
479 - }
480 -
481 - local TESTDIR="${CMAKE_BUILD_DIR}/mysql-test"
482 - local retstatus_unit
483 - local retstatus_tests
484 -
485 - # Bug #213475 - MySQL _will_ object strenously if your machine is named
486 - # localhost. Also causes weird failures.
487 - [[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
488 -
489 - if use server ; then
490 -
491 - if [[ $UID -eq 0 ]]; then
492 - die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
493 - fi
494 - has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
495 -
496 - einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
497 -
498 - # Ensure that parallel runs don't die
499 - export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
500 - # Enable parallel testing, auto will try to detect number of cores
501 - # You may set this by hand.
502 - # The default maximum is 8 unless MTR_MAX_PARALLEL is increased
503 - export MTR_PARALLEL="${MTR_PARALLEL:-auto}"
504 -
505 - # create directories because mysqladmin might right out of order
506 - mkdir -p "${T}"/var-tests{,/log}
507 -
508 - # create symlink for the tests to find mysql_tzinfo_to_sql
509 - ln -s "${BUILD_DIR}/sql/mysql_tzinfo_to_sql" "${S}/sql/"
510 -
511 - touch "${T}/disabled.def"
512 - # These are failing in MySQL 5.5/5.6 for now and are believed to be
513 - # false positives:
514 - #
515 - # main.information_schema, binlog.binlog_statement_insert_delayed,
516 - # main.mysqld--help-notwin, funcs_1.is_triggers funcs_1.is_tables_mysql,
517 - # funcs_1.is_columns_mysql, binlog.binlog_mysqlbinlog_filter,
518 - # perfschema.binlog_edge_mix, perfschema.binlog_edge_stmt,
519 - # mysqld--help-notwin, funcs_1.is_triggers, funcs_1.is_tables_mysql, funcs_1.is_columns_mysql
520 - # perfschema.binlog_edge_stmt, perfschema.binlog_edge_mix, binlog.binlog_mysqlbinlog_filter
521 - # fails due to USE=-latin1 / utf8 default
522 - #
523 - # main.mysql_client_test:
524 - # segfaults at random under Portage only, suspect resource limits.
525 - #
526 - for t in \
527 - binlog.binlog_mysqlbinlog_filter \
528 - binlog.binlog_statement_insert_delayed \
529 - funcs_1.is_columns_mysql \
530 - funcs_1.is_tables_mysql \
531 - funcs_1.is_triggers \
532 - main.information_schema \
533 - main.mysqld--help-notwinfuncs_1.is_triggers \
534 - main.mysql_client_test \
535 - mysqld--help-notwin \
536 - main.mysqlhotcopy_archive main.mysqlhotcopy_myisam \
537 - perfschema.binlog_edge_mix \
538 - perfschema.binlog_edge_stmt \
539 - rpl.rpl_plugin_load main.mysql \
540 - main.mysql_upgrade \
541 - ; do
542 - _disable_test "$t" "False positives in Gentoo"
543 - done
544 - # ndb.ndbinfo, ndb_binlog.ndb_binlog_index: latin1/utf8
545 - for t in \
546 - ndb.ndbinfo ndb.ndb_tools_connect \
547 - ndb_binlog.ndb_binlog_index ; do
548 - _disable_test "$t" "False positives in Gentoo (NDB) (Latin1/UTF8)"
549 - done
550 -
551 - # Set file limits higher so tests run
552 - ulimit -n 3000
553 -
554 - # Run mysql tests
555 - pushd "${TESTDIR}" > /dev/null || die
556 -
557 - # run mysql-test tests
558 - perl mysql-test-run.pl --force --vardir="${T}/var-tests" \
559 - --suite-timeout=5000 --reorder --skip-test-list="${T}/disabled.def" \
560 - --nounit-tests
561 - retstatus_tests=$?
562 -
563 - popd > /dev/null || die
564 -
565 - # Cleanup is important for these testcases.
566 - pkill -9 -f "${S}/ndb" 2>/dev/null
567 - pkill -9 -f "${S}/sql" 2>/dev/null
568 -
569 - failures=""
570 - [[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
571 - [[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
572 - has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
573 -
574 - [[ -z "$failures" ]] || die "Test failures: $failures"
575 - einfo "Tests successfully completed"
576 -
577 - else
578 -
579 - einfo "Skipping server tests due to minimal build."
580 - fi
581 -}