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/mysql/
Date: Sat, 28 Oct 2017 18:11:28
Message-Id: 1509214255.08ee873f815dc39d2fa0895695643ffc8f557289.whissi@gentoo
1 commit: 08ee873f815dc39d2fa0895695643ffc8f557289
2 Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
3 AuthorDate: Sat Oct 28 18:08:55 2017 +0000
4 Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
5 CommitDate: Sat Oct 28 18:10:55 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=08ee873f
7
8 dev-db/mysql: Security cleanup (bug #635706)
9
10 Package-Manager: Portage-2.3.13, Repoman-2.3.4
11
12 dev-db/mysql/mysql-5.6.36.ebuild | 177 -------------------------------------
13 dev-db/mysql/mysql-5.6.37.ebuild | 183 ---------------------------------------
14 2 files changed, 360 deletions(-)
15
16 diff --git a/dev-db/mysql/mysql-5.6.36.ebuild b/dev-db/mysql/mysql-5.6.36.ebuild
17 deleted file mode 100644
18 index 3ced3a4395b..00000000000
19 --- a/dev-db/mysql/mysql-5.6.36.ebuild
20 +++ /dev/null
21 @@ -1,177 +0,0 @@
22 -# Copyright 1999-2017 Gentoo Foundation
23 -# Distributed under the terms of the GNU General Public License v2
24 -
25 -EAPI="6"
26 -
27 -MY_EXTRAS_VER="20170302-1359Z"
28 -MY_PV="${PV//_alpha_pre/-m}"
29 -MY_PV="${MY_PV//_/-}"
30 -HAS_TOOLS_PATCH="1"
31 -SUBSLOT="18"
32 -
33 -inherit mysql-multilib-r1
34 -# only to make repoman happy. it is really set in the eclass
35 -IUSE="$IUSE"
36 -
37 -# REMEMBER: also update eclass/mysql*.eclass before committing!
38 -KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
39 -
40 -DEPEND="|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )"
41 -RDEPEND="${RDEPEND}"
42 -
43 -MY_PATCH_DIR="${WORKDIR}/mysql-extras-${MY_EXTRAS_VER}"
44 -
45 -PATCHES=(
46 - "${MY_PATCH_DIR}"/01050_all_mysql_config_cleanup-5.6.patch
47 - "${MY_PATCH_DIR}"/02040_all_embedded-library-shared-5.5.10.patch
48 - "${MY_PATCH_DIR}"/20006_all_cmake_elib-mysql-5.6.35.patch
49 - "${MY_PATCH_DIR}"/20007_all_cmake-debug-werror-5.6.22.patch
50 - "${MY_PATCH_DIR}"/20008_all_mysql-tzinfo-symlink.patch
51 - "${MY_PATCH_DIR}"/20009_all_mysql_myodbc_symbol_fix-5.6.patch
52 - "${MY_PATCH_DIR}"/20018_all_mysql-5.6.25-without-clientlibs-tools.patch
53 -)
54 -
55 -# Please do not add a naive src_unpack to this ebuild
56 -# If you want to add a single patch, copy the ebuild to an overlay
57 -# and create your own mysql-extras tarball, looking at 000_index.txt
58 -
59 -# validate_password plugin uses exceptions when it shouldn't yet (until 5.7)
60 -# disable until we see what happens with it
61 -MYSQL_CMAKE_NATIVE_DEFINES=( -DWITHOUT_VALIDATE_PASSWORD=1 )
62 -
63 -src_prepare() {
64 - mysql-multilib-r1_src_prepare
65 - if use libressl ; then
66 - sed -i 's/OPENSSL_MAJOR_VERSION STREQUAL "1"/OPENSSL_MAJOR_VERSION STREQUAL "2"/' \
67 - "${S}/cmake/ssl.cmake" || die
68 - fi
69 -}
70 -
71 -# Official test instructions:
72 -# USE='server embedded extraengine perl openssl static-libs' \
73 -# FEATURES='test userpriv -usersandbox' \
74 -# ebuild mysql-X.X.XX.ebuild \
75 -# digest clean package
76 -multilib_src_test() {
77 -
78 - if ! multilib_is_native_abi ; then
79 - einfo "Server tests not available on non-native abi".
80 - return 0;
81 - fi
82 -
83 - local TESTDIR="${BUILD_DIR}/mysql-test"
84 - local retstatus_unit
85 - local retstatus_tests
86 -
87 - # Bug #213475 - MySQL _will_ object strenously if your machine is named
88 - # localhost. Also causes weird failures.
89 - [[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
90 -
91 - if use server ; then
92 -
93 - if [[ $UID -eq 0 ]]; then
94 - die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
95 - fi
96 - has usersandbox $FEATURES && ewarn "Some tests may fail with FEATURES=usersandbox"
97 -
98 - einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
99 -
100 - # Run CTest (test-units)
101 - cmake-utils_src_test
102 - retstatus_unit=$?
103 -
104 - # Ensure that parallel runs don't die
105 - export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
106 - # Enable parallel testing, auto will try to detect number of cores
107 - # You may set this by hand.
108 - # The default maximum is 8 unless MTR_MAX_PARALLEL is increased
109 - export MTR_PARALLEL="${MTR_PARALLEL:-auto}"
110 -
111 - # create directories because mysqladmin might right out of order
112 - mkdir -p "${T}"/var-tests{,/log}
113 -
114 - # create symlink for the tests to find mysql_tzinfo_to_sql
115 - ln -s "${BUILD_DIR}/sql/mysql_tzinfo_to_sql" "${S}/sql/"
116 -
117 - # These are failing in MySQL 5.5/5.6 for now and are believed to be
118 - # false positives:
119 - #
120 - # main.information_schema, binlog.binlog_statement_insert_delayed,
121 - # funcs_1.is_triggers funcs_1.is_tables_mysql,
122 - # funcs_1.is_columns_mysql, binlog.binlog_mysqlbinlog_filter,
123 - # perfschema.binlog_edge_mix, perfschema.binlog_edge_stmt,
124 - # mysqld--help-notwin, funcs_1.is_triggers, funcs_1.is_tables_mysql, funcs_1.is_columns_mysql
125 - # perfschema.binlog_edge_stmt, perfschema.binlog_edge_mix, binlog.binlog_mysqlbinlog_filter
126 - # fails due to USE=-latin1 / utf8 default
127 - #
128 - # main.mysql_client_test:
129 - # segfaults at random under Portage only, suspect resource limits.
130 - #
131 - # rpl.rpl_plugin_load
132 - # fails due to included file not listed in expected result
133 - # appears to be poor planning
134 - #
135 - # main.mysqlhotcopy_archive main.mysqlhotcopy_myisam
136 - # fails due to bad cleanup of previous tests when run in parallel
137 - # The tool is deprecated anyway
138 - # Bug 532288
139 - #
140 - # main.events_2
141 - # Fails on date in past without preserve causing the drop to fail
142 -
143 - for t in \
144 - binlog.binlog_mysqlbinlog_filter \
145 - binlog.binlog_statement_insert_delayed \
146 - funcs_1.is_columns_mysql \
147 - funcs_1.is_tables_mysql \
148 - funcs_1.is_triggers \
149 - main.information_schema \
150 - main.mysql_client_test \
151 - main.mysqld--help-notwin \
152 - perfschema.binlog_edge_mix \
153 - perfschema.binlog_edge_stmt \
154 - rpl.rpl_plugin_load \
155 - main.mysqlhotcopy_archive main.mysqlhotcopy_myisam \
156 - main.events_2 \
157 - ; do
158 - mysql-multilib-r1_disable_test "$t" "False positives in Gentoo"
159 - done
160 -
161 - if ! use extraengine ; then
162 - # bug 401673, 530766
163 - for t in federated.federated_plugin ; do
164 - mysql-multilib-r1_disable_test "$t" "Test $t requires USE=extraengine (Need federated engine)"
165 - done
166 - fi
167 -
168 - # Run mysql tests
169 - pushd "${TESTDIR}"
170 -
171 - # Set file limits higher so tests run
172 - ulimit -n 3000
173 -
174 - # run mysql-test tests
175 - perl mysql-test-run.pl --force --vardir="${T}/var-tests" \
176 - --suite-timeout=5000 --reorder
177 - retstatus_tests=$?
178 -# [[ $retstatus_tests -eq 0 ]] || eerror "tests failed"
179 -# has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
180 -
181 - popd
182 -
183 - # Cleanup is important for these testcases.
184 - pkill -9 -f "${S}/ndb" 2>/dev/null
185 - pkill -9 -f "${S}/sql" 2>/dev/null
186 -
187 - failures=""
188 - [[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
189 - [[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
190 -# has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
191 -
192 - [[ -z "$failures" ]] || die "Test failures: $failures"
193 - einfo "Tests successfully completed"
194 -
195 - else
196 - einfo "Skipping server tests due to minimal build."
197 - fi
198 -}
199
200 diff --git a/dev-db/mysql/mysql-5.6.37.ebuild b/dev-db/mysql/mysql-5.6.37.ebuild
201 deleted file mode 100644
202 index 016e3491ecf..00000000000
203 --- a/dev-db/mysql/mysql-5.6.37.ebuild
204 +++ /dev/null
205 @@ -1,183 +0,0 @@
206 -# Copyright 1999-2017 Gentoo Foundation
207 -# Distributed under the terms of the GNU General Public License v2
208 -
209 -EAPI="6"
210 -
211 -MY_EXTRAS_VER="20170719-1335Z"
212 -MY_PV="${PV//_alpha_pre/-m}"
213 -MY_PV="${MY_PV//_/-}"
214 -HAS_TOOLS_PATCH="1"
215 -SUBSLOT="18"
216 -#fails to build with ninja
217 -CMAKE_MAKEFILE_GENERATOR=emake
218 -
219 -inherit mysql-multilib-r1
220 -# only to make repoman happy. it is really set in the eclass
221 -IUSE="$IUSE"
222 -
223 -# REMEMBER: also update eclass/mysql*.eclass before committing!
224 -KEYWORDS="~alpha amd64 arm ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
225 -
226 -DEPEND="|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )"
227 -RDEPEND="${RDEPEND}"
228 -
229 -MY_PATCH_DIR="${WORKDIR}/mysql-extras-${MY_EXTRAS_VER}"
230 -
231 -PATCHES=(
232 - "${MY_PATCH_DIR}"/01050_all_mysql_config_cleanup-5.6.patch
233 - "${MY_PATCH_DIR}"/02040_all_embedded-library-shared-5.5.10.patch
234 - "${MY_PATCH_DIR}"/20006_all_cmake_elib-mysql-5.6.35.patch
235 - "${MY_PATCH_DIR}"/20007_all_cmake-debug-werror-5.6.22.patch
236 - "${MY_PATCH_DIR}"/20008_all_mysql-tzinfo-symlink-5.6.37.patch
237 - "${MY_PATCH_DIR}"/20009_all_mysql_myodbc_symbol_fix-5.6.patch
238 - "${MY_PATCH_DIR}"/20018_all_mysql-5.6.25-without-clientlibs-tools.patch
239 -)
240 -
241 -# Please do not add a naive src_unpack to this ebuild
242 -# If you want to add a single patch, copy the ebuild to an overlay
243 -# and create your own mysql-extras tarball, looking at 000_index.txt
244 -
245 -# validate_password plugin uses exceptions when it shouldn't yet (until 5.7)
246 -# disable until we see what happens with it
247 -MYSQL_CMAKE_NATIVE_DEFINES=( -DWITHOUT_VALIDATE_PASSWORD=1 )
248 -
249 -src_prepare() {
250 - mysql-multilib-r1_src_prepare
251 - if use libressl ; then
252 - sed -i 's/OPENSSL_MAJOR_VERSION STREQUAL "1"/OPENSSL_MAJOR_VERSION STREQUAL "2"/' \
253 - "${S}/cmake/ssl.cmake" || die
254 - fi
255 -}
256 -
257 -# Official test instructions:
258 -# USE='server embedded extraengine perl openssl static-libs' \
259 -# FEATURES='test userpriv -usersandbox' \
260 -# ebuild mysql-X.X.XX.ebuild \
261 -# digest clean package
262 -multilib_src_test() {
263 -
264 - if ! multilib_is_native_abi ; then
265 - einfo "Server tests not available on non-native abi".
266 - return 0;
267 - fi
268 -
269 - local TESTDIR="${BUILD_DIR}/mysql-test"
270 - local retstatus_unit
271 - local retstatus_tests
272 -
273 - # Bug #213475 - MySQL _will_ object strenously if your machine is named
274 - # localhost. Also causes weird failures.
275 - [[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
276 -
277 - if use server ; then
278 -
279 - if [[ $UID -eq 0 ]]; then
280 - die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
281 - fi
282 - has usersandbox $FEATURES && ewarn "Some tests may fail with FEATURES=usersandbox"
283 -
284 - einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
285 -
286 - # Run CTest (test-units)
287 - cmake-utils_src_test
288 - retstatus_unit=$?
289 -
290 - # Ensure that parallel runs don't die
291 - export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
292 - # Enable parallel testing, auto will try to detect number of cores
293 - # You may set this by hand.
294 - # The default maximum is 8 unless MTR_MAX_PARALLEL is increased
295 - export MTR_PARALLEL="${MTR_PARALLEL:-auto}"
296 -
297 - # create directories because mysqladmin might right out of order
298 - mkdir -p "${T}"/var-tests{,/log}
299 -
300 - # create symlink for the tests to find mysql_tzinfo_to_sql
301 - ln -s "${BUILD_DIR}/sql/mysql_tzinfo_to_sql" "${S}/sql/"
302 -
303 - # These are failing in MySQL 5.5/5.6 for now and are believed to be
304 - # false positives:
305 - #
306 - # main.information_schema, binlog.binlog_statement_insert_delayed,
307 - # funcs_1.is_triggers funcs_1.is_tables_mysql,
308 - # funcs_1.is_columns_mysql, binlog.binlog_mysqlbinlog_filter,
309 - # perfschema.binlog_edge_mix, perfschema.binlog_edge_stmt,
310 - # mysqld--help-notwin, funcs_1.is_triggers, funcs_1.is_tables_mysql, funcs_1.is_columns_mysql
311 - # perfschema.binlog_edge_stmt, perfschema.binlog_edge_mix, binlog.binlog_mysqlbinlog_filter
312 - # fails due to USE=-latin1 / utf8 default
313 - #
314 - # main.mysql_client_test:
315 - # segfaults at random under Portage only, suspect resource limits.
316 - #
317 - # rpl.rpl_plugin_load
318 - # fails due to included file not listed in expected result
319 - # appears to be poor planning
320 - #
321 - # main.mysqlhotcopy_archive main.mysqlhotcopy_myisam
322 - # fails due to bad cleanup of previous tests when run in parallel
323 - # The tool is deprecated anyway
324 - # Bug 532288
325 - #
326 - # main.events_2
327 - # Fails on date in past without preserve causing the drop to fail
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.mysql_client_test \
337 - main.mysqld--help-notwin \
338 - perfschema.binlog_edge_mix \
339 - perfschema.binlog_edge_stmt \
340 - rpl.rpl_plugin_load \
341 - main.mysqlhotcopy_archive main.mysqlhotcopy_myisam \
342 - main.events_2 \
343 - ; do
344 - mysql-multilib-r1_disable_test "$t" "False positives in Gentoo"
345 - done
346 -
347 - if ! use extraengine ; then
348 - # bug 401673, 530766
349 - for t in federated.federated_plugin ; do
350 - mysql-multilib-r1_disable_test "$t" "Test $t requires USE=extraengine (Need federated engine)"
351 - done
352 - fi
353 -
354 - for t in main.mysql main.mysql_upgrade ; do
355 - mysql-multilib-r1_disable_test "$t" "Test $t broken upstream - error return value not updated"
356 - done
357 -
358 - # Run mysql tests
359 - pushd "${TESTDIR}"
360 -
361 - # Set file limits higher so tests run
362 - ulimit -n 3000
363 -
364 - # run mysql-test tests
365 - perl mysql-test-run.pl --force --vardir="${T}/var-tests" \
366 - --suite-timeout=5000 --reorder
367 - retstatus_tests=$?
368 -# [[ $retstatus_tests -eq 0 ]] || eerror "tests failed"
369 -# has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
370 -
371 - popd
372 -
373 - # Cleanup is important for these testcases.
374 - pkill -9 -f "${S}/ndb" 2>/dev/null
375 - pkill -9 -f "${S}/sql" 2>/dev/null
376 -
377 - failures=""
378 - [[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
379 - [[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
380 -# has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
381 -
382 - [[ -z "$failures" ]] || die "Test failures: $failures"
383 - einfo "Tests successfully completed"
384 -
385 - else
386 - einfo "Skipping server tests due to minimal build."
387 - fi
388 -}