summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Evans <grknight@gentoo.org>2017-06-12 21:36:20 -0400
committerBrian Evans <grknight@gentoo.org>2017-06-12 21:36:20 -0400
commit0f8660f0f673e32220d296bcef9029862c54540d (patch)
tree84c851a885aed044e0eaa52911545cbf92320451
parentvirtual/libmysqlclient: Drop unused version 19 (diff)
downloadmysql-0f8660f0f673e32220d296bcef9029862c54540d.tar.gz
mysql-0f8660f0f673e32220d296bcef9029862c54540d.tar.bz2
mysql-0f8660f0f673e32220d296bcef9029862c54540d.zip
dev-db/mariadb: Restore jdbc and test functionality as it exists in 10.1
Package-Manager: Portage-2.3.6, Repoman-2.3.2 Manifest-Sign-Key: 0xD1F781EFF9F4A3B6
-rw-r--r--dev-db/mariadb/ChangeLog4
-rw-r--r--dev-db/mariadb/mariadb-10.2.6.ebuild178
-rw-r--r--dev-db/mariadb/metadata.xml1
3 files changed, 97 insertions, 86 deletions
diff --git a/dev-db/mariadb/ChangeLog b/dev-db/mariadb/ChangeLog
index f626c3d..31cbda1 100644
--- a/dev-db/mariadb/ChangeLog
+++ b/dev-db/mariadb/ChangeLog
@@ -2,6 +2,10 @@
# Copyright 1999-2017 Gentoo Foundation; Distributed under the GPL v2
# $Id$
+ 13 Jun 2017; Brian Evans <grknight@gentoo.org> mariadb-10.2.6.ebuild,
+ metadata.xml:
+ dev-db/mariadb: Restore jdbc and test functionality as it exists in 10.1
+
09 Jun 2017; Brian Evans <grknight@gentoo.org> mariadb-10.2.6.ebuild,
metadata.xml:
dev-db/mariadb: Adjust subslot back to 18 which is correct according to
diff --git a/dev-db/mariadb/mariadb-10.2.6.ebuild b/dev-db/mariadb/mariadb-10.2.6.ebuild
index ed617c5..54a50f1 100644
--- a/dev-db/mariadb/mariadb-10.2.6.ebuild
+++ b/dev-db/mariadb/mariadb-10.2.6.ebuild
@@ -8,19 +8,21 @@ WSREP_REVISION="25"
SUBSLOT="18"
MYSQL_PV_MAJOR="5.6"
-inherit toolchain-funcs mysql-multilib-r1
+JAVA_PKG_OPT_USE="jdbc"
+
+inherit toolchain-funcs java-pkg-opt-2 mysql-multilib-r1
HOMEPAGE="http://mariadb.org/"
DESCRIPTION="An enhanced, drop-in replacement for MySQL"
LICENSE="GPL-2 LGPL-2.1+"
-IUSE="+backup bindist cracklib galera kerberos innodb-lz4 innodb-lzo innodb-snappy mroonga odbc oqgraph pam sphinx sst-rsync sst-xtrabackup tokudb systemd xml"
+IUSE="+backup bindist cracklib galera kerberos innodb-lz4 innodb-lzo innodb-snappy jdbc mroonga odbc oqgraph pam sphinx sst-rsync sst-xtrabackup tokudb systemd xml"
RESTRICT="!bindist? ( bindist )"
-REQUIRED_USE="server? ( tokudb? ( jemalloc ) ) static? ( !pam ) "
+REQUIRED_USE="server? ( tokudb? ( jemalloc ) ) static? ( !pam ) jdbc? ( extraengine server !static )"
# REMEMBER: also update eclass/mysql*.eclass before committing!
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~hppa ~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"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~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"
if [[ "${MY_EXTRAS_VER}" == "live" ]] ; then
MY_PATCH_DIR="${WORKDIR}/mysql-extras"
@@ -45,6 +47,7 @@ COMMON_DEPEND="
>=sys-libs/readline-4.1:0=
)
server? (
+ backup? ( app-arch/libarchive:0= )
cracklib? ( sys-libs/cracklib:0= )
extraengine? (
odbc? ( dev-db/unixODBC:0= )
@@ -61,6 +64,7 @@ COMMON_DEPEND="
sys-libs/zlib[${MULTILIB_USEDEP}]
"
DEPEND="|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )
+ server? ( extraengine? ( jdbc? ( >=virtual/jdk-1.6 ) ) )
${COMMON_DEPEND}"
RDEPEND="${RDEPEND} ${COMMON_DEPEND}
server? ( galera? (
@@ -74,6 +78,7 @@ RDEPEND="${RDEPEND} ${COMMON_DEPEND}
dev-perl/TermReadKey
virtual/perl-Term-ANSIColor
virtual/perl-Time-HiRes )
+ server? ( extraengine? ( jdbc? ( >=virtual/jre-1.6 ) ) )
"
# xtrabackup-bin causes a circular dependency if DBD-mysql is not already installed
PDEPEND="server? ( galera? ( sst-xtrabackup? ( || ( >=dev-db/xtrabackup-bin-2.2.4 dev-db/percona-xtrabackup ) ) ) )"
@@ -84,6 +89,21 @@ MULTILIB_WRAPPED_HEADERS+=( /usr/include/mysql/mysql_version.h
/usr/include/mysql/private/probes_mysql_dtrace.h )
MULTILIB_CHOST_TOOLS=( /usr/bin/mariadb_config /usr/bin/mysql_config )
+pkg_setup() {
+ java-pkg-opt-2_pkg_setup
+ mysql-multilib-r1_pkg_setup
+}
+
+pkg_preinst() {
+ java-pkg-opt-2_pkg_preinst
+ mysql-multilib-r1_pkg_preinst
+}
+
+src_prepare() {
+ java-pkg-opt-2_src_prepare
+ mysql-multilib-r1_src_prepare
+}
+
src_configure(){
# bug 508724 mariadb cannot use ld.gold
tc-ld-disable-gold
@@ -134,12 +154,15 @@ src_configure(){
-DCONNECT_WITH_MYSQL=1
-DCONNECT_WITH_LIBXML2=$(usex xml)
-DCONNECT_WITH_ODBC=$(usex odbc)
+ -DCONNECT_WITH_JDBC=$(usex jdbc)
-DWITH_WSREP=$(usex galera)
- -DWITH_INNODB_LZ4=$(usex innodb-lz4)
- -DWITH_INNODB_LZO=$(usex innodb-lzo)
- -DWITH_INNODB_SNAPPY=$(usex innodb-snappy)
+ -DWITH_INNODB_LZ4=$(usex innodb-lz4 ON OFF)
+ -DWITH_INNODB_LZO=$(usex innodb-lzo ON OFF)
+ -DWITH_INNODB_SNAPPY=$(usex innodb-snappy ON OFF)
-DPLUGIN_MROONGA=$(usex mroonga YES NO)
-DPLUGIN_AUTH_GSSAPI=$(usex kerberos YES NO)
+ -DWITH_MARIABACKUP=$(usex backup ON OFF)
+ -DWITH_LIBARCHIVE=$(usex backup ON OFF)
-DINSTALL_SQLBENCHDIR=share/mariadb
)
if use test ; then
@@ -177,86 +200,69 @@ multilib_src_test() {
local retstatus_tests
if use server ; then
+ einfo "Skipping server tests due to minimal build."
+ return 0
+ fi
- # 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"
+ # 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 [[ $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}"
- addpredict /this-dir-does-not-exist/t9.MYI
-
- # Run CTest (test-units)
- cmake-utils_src_test
- retstatus_unit=$?
- [[ $retstatus_unit -eq 0 ]] || eerror "test-unit failed"
-
- # 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 run out of order
- mkdir -p "${T}"/var-tests{,/log}
-
- # These are failing in MariaDB 10.0 for now and are believed to be
- # false positives:
- #
- # main.information_schema, binlog.binlog_statement_insert_delayed,
- # main.mysqld--help, funcs_1.is_triggers, funcs_1.is_tables_mysql,
- # funcs_1.is_columns_mysql main.bootstrap
- # fails due to USE=-latin1 / utf8 default
- #
- # main.mysql_client_test, main.mysql_client_test_nonblock
- # main.mysql_client_test_comp:
- # segfaults at random under Portage only, suspect resource limits.
- #
- # plugins.cracklib_password_check
- # Can randomly fail due to cracklib return message
- #
- # plugins.two_password_validations
- # Varying policies make it unsuitable for automated testing
-
- for t in main.mysql_client_test main.mysql_client_test_nonblock \
- main.mysql_client_test_comp main.bootstrap \
- binlog.binlog_statement_insert_delayed main.information_schema \
- main.mysqld--help plugins.cracklib_password_check \
- plugins.two_password_validations \
- funcs_1.is_triggers funcs_1.is_tables_mysql funcs_1.is_columns_mysql ; do
- mysql-multilib-r1_disable_test "$t" "False positives in Gentoo"
- done
-
- # Run mysql tests
- pushd "${TESTDIR}" || die
-
- # run mysql-test tests
- perl mysql-test-run.pl --force --vardir="${T}/var-tests" --reorder
-
- retstatus_tests=$?
- [[ $retstatus_tests -eq 0 ]] || eerror "tests failed"
- has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
-
- popd || 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."
+ 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 && ewarn "Some tests may fail with FEATURES=usersandbox"
+
+ einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
+
+ # Run CTest (test-units)
+ cmake-utils_src_test
+ retstatus_unit=$?
+
+ # 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 run out of order
+ mkdir -p "${T}"/var-tests{,/log}
+
+ # Run mysql tests
+ pushd "${TESTDIR}" || die
+
+ # These are failing in MariaDB 10.0 for now and are believed to be
+ # false positives:
+ #
+ # main.mysql_client_test, main.mysql_client_test_nonblock
+ # main.mysql_client_test_comp:
+ # segfaults at random under Portage only, suspect resource limits.
+
+ local t
+ for t in plugins.cracklib_password_check plugins.two_password_validations ; do
+ mysql-multilib-r1_disable_test "$t" "False positive due to varying policies"
+ done
+
+ for t in main.mysql_client_test main.mysql_client_test_nonblock \
+ main.mysql_client_test_comp ; do
+ mysql-multilib-r1_disable_test "$t" "False positives in Gentoo"
+ done
+
+ # run mysql-test tests
+ perl mysql-test-run.pl --force --vardir="${T}/var-tests" --reorder
+ retstatus_tests=$?
+
+ popd || die
+
+ # Cleanup is important for these testcases.
+ pkill -9 -f "${S}/ndb" 2>/dev/null
+ pkill -9 -f "${S}/sql" 2>/dev/null
+
+ local failures=""
+ [[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
+ [[ $retstatus_tests -eq 0 ]] || failures="${failures} tests"
+
+ [[ -z "$failures" ]] || eerror "Test failures: $failures"
+ einfo "Tests successfully completed"
}
diff --git a/dev-db/mariadb/metadata.xml b/dev-db/mariadb/metadata.xml
index 1a80c3a..b4e973b 100644
--- a/dev-db/mariadb/metadata.xml
+++ b/dev-db/mariadb/metadata.xml
@@ -20,6 +20,7 @@
<flag name="innodb-lz4">Enables lz4 compression methods for InnoDB/XtraDB</flag>
<flag name="innodb-lzo">Enables lzo compression methods for InnoDB/XtraDB</flag>
<flag name="innodb-snappy">Enables snappy compression methods for InnoDB/XtraDB using <pkg>app-arch/snappy</pkg></flag>
+ <flag name="jdbc">Enable the CONNECT engine to access foreign databases via JDBC</flag>
<flag name="jemalloc">Use <pkg>dev-libs/jemalloc</pkg> for allocations.</flag>
<flag name="latin1">Use LATIN1 encoding instead of UTF8</flag>
<flag name="libevent">Use libevent for connection handling</flag>