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/
Date: Thu, 02 Mar 2017 14:48:57
Message-Id: 1488466117.39c2f2d4a6335fa23f2f179bf73fee982f4852a7.grknight@gentoo
1 commit: 39c2f2d4a6335fa23f2f179bf73fee982f4852a7
2 Author: Brian Evans <grknight <AT> gentoo <DOT> org>
3 AuthorDate: Thu Mar 2 14:48:37 2017 +0000
4 Commit: Brian Evans <grknight <AT> gentoo <DOT> org>
5 CommitDate: Thu Mar 2 14:48:37 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=39c2f2d4
7
8 dev-db/mysql: Revision bump to restore Gentoo patches
9
10 They were previously applied but lost in the transition to EAPI6
11
12 Package-Manager: Portage-2.3.3, Repoman-2.3.1
13
14 dev-db/mysql/Manifest | 1 +
15 dev-db/mysql/mysql-5.6.35-r1.ebuild | 177 ++++++++++++++++++++++++++++++++++++
16 2 files changed, 178 insertions(+)
17
18 diff --git a/dev-db/mysql/Manifest b/dev-db/mysql/Manifest
19 index a1fc29984fe..54082097429 100644
20 --- a/dev-db/mysql/Manifest
21 +++ b/dev-db/mysql/Manifest
22 @@ -2,3 +2,4 @@ DIST mysql-5.5.54.tar.gz 21041949 SHA256 273bcbcf8cc84061eb07c359308563b2029eb3f
23 DIST mysql-5.6.35.tar.gz 32167628 SHA256 dddcba169b98844d7c65346cbd791c853edf942d78440381685087b84aa35020 SHA512 106c4b05c52cd2bb5378376e4a453aeb55eda0adce527862c435068597c3e60f44e3c64476011befefd688e6fdf30f2245e28320d57d9fccbb2415d87498e7f2 WHIRLPOOL e8972bba163453e54dc3859a7cfd07b4dc38125e0b5f7b41940afa6f1466820079f18e88769ea198b12645383d105340ab5ea998b32a95d083d08689658510bc
24 DIST mysql-extras-20160212-0233Z.tar.bz2 297332 SHA256 01a52587ef1335b2795197d2e547c0b3a1e4b705db09f96cdfb45d2152b6536b SHA512 956dbdcb987556c0625944848f97a36d096cd1f1712a2e051dd027f2856d3c6e94a18d23faca71882260c4b12ee329e3a5f569443b877a3c3e5e88146bfac916 WHIRLPOOL e3837d329ddd137be60fe9d0b37f35ed2e0e7fe1383f38ee45617be288ae318a444e6befdfbaf64b07d4a88ec47fec5cd88d733ecd5bb32ce40f3ba8d09573cd
25 DIST mysql-extras-20170301-2020Z.tar.bz2 306195 SHA256 646eb75c838ac4241598cc0638877f50044ec702c82b1fc3ddefb99f1f4b3fae SHA512 b11b252d11b907e2b3be406e11b9a464092950696100afd575a2be78eac33251a9f56bf128b497beb8c801a2e5d02b11ad37ef78d25aed892a7aa90ca4c9581f WHIRLPOOL 466b18c388160d5c7557ed0e0bddc45eda823b0c1c490540fb61008da759b6559b6012593d7beb3de5123e247521ace925413abc28edd692585c282456d7fbf9
26 +DIST mysql-extras-20170302-1359Z.tar.bz2 306816 SHA256 0375bffa8a7b26caab3a13be299b30231f20ad3e8dc82fba9384e5463763a105 SHA512 2c096c68e0d545c98fb5520f92b9e85f6bbc910853793f60f0e67979ee927410bbecadece3400364fdc2b5682f9105664f6a2de8fa0ee1818fb266e063e82869 WHIRLPOOL 6629f0069b77c9add86f4a40168a1dad7bcc0ae18a513f05e44619366a5fdfb82238df2e925de88c358fca2dd50f162ffefd8efea335cb544ccdcf74e73ed25f
27
28 diff --git a/dev-db/mysql/mysql-5.6.35-r1.ebuild b/dev-db/mysql/mysql-5.6.35-r1.ebuild
29 new file mode 100644
30 index 00000000000..5b094bd6763
31 --- /dev/null
32 +++ b/dev-db/mysql/mysql-5.6.35-r1.ebuild
33 @@ -0,0 +1,177 @@
34 +# Copyright 1999-2017 Gentoo Foundation
35 +# Distributed under the terms of the GNU General Public License v2
36 +
37 +EAPI="6"
38 +
39 +MY_EXTRAS_VER="20170302-1359Z"
40 +MY_PV="${PV//_alpha_pre/-m}"
41 +MY_PV="${MY_PV//_/-}"
42 +HAS_TOOLS_PATCH="1"
43 +SUBSLOT="18"
44 +
45 +inherit mysql-multilib-r1
46 +# only to make repoman happy. it is really set in the eclass
47 +IUSE="$IUSE"
48 +
49 +# REMEMBER: also update eclass/mysql*.eclass before committing!
50 +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"
51 +
52 +DEPEND="|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )"
53 +RDEPEND="${RDEPEND}"
54 +
55 +MY_PATCH_DIR="${WORKDIR}/mysql-extras-${MY_EXTRAS_VER}"
56 +
57 +PATCHES=(
58 + "${MY_PATCH_DIR}"/01050_all_mysql_config_cleanup-5.6.patch
59 + "${MY_PATCH_DIR}"/02040_all_embedded-library-shared-5.5.10.patch
60 + "${MY_PATCH_DIR}"/20006_all_cmake_elib-mysql-5.6.35.patch
61 + "${MY_PATCH_DIR}"/20007_all_cmake-debug-werror-5.6.22.patch
62 + "${MY_PATCH_DIR}"/20008_all_mysql-tzinfo-symlink.patch
63 + "${MY_PATCH_DIR}"/20009_all_mysql_myodbc_symbol_fix-5.6.patch
64 + "${MY_PATCH_DIR}"/20018_all_mysql-5.6.25-without-clientlibs-tools.patch
65 +)
66 +
67 +# Please do not add a naive src_unpack to this ebuild
68 +# If you want to add a single patch, copy the ebuild to an overlay
69 +# and create your own mysql-extras tarball, looking at 000_index.txt
70 +
71 +# validate_password plugin uses exceptions when it shouldn't yet (until 5.7)
72 +# disable until we see what happens with it
73 +MYSQL_CMAKE_NATIVE_DEFINES=( -DWITHOUT_VALIDATE_PASSWORD=1 )
74 +
75 +src_prepare() {
76 + mysql-multilib-r1_src_prepare
77 + if use libressl ; then
78 + sed -i 's/OPENSSL_MAJOR_VERSION STREQUAL "1"/OPENSSL_MAJOR_VERSION STREQUAL "2"/' \
79 + "${S}/cmake/ssl.cmake" || die
80 + fi
81 +}
82 +
83 +# Official test instructions:
84 +# USE='server embedded extraengine perl openssl static-libs' \
85 +# FEATURES='test userpriv -usersandbox' \
86 +# ebuild mysql-X.X.XX.ebuild \
87 +# digest clean package
88 +multilib_src_test() {
89 +
90 + if ! multilib_is_native_abi ; then
91 + einfo "Server tests not available on non-native abi".
92 + return 0;
93 + fi
94 +
95 + local TESTDIR="${BUILD_DIR}/mysql-test"
96 + local retstatus_unit
97 + local retstatus_tests
98 +
99 + # Bug #213475 - MySQL _will_ object strenously if your machine is named
100 + # localhost. Also causes weird failures.
101 + [[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
102 +
103 + if use server ; then
104 +
105 + if [[ $UID -eq 0 ]]; then
106 + die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
107 + fi
108 + has usersandbox $FEATURES && ewarn "Some tests may fail with FEATURES=usersandbox"
109 +
110 + einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
111 +
112 + # Run CTest (test-units)
113 + cmake-utils_src_test
114 + retstatus_unit=$?
115 +
116 + # Ensure that parallel runs don't die
117 + export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
118 + # Enable parallel testing, auto will try to detect number of cores
119 + # You may set this by hand.
120 + # The default maximum is 8 unless MTR_MAX_PARALLEL is increased
121 + export MTR_PARALLEL="${MTR_PARALLEL:-auto}"
122 +
123 + # create directories because mysqladmin might right out of order
124 + mkdir -p "${T}"/var-tests{,/log}
125 +
126 + # create symlink for the tests to find mysql_tzinfo_to_sql
127 + ln -s "${BUILD_DIR}/sql/mysql_tzinfo_to_sql" "${S}/sql/"
128 +
129 + # These are failing in MySQL 5.5/5.6 for now and are believed to be
130 + # false positives:
131 + #
132 + # main.information_schema, binlog.binlog_statement_insert_delayed,
133 + # funcs_1.is_triggers funcs_1.is_tables_mysql,
134 + # funcs_1.is_columns_mysql, binlog.binlog_mysqlbinlog_filter,
135 + # perfschema.binlog_edge_mix, perfschema.binlog_edge_stmt,
136 + # mysqld--help-notwin, funcs_1.is_triggers, funcs_1.is_tables_mysql, funcs_1.is_columns_mysql
137 + # perfschema.binlog_edge_stmt, perfschema.binlog_edge_mix, binlog.binlog_mysqlbinlog_filter
138 + # fails due to USE=-latin1 / utf8 default
139 + #
140 + # main.mysql_client_test:
141 + # segfaults at random under Portage only, suspect resource limits.
142 + #
143 + # rpl.rpl_plugin_load
144 + # fails due to included file not listed in expected result
145 + # appears to be poor planning
146 + #
147 + # main.mysqlhotcopy_archive main.mysqlhotcopy_myisam
148 + # fails due to bad cleanup of previous tests when run in parallel
149 + # The tool is deprecated anyway
150 + # Bug 532288
151 + #
152 + # main.events_2
153 + # Fails on date in past without preserve causing the drop to fail
154 +
155 + for t in \
156 + binlog.binlog_mysqlbinlog_filter \
157 + binlog.binlog_statement_insert_delayed \
158 + funcs_1.is_columns_mysql \
159 + funcs_1.is_tables_mysql \
160 + funcs_1.is_triggers \
161 + main.information_schema \
162 + main.mysql_client_test \
163 + main.mysqld--help-notwin \
164 + perfschema.binlog_edge_mix \
165 + perfschema.binlog_edge_stmt \
166 + rpl.rpl_plugin_load \
167 + main.mysqlhotcopy_archive main.mysqlhotcopy_myisam \
168 + main.events_2 \
169 + ; do
170 + mysql-multilib-r1_disable_test "$t" "False positives in Gentoo"
171 + done
172 +
173 + if ! use extraengine ; then
174 + # bug 401673, 530766
175 + for t in federated.federated_plugin ; do
176 + mysql-multilib-r1_disable_test "$t" "Test $t requires USE=extraengine (Need federated engine)"
177 + done
178 + fi
179 +
180 + # Run mysql tests
181 + pushd "${TESTDIR}"
182 +
183 + # Set file limits higher so tests run
184 + ulimit -n 3000
185 +
186 + # run mysql-test tests
187 + perl mysql-test-run.pl --force --vardir="${T}/var-tests" \
188 + --suite-timeout=5000 --reorder
189 + retstatus_tests=$?
190 +# [[ $retstatus_tests -eq 0 ]] || eerror "tests failed"
191 +# has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
192 +
193 + popd
194 +
195 + # Cleanup is important for these testcases.
196 + pkill -9 -f "${S}/ndb" 2>/dev/null
197 + pkill -9 -f "${S}/sql" 2>/dev/null
198 +
199 + failures=""
200 + [[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
201 + [[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
202 +# has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
203 +
204 + [[ -z "$failures" ]] || die "Test failures: $failures"
205 + einfo "Tests successfully completed"
206 +
207 + else
208 + einfo "Skipping server tests due to minimal build."
209 + fi
210 +}