commit:     ed250aba50eb57032dda42f4774efe4d123f0bfb
Author:     Brian Evans <grknight <AT> gentoo <DOT> org>
AuthorDate: Wed May 14 20:02:26 2014 +0000
Commit:     Brian Evans <grknight <AT> lavabit <DOT> com>
CommitDate: Wed May 14 20:02:26 2014 +0000
URL:        
http://git.overlays.gentoo.org/gitweb/?p=proj/mysql.git;a=commit;h=ed250aba

[mariadb] Create multilib enabled ebuild for testing

---
 dev-db/mariadb/Manifest                  |   1 -
 dev-db/mariadb/mariadb-10.0.11-r1.ebuild | 107 +++++++++++++++++++++++++++++++
 eclass/mysql-multilib.eclass             |   2 +
 3 files changed, 109 insertions(+), 1 deletion(-)

diff --git a/dev-db/mariadb/Manifest b/dev-db/mariadb/Manifest
index 4b914b9..e35cde5 100644
--- a/dev-db/mariadb/Manifest
+++ b/dev-db/mariadb/Manifest
@@ -1,4 +1,3 @@
-DIST mariadb-10.0.10.tar.gz 51946792 SHA256 
66e9700c283e026b00d399dd98d6a1712cda573026e78c205dc639665d7bd8bf SHA512 
806b32cbfe9e90656bfa62f9aac96c39688a94105e048465d58d7624a989290f92250555cf3de2cba3ce18391e41aa349e7139d4e7739e061fbd2c7ee30ba948
 WHIRLPOOL 
79a2e8a9ca8616ffc4118b3c40cb0d6d135d648c31d97a1182206bb078db72768e0ea611910669926f95d9c7969a6d418b608d4a2646e17f88c67c92ddfc93bf
 DIST mariadb-10.0.11.tar.gz 51084235 SHA256 
631bc4d9e4078456a0c98466dad18572e4a361acad25feeda2190c6da70110dd SHA512 
0e27b053f49a2e8db3bb2f000b2c48ae54f3bd6d0ef23efd39476eed1e7e729df02feb2c72ce6153982a2d8fb13af49575a6c9351ee011ff4a591d4ea29ea1d6
 WHIRLPOOL 
194df19c3863343962fdf2240b742715920f0b5e827702d0d64b8d841350af6832de79c20b76d0963ee0ef7b00ca6c14ae6e87d11d59db926da1321d905eb1ef
 DIST mariadb-5.1.67.tar.gz 25022999 SHA256 
33471e9275c9b03919cabc38eb39f807d645adabf6a1a18f2e41ed73f47677c8 SHA512 
de4a531027860c4226ec5e023b6f8573c2eb723bacaeb14279b9609ed033dcb58fc090aef3d9babcd4a4d0817ddf6ef75589c78f63075072d31ad0b7f7c17d7d
 WHIRLPOOL 
22696d27c3a510396c4b86db5f5a4b39bbcde89285a8460b175ef7c40b3b7541fc8f205c0b96da7f94504a7fd14bfe02efb45204efda524a2426cd25e08162ff
 DIST mariadb-5.2.14.tar.gz 25469828 SHA256 
8ab3db0535ce8728b03a34799da2334c18cff467e01d122293f23aad20613fe5 SHA512 
b0aded450355861bf01604ac5bd0012d0d06a699bc83017cdb6b8749ed161aca9fedb733301aab991c521b21f3c8b2fea4867a2fd038379475e720782c02e869
 WHIRLPOOL 
8c2dd7ee0c1df5696d6b9f5c4387b7f755258a710ac088559f0f9779b27d18e30f32de0d4212015a15b6a83de2abbdd5c4ec811fa87fe2aec547809dc0970607

diff --git a/dev-db/mariadb/mariadb-10.0.11-r1.ebuild 
b/dev-db/mariadb/mariadb-10.0.11-r1.ebuild
new file mode 100644
index 0000000..773acce
--- /dev/null
+++ b/dev-db/mariadb/mariadb-10.0.11-r1.ebuild
@@ -0,0 +1,107 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI="5"
+MY_EXTRAS_VER="20140514-0124Z"
+
+inherit toolchain-funcs mysql-multilib
+# only to make repoman happy. it is really set in the eclass
+IUSE="$IUSE"
+
+# REMEMBER: also update eclass/mysql*.eclass before committing!
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 
~sparc-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos 
~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
+
+# When MY_EXTRAS is bumped, the index should be revised to exclude these.
+EPATCH_EXCLUDE=''
+
+DEPEND="|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )"
+RDEPEND="${RDEPEND}"
+
+# Official test instructions:
+# USE='-cluster embedded extraengine perl ssl static-libs community' \
+# FEATURES='test userpriv -usersandbox' \
+# ebuild mariadb-X.X.XX.ebuild \
+# digest clean package
+src_test() {
+
+       local TESTDIR="${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 "minimal" ; 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}"
+               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))"
+
+               # create directories because mysqladmin might right out of order
+               mkdir -p "${S}"/mysql-test/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
+               # fails due to USE=-latin1 / utf8 default
+               #
+               # main.mysql_client_test, main.mysql_client_test_nonblock:
+               # segfaults at random under Portage only, suspect resource 
limits.
+               #
+               # plugins.unix_socket
+               # fails because portage strips out the USER enviornment variable
+               #
+
+               for t in main.mysql_client_test main.mysql_client_test_nonblock 
\
+                       binlog.binlog_statement_insert_delayed 
main.information_schema \
+                       main.mysqld--help plugins.unix_socket \
+                       funcs_1.is_triggers funcs_1.is_tables_mysql 
funcs_1.is_columns_mysql ; do
+                               mysql-v2_disable_test  "$t" "False positives in 
Gentoo"
+               done
+
+               # Run mysql tests
+               pushd "${TESTDIR}"
+
+               # run mysql-test tests
+               # Skip all CONNECT engine tests until upstream respondes to how 
to reference data files
+               perl mysql-test-run.pl --force 
--vardir="${S}/mysql-test/var-tests" --skip-test=connect
+               retstatus_tests=$?
+               [[ $retstatus_tests -eq 0 ]] || eerror "tests failed"
+               has usersandbox $FEATURES && eerror "Some tests may fail with 
FEATURES=usersandbox"
+
+               popd
+
+               # 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
+}

diff --git a/eclass/mysql-multilib.eclass b/eclass/mysql-multilib.eclass
index b548e40..10281c4 100644
--- a/eclass/mysql-multilib.eclass
+++ b/eclass/mysql-multilib.eclass
@@ -255,9 +255,11 @@ if [[ ${PN} == "mysql-cluster" ]] ; then
 fi
 
 # prefix: first need to implement something for #196294
+# TODO: check emul-linux-x86-db dep when it is multilib enabled
 RDEPEND="${DEPEND}
        !minimal? ( !prefix? ( dev-db/mysql-init-scripts ) )
        selinux? ( sec-policy/selinux-mysql )
+       !app-emulation/emul-linux-x86-db[-abi_x86_32(-)]
 "
 
 if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] ; then

Reply via email to