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: Fri, 10 Nov 2017 20:33:45
Message-Id: 1510346000.c19a2c08d57e727da20c625d82658875151920b6.grknight@gentoo
1 commit: c19a2c08d57e727da20c625d82658875151920b6
2 Author: Brian Evans <grknight <AT> gentoo <DOT> org>
3 AuthorDate: Fri Nov 10 20:33:20 2017 +0000
4 Commit: Brian Evans <grknight <AT> gentoo <DOT> org>
5 CommitDate: Fri Nov 10 20:33:20 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c19a2c08
7
8 dev-db/mysql-cluster: Fix build issues and tests
9
10 The conversion to mysql-multilib-r1 was incomplete with the
11 required java eclasses
12
13 Closes: https://bugs.gentoo.org/637068
14 Package-Manager: Portage-2.3.13, Repoman-2.3.4
15
16 dev-db/mysql-cluster/mysql-cluster-7.4.17.ebuild | 49 ++++++++++++++++++------
17 1 file changed, 38 insertions(+), 11 deletions(-)
18
19 diff --git a/dev-db/mysql-cluster/mysql-cluster-7.4.17.ebuild b/dev-db/mysql-cluster/mysql-cluster-7.4.17.ebuild
20 index f7d2b65e0eb..01e3c5a9412 100644
21 --- a/dev-db/mysql-cluster/mysql-cluster-7.4.17.ebuild
22 +++ b/dev-db/mysql-cluster/mysql-cluster-7.4.17.ebuild
23 @@ -8,15 +8,15 @@ MYSQL_PV_MAJOR="5.6"
24 #fails to build with ninja
25 CMAKE_MAKEFILE_GENERATOR=emake
26
27 -inherit mysql-multilib-r1
28 +inherit java-utils-2 mysql-multilib-r1
29 # only to make repoman happy. it is really set in the eclass
30 IUSE="$IUSE numa"
31
32 # REMEMBER: also update eclass/mysql*.eclass before committing!
33 KEYWORDS="~amd64 ~x86"
34 -
35 -DEPEND="|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 ) numa? ( sys-process/numactl )"
36 -RDEPEND="!media-sound/amarok[embedded] numa? ( sys-process/numactl )"
37 +COMMON_DEPEND="numa? ( sys-process/numactl ) dev-libs/libevent:0= ${JAVA_PKG_E_DEPEND}"
38 +DEPEND="${COMMON_DEPEND} || ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 ) >=virtual/jdk-1.6"
39 +RDEPEND="${COMMON_DEPEND} !media-sound/amarok[embedded] >=virtual/jre-1.6"
40
41 MY_PATCH_DIR="${WORKDIR}/mysql-extras-${MY_EXTRAS_VER}"
42
43 @@ -30,12 +30,20 @@ PATCHES=(
44 "${MY_PATCH_DIR}"/30000_all_mysql-cluster-multilib-property.patch
45 )
46
47 +MULTILIB_WRAPPED_HEADERS+=( /usr/include/mysql/storage/ndb/ndb_types.h )
48 +
49 # Please do not add a naive src_unpack to this ebuild
50 # If you want to add a single patch, copy the ebuild to an overlay
51 # and create your own mysql-extras tarball, looking at 000_index.txt
52
53 +pkg_setup() {
54 + mysql-multilib-r1_pkg_setup
55 + java-pkg_init
56 +}
57 +
58 src_prepare() {
59 mysql-multilib-r1_src_prepare
60 + java-utils-2_src_prepare
61 if use libressl ; then
62 sed -i 's/OPENSSL_MAJOR_VERSION STREQUAL "1"/OPENSSL_MAJOR_VERSION STREQUAL "2"/' \
63 "${S}/cmake/ssl.cmake" || die
64 @@ -45,10 +53,19 @@ src_prepare() {
65 src_configure() {
66 # validate_password plugin uses exceptions when it shouldn't yet (until 5.7)
67 # disable until we see what happens with it
68 - local MYSQL_CMAKE_NATIVE_DEFINES=( -DWITHOUT_VALIDATE_PASSWORD=1 -DWITH_NUMA=$(usex numa ON OFF) )
69 + local MYSQL_CMAKE_NATIVE_DEFINES=(
70 + -DWITHOUT_VALIDATE_PASSWORD=1
71 + -DWITH_NUMA=$(usex numa ON OFF)
72 + -DWITH_NDBCLUSTER=1 -DWITH_PARTITION_STORAGE_ENGINE=1
73 + -DWITHOUT_PARTITION_STORAGE_ENGINE=0 )
74 mysql-multilib-r1_src_configure
75 }
76
77 +pkg_preinst() {
78 + java-utils-2_pkg_preinst
79 + mysql-multilib-r1_pkg_preinst
80 +}
81 +
82 # Official test instructions:
83 # USE='extraengine perl openssl' \
84 # FEATURES='test userpriv -usersandbox' \
85 @@ -61,6 +78,14 @@ multilib_src_test() {
86 return 0;
87 fi
88
89 + _disable_test() {
90 + local rawtestname reason
91 + rawtestname="${1}" ; shift
92 + reason="${@}"
93 + ewarn "test '${rawtestname}' disabled: '${reason}'"
94 + echo ${rawtestname} : ${reason} >> "${T}/disabled.def"
95 + }
96 +
97 local TESTDIR="${CMAKE_BUILD_DIR}/mysql-test"
98 local retstatus_unit
99 local retstatus_tests
100 @@ -91,6 +116,7 @@ multilib_src_test() {
101 # create symlink for the tests to find mysql_tzinfo_to_sql
102 ln -s "${BUILD_DIR}/sql/mysql_tzinfo_to_sql" "${S}/sql/"
103
104 + touch "${T}/disabled.def"
105 # These are failing in MySQL 5.5/5.6 for now and are believed to be
106 # false positives:
107 #
108 @@ -118,16 +144,16 @@ multilib_src_test() {
109 main.mysqlhotcopy_archive main.mysqlhotcopy_myisam \
110 perfschema.binlog_edge_mix \
111 perfschema.binlog_edge_stmt \
112 - rpl.rpl_plugin_load ndb.ndb_tools_connect main.mysql \
113 - main.mysql_upgrade unit_tests \
114 + rpl.rpl_plugin_load main.mysql \
115 + main.mysql_upgrade \
116 ; do
117 - mysql-multilib-r1_disable_test "$t" "False positives in Gentoo"
118 + _disable_test "$t" "False positives in Gentoo"
119 done
120 # ndb.ndbinfo, ndb_binlog.ndb_binlog_index: latin1/utf8
121 for t in \
122 - ndb.ndbinfo \
123 + ndb.ndbinfo ndb.ndb_tools_connect \
124 ndb_binlog.ndb_binlog_index ; do
125 - mysql-multilib-r1_disable_test "$t" "False positives in Gentoo (NDB)"
126 + _disable_test "$t" "False positives in Gentoo (NDB) (Latin1/UTF8)"
127 done
128
129 # Set file limits higher so tests run
130 @@ -138,7 +164,8 @@ multilib_src_test() {
131
132 # run mysql-test tests
133 perl mysql-test-run.pl --force --vardir="${T}/var-tests" \
134 - --suite-timeout=5000 --reorder
135 + --suite-timeout=5000 --reorder --skip-test-list="${T}/disabled.def" \
136 + --nounit-tests
137 retstatus_tests=$?
138
139 popd > /dev/null || die