commit:     0f8660f0f673e32220d296bcef9029862c54540d
Author:     Brian Evans <grknight <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 13 01:36:20 2017 +0000
Commit:     Brian Evans <grknight <AT> gentoo <DOT> org>
CommitDate: Tue Jun 13 01:36:20 2017 +0000
URL:        https://gitweb.gentoo.org/proj/mysql.git/commit/?id=0f8660f0

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

 dev-db/mariadb/ChangeLog             |   4 +
 dev-db/mariadb/mariadb-10.2.6.ebuild | 178 ++++++++++++++++++-----------------
 dev-db/mariadb/metadata.xml          |   1 +
 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 <[email protected]> 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 <[email protected]> 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>

Reply via email to