summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Evans <grknight@gentoo.org>2017-11-09 08:47:01 -0500
committerBrian Evans <grknight@gentoo.org>2017-11-09 08:47:01 -0500
commit3fbbe7f7b2fe34873809e9786d4967f98296852f (patch)
tree5c00098e9d12fcdb9dbd6a7e355e5a0ce58c8fe8
parentdev-vcs/hg-git: x86 stable (bug #626954) (diff)
downloadgentoo-3fbbe7f7b2fe34873809e9786d4967f98296852f.tar.gz
gentoo-3fbbe7f7b2fe34873809e9786d4967f98296852f.tar.bz2
gentoo-3fbbe7f7b2fe34873809e9786d4967f98296852f.zip
dev-db/mysql-cluster: Version bump for 7.4.17
Package-Manager: Portage-2.3.13, Repoman-2.3.4
-rw-r--r--dev-db/mysql-cluster/Manifest1
-rw-r--r--dev-db/mysql-cluster/metadata.xml2
-rw-r--r--dev-db/mysql-cluster/mysql-cluster-7.4.17.ebuild162
3 files changed, 165 insertions, 0 deletions
diff --git a/dev-db/mysql-cluster/Manifest b/dev-db/mysql-cluster/Manifest
index 114b9619b265..5c29d7baf6d1 100644
--- a/dev-db/mysql-cluster/Manifest
+++ b/dev-db/mysql-cluster/Manifest
@@ -1,3 +1,4 @@
DIST mysql-cluster-gpl-7.2.31.tar.gz 25109340 SHA256 d798180114d8c1966abb86c798fc8230d50df478e73f1e2c6fbdb7ffb4cdd9ba SHA512 ab6a7ad2bb981e8351d1d337eb0a75ad952da6f100a6c17a02c629936c4a3bad5701ead6ccf9b912ba0412d3442b6ad87c8e0c5409b84f10af8ec86a7c44b881 WHIRLPOOL c53a32c42f0a3c0c8848d20fa4d66f778926221ef381c8a26ccb60c07126a55af8c77f712cd71462b8345367c3c9e3d03b2b83b06f68b5bddd046328d755965b
DIST mysql-cluster-gpl-7.3.19.tar.gz 41340089 SHA256 53b6692d25ad85772c19593f8b098c9ad26b7d8acd4a74db5f8308567e214aad SHA512 2d12124ec6b7ffa904538f21b676b15e093b3720d067b6eaffe609310ffd6261308ddcfbba4ce259f73d8e905f96bdcd21c5b7ec8fb940d2e9a8ec64c0f397a3 WHIRLPOOL 308ccc771acc72ec9558510edb5491a775a76afb5455cf98f942229d3d706a087aa38d97beb9bc2acbe3248c10893841764f08fdcb29ca47ca830c8c661cf369
+DIST mysql-cluster-gpl-7.4.17.tar.gz 41691695 SHA256 f1966c721c7ed83b59f9ae2cc5e4df56071e358907deef2329d579d5c03601b1 SHA512 eaeab8b4c62e4b503210c269cf3147cb1fd3690e9bdb291a6bb46c874adf958166ccdf5b8766a09ec14d7fd63e3aff3e4b1f1527201e50e86e588507aa01767f WHIRLPOOL 1ad8b4b48ff4e4d0e5ada9f14c5d1fb4a23d8c211121ccc53f20051dfcecb0463d45c2b24178d87174f0950db6bb606e259144c4f1f9052759865644a9277f5a
DIST mysql-extras-20171108-2050Z.tar.bz2 313241 SHA256 a8ae0806728f5308f96fe07fe2348b9c72629968e6480ae45995ca0a3693b9aa SHA512 830e6bac6fcead4b2d9649f6aaf6ec6573f86ce3c1a8bc1be6c89a408d69bfb81136baa7273d4449688d683b832880c2470970cd737c2b07cc7a1c2ce9c5a0b6 WHIRLPOOL 7ea7aabe9fc93418297522529c2fb0cfe43c7c28019000c25e100838e8ac545cab0611a08f2931157b99acee9704c441832e037c28232079e57a0718ddb4591c
diff --git a/dev-db/mysql-cluster/metadata.xml b/dev-db/mysql-cluster/metadata.xml
index 9dc67c64a895..0efe3d7675fa 100644
--- a/dev-db/mysql-cluster/metadata.xml
+++ b/dev-db/mysql-cluster/metadata.xml
@@ -16,7 +16,9 @@
<flag name="openssl">Enable SSL connections and crypto functions using <pkg>dev-libs/openssl</pkg></flag>
<flag name="max-idx-128">Raise the max index per table limit from 64 to 128</flag>
<flag name="minimal">Install client programs only, no server</flag>
+ <flag name="numa">Enable NUMA support using <pkg>sys-process/numactl</pkg> (NUMA kernel support is also required)</flag>
<flag name="profiling">Add support for statement profiling (requires USE=community).</flag>
+ <flag name="server">Build the server program</flag>
<flag name="systemtap">Build support for profiling and tracing using <pkg>dev-util/systemtap</pkg></flag>
<flag name="test">Install upstream testsuites for end use.</flag>
<flag name="yassl">Enable SSL connections and crypto functions using the bundled yaSSL</flag>
diff --git a/dev-db/mysql-cluster/mysql-cluster-7.4.17.ebuild b/dev-db/mysql-cluster/mysql-cluster-7.4.17.ebuild
new file mode 100644
index 000000000000..f7d2b65e0eb7
--- /dev/null
+++ b/dev-db/mysql-cluster/mysql-cluster-7.4.17.ebuild
@@ -0,0 +1,162 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+MY_EXTRAS_VER="20171108-2050Z"
+SUBSLOT="18"
+MYSQL_PV_MAJOR="5.6"
+#fails to build with ninja
+CMAKE_MAKEFILE_GENERATOR=emake
+
+inherit mysql-multilib-r1
+# only to make repoman happy. it is really set in the eclass
+IUSE="$IUSE numa"
+
+# REMEMBER: also update eclass/mysql*.eclass before committing!
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 ) numa? ( sys-process/numactl )"
+RDEPEND="!media-sound/amarok[embedded] numa? ( sys-process/numactl )"
+
+MY_PATCH_DIR="${WORKDIR}/mysql-extras-${MY_EXTRAS_VER}"
+
+PATCHES=(
+ "${MY_PATCH_DIR}"/01050_all_mysql_config_cleanup-5.6.patch
+ "${MY_PATCH_DIR}"/02040_all_embedded-library-shared-5.5.10.patch
+ "${MY_PATCH_DIR}"/20007_all_cmake-debug-werror-5.6.22.patch
+ "${MY_PATCH_DIR}"/20009_all_mysql_myodbc_symbol_fix-5.6.patch
+# "${MY_PATCH_DIR}"/20018_all_mysql-5.6.25-without-clientlibs-tools.patch
+ "${MY_PATCH_DIR}"/20027_all_mysql-5.5-perl5.26-includes.patch
+ "${MY_PATCH_DIR}"/30000_all_mysql-cluster-multilib-property.patch
+)
+
+# Please do not add a naive src_unpack to this ebuild
+# If you want to add a single patch, copy the ebuild to an overlay
+# and create your own mysql-extras tarball, looking at 000_index.txt
+
+src_prepare() {
+ mysql-multilib-r1_src_prepare
+ if use libressl ; then
+ sed -i 's/OPENSSL_MAJOR_VERSION STREQUAL "1"/OPENSSL_MAJOR_VERSION STREQUAL "2"/' \
+ "${S}/cmake/ssl.cmake" || die
+ fi
+}
+
+src_configure() {
+ # validate_password plugin uses exceptions when it shouldn't yet (until 5.7)
+ # disable until we see what happens with it
+ local MYSQL_CMAKE_NATIVE_DEFINES=( -DWITHOUT_VALIDATE_PASSWORD=1 -DWITH_NUMA=$(usex numa ON OFF) )
+ mysql-multilib-r1_src_configure
+}
+
+# Official test instructions:
+# USE='extraengine perl openssl' \
+# FEATURES='test userpriv -usersandbox' \
+# ebuild mysql-cluster-X.X.XX.ebuild \
+# digest clean package
+multilib_src_test() {
+
+ if ! multilib_is_native_abi ; then
+ einfo "Server tests not available on non-native abi".
+ return 0;
+ fi
+
+ local TESTDIR="${CMAKE_BUILD_DIR}/mysql-test"
+ local retstatus_unit
+ local retstatus_tests
+
+ # Bug #213475 - MySQL _will_ object strenously if your machine is named
+ # localhost. Also causes weird failures.
+ [[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
+
+ if use server ; then
+
+ if [[ $UID -eq 0 ]]; then
+ die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
+ fi
+ has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
+
+ einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
+
+ # Ensure that parallel runs don't die
+ export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
+ # Enable parallel testing, auto will try to detect number of cores
+ # You may set this by hand.
+ # The default maximum is 8 unless MTR_MAX_PARALLEL is increased
+ export MTR_PARALLEL="${MTR_PARALLEL:-auto}"
+
+ # create directories because mysqladmin might right out of order
+ mkdir -p "${T}"/var-tests{,/log}
+
+ # create symlink for the tests to find mysql_tzinfo_to_sql
+ ln -s "${BUILD_DIR}/sql/mysql_tzinfo_to_sql" "${S}/sql/"
+
+ # These are failing in MySQL 5.5/5.6 for now and are believed to be
+ # false positives:
+ #
+ # main.information_schema, binlog.binlog_statement_insert_delayed,
+ # main.mysqld--help-notwin, funcs_1.is_triggers funcs_1.is_tables_mysql,
+ # funcs_1.is_columns_mysql, binlog.binlog_mysqlbinlog_filter,
+ # perfschema.binlog_edge_mix, perfschema.binlog_edge_stmt,
+ # mysqld--help-notwin, funcs_1.is_triggers, funcs_1.is_tables_mysql, funcs_1.is_columns_mysql
+ # perfschema.binlog_edge_stmt, perfschema.binlog_edge_mix, binlog.binlog_mysqlbinlog_filter
+ # fails due to USE=-latin1 / utf8 default
+ #
+ # main.mysql_client_test:
+ # segfaults at random under Portage only, suspect resource limits.
+ #
+ for t in \
+ binlog.binlog_mysqlbinlog_filter \
+ binlog.binlog_statement_insert_delayed \
+ funcs_1.is_columns_mysql \
+ funcs_1.is_tables_mysql \
+ funcs_1.is_triggers \
+ main.information_schema \
+ main.mysqld--help-notwinfuncs_1.is_triggers \
+ main.mysql_client_test \
+ mysqld--help-notwin \
+ main.mysqlhotcopy_archive main.mysqlhotcopy_myisam \
+ perfschema.binlog_edge_mix \
+ perfschema.binlog_edge_stmt \
+ rpl.rpl_plugin_load ndb.ndb_tools_connect main.mysql \
+ main.mysql_upgrade unit_tests \
+ ; do
+ mysql-multilib-r1_disable_test "$t" "False positives in Gentoo"
+ done
+ # ndb.ndbinfo, ndb_binlog.ndb_binlog_index: latin1/utf8
+ for t in \
+ ndb.ndbinfo \
+ ndb_binlog.ndb_binlog_index ; do
+ mysql-multilib-r1_disable_test "$t" "False positives in Gentoo (NDB)"
+ done
+
+ # Set file limits higher so tests run
+ ulimit -n 3000
+
+ # Run mysql tests
+ pushd "${TESTDIR}" > /dev/null || die
+
+ # run mysql-test tests
+ perl mysql-test-run.pl --force --vardir="${T}/var-tests" \
+ --suite-timeout=5000 --reorder
+ retstatus_tests=$?
+
+ popd > /dev/null || die
+
+ # Cleanup is important for these testcases.
+ pkill -9 -f "${S}/ndb" 2>/dev/null
+ pkill -9 -f "${S}/sql" 2>/dev/null
+
+ failures=""
+ [[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
+ [[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
+ has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
+
+ [[ -z "$failures" ]] || die "Test failures: $failures"
+ einfo "Tests successfully completed"
+
+ else
+
+ einfo "Skipping server tests due to minimal build."
+ fi
+}