summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Evans <grknight@gentoo.org>2017-05-01 21:59:50 -0400
committerBrian Evans <grknight@gentoo.org>2017-05-01 21:59:50 -0400
commited5bb3fbdfd8b02dd9cedd02c809f93b7d6f5e24 (patch)
tree06feacae1b0c6a2365c15ab0f9ee4e621a4104de
parentdev-db/mariadb-connector-c: Fix up mysqlcompat USE installs (diff)
downloadmysql-ed5bb3fbdfd8b02dd9cedd02c809f93b7d6f5e24.tar.gz
mysql-ed5bb3fbdfd8b02dd9cedd02c809f93b7d6f5e24.tar.bz2
mysql-ed5bb3fbdfd8b02dd9cedd02c809f93b7d6f5e24.zip
dev-db/mariadb: Version bumps to test
Package-Manager: Portage-2.3.5, Repoman-2.3.2 Manifest-Sign-Key: D1F781EFF9F4A3B6
-rw-r--r--dev-db/mariadb/ChangeLog12
-rw-r--r--dev-db/mariadb/Manifest36
-rw-r--r--dev-db/mariadb/mariadb-10.2.1.ebuild216
-rw-r--r--dev-db/mariadb/mariadb-10.2.2.ebuild225
-rw-r--r--dev-db/mariadb/mariadb-10.2.4.ebuild244
-rw-r--r--dev-db/mariadb/mariadb-10.2.5.ebuild244
-rw-r--r--dev-db/mariadb/mariadb-9999.ebuild2
7 files changed, 961 insertions, 18 deletions
diff --git a/dev-db/mariadb/ChangeLog b/dev-db/mariadb/ChangeLog
index 21c3941..19a0e89 100644
--- a/dev-db/mariadb/ChangeLog
+++ b/dev-db/mariadb/ChangeLog
@@ -1,7 +1,17 @@
# ChangeLog for dev-db/mariadb
-# Copyright 1999-2016 Gentoo Foundation; Distributed under the GPL v2
+# Copyright 1999-2017 Gentoo Foundation; Distributed under the GPL v2
# $Id$
+*mariadb-10.2.1 (02 May 2017)
+*mariadb-10.2.2 (02 May 2017)
+*mariadb-10.2.4 (02 May 2017)
+*mariadb-10.2.5 (02 May 2017)
+
+ 02 May 2017; Brian Evans <grknight@gentoo.org> +mariadb-10.2.1.ebuild,
+ +mariadb-10.2.2.ebuild, +mariadb-10.2.4.ebuild, +mariadb-10.2.5.ebuild,
+ mariadb-9999.ebuild:
+ dev-db/mariadb: Version bumps to test
+
12 May 2016; Brian Evans <grknight@gentoo.org> mariadb-9999.ebuild:
dev-db/mariadb: Bring live version up-to-date
diff --git a/dev-db/mariadb/Manifest b/dev-db/mariadb/Manifest
index ee3156d..3c9b43a 100644
--- a/dev-db/mariadb/Manifest
+++ b/dev-db/mariadb/Manifest
@@ -5,6 +5,10 @@ DIST mariadb-10.0.25.tar.gz 57459461 SHA256 4540832c18112a332f61f4eeb57140890c4e
DIST mariadb-10.1.12.tar.gz 55254244 SHA256 795f466ac0e4df148981b85df735855d41614abaedcda51520a513a4ad60f4e7 SHA512 c0f28de80e22b7fc1f74946f309c364601036aefeea2bb464b11e3658e102dd80ef0d6d156d0af67af76e54741e60334be8c48630766141b01b885d53068b659 WHIRLPOOL 28ceaa2445a89c82c91ca4f6806fb78fd40705b823b95817625e6fc97112f9a5eddfd4e1d1527c5ad588a9fec33353e4f88174272409637090d8495175a8cd3d
DIST mariadb-10.1.13.tar.gz 55272572 SHA256 21e1c7da1421146c69f5e8077333aaac06778a87046a1943ee4f449fbcefc00d SHA512 fdaa35f1a93e2a124339f3a4a85d7247c223ffec2cd7ed36f029f63a76bd348b8f41f491e5b2f81f53bed82ed79bc89b62dd6966d5a946910299070ece667b5e WHIRLPOOL 0ff2891af910380749be8b31bdacec02777cc4f2b474172b3257cecc10b900222c3c089515c9fd4621ea75ea58179b1f1336b7c26185ec43282df0ce661e621d
DIST mariadb-10.1.14.tar.gz 55341017 SHA256 18e71974a059a268a3f28281599607344d548714ade823d575576121f76ada13 SHA512 dad8f296320f95b2ab2f3a9e888c1829df63229cb8c76161ad004c6c1a1a488f0db7918e3e655de04281dc65aab71f6e5d9ecab75e6071521799631355cfeadf WHIRLPOOL 6788513c58e1b0875dba4a2f661a161e6d7a355503ff018c75cc298b8b2609e2d720a1c572904214aebc34aa71e394bb5eb1df8f6808ecf39b84aa72656b5a6a
+DIST mariadb-10.2.1.tar.gz 55721519 SHA256 90b7a17f3372c92c12dff084b37fcca8c4cf8106f4dcabd35fadc8efbaa348a2 SHA512 3dde348e4bba2b6837e0a0671e9ec944aa494e4a01ebb4704e067cc8fe71865aef685f4ce368e9a81c5adeb1e8cc4f3a1b4067193a4b1ffc1fc567bf79a0b4ff WHIRLPOOL cbf33b7f6fb131a834367214ff4ab49bbda8aebb6e6fe449c7be2648934bcdab79c50a043907c07603f51892041701be59ff45984db43e302b2174f6fd40bc31
+DIST mariadb-10.2.2.tar.gz 62683612 SHA256 55cf9e357ae4511fc1330e7cb8a15746d99b3a7875b6da9bcf1acfb1aa6f893a SHA512 f1d0671e31db2f3aef86c26d9dd8765732e609e7d5ea9c1a452fb0f42cf449bfd17c80a4d11f8bf64074b6536070602e11cedb16b0f36acf1c9e889f0c106e4e WHIRLPOOL b9117275adff53c44fa81b255324d806c9f4dcbfd4f40c3b0cd2fd50d898207617e35543e3aab32104a5151ec290ed79ecd25793271b860f5bb05abd29064db7
+DIST mariadb-10.2.4.tar.gz 63235247 SHA256 b73e353c29a0171d1057f14191c83d1f17e6f58ca09a79dda4b12c0e12b7f975 SHA512 bb6b35b6abd834d4ce2e27f4e06abbf790769e3d56b89d25d06126c21abb1bcce3d8f19c49e2c2052bf89e5ebc3c67c5092dfb25577870f8f561ce87777367ae WHIRLPOOL e2ba3b38e80b47dcca02e741ecc91ec8a1f96d72836422fb890be6d4ffa9cfebcd85c09bf11b1a492ad1edd9923299ff516b0428564c33ac0482c0443229a5f9
+DIST mariadb-10.2.5.tar.gz 67183039 SHA256 6629bd2392ccba2fb30ce3a27efddba1f695ac739538007ad1d15caeed19ff50 SHA512 1a1911266110e86ef93aad73521d9ddde154357613a6ea7198cc1409aa4532998ddda69d64abcde2a6cf6b8c38c29bf730a6605253fb0f43d5bd4e1db48ed50e WHIRLPOOL d544341ade0705980fc72acdf97428100d5439ed6f2ca747d0fe291d85f597b7bd54e8c162a4771e042e3f31eb6c1ded473f31b5f233e84dec1095d16547ddb7
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
DIST mariadb-5.3.12.tar.gz 26880808 SHA256 83a4598117cadde2bd7eac4c1398edbc86cc3aa8d3824bbee864d4b568a3a30c SHA512 d53ea48745dad5693fd6a1fd5cf502852f12f8236b8a1fb7f81ad647301d2fd08d4f2944c74de580d0a4136d6c8b49f257124fa1b234ba8f2338f2047435ef94 WHIRLPOOL b9caf1b241262b3b25728769116a94b480ae404ed3d49c8afd6eb4ad6071552e436e4b9483e7f5d0113bc3127eaf04ceaa80d455486e7a92d00820b6b298c460
@@ -14,21 +18,21 @@ DIST mysql-extras-20150509-1847Z.tar.bz2 1494301 SHA256 de9c9fbb67998604cb3c0409
DIST mysql-extras-20151223-1501Z.tar.bz2 295335 SHA256 8b5100aef8e0f8f6302bb389555dc7c91dd78ac1e4eb39bfd4f9d9d0b2321971 SHA512 84dc1dab6651aea51b4b2bad4304ae19dbedbda6e9c8f49377d01adb9d42fed7ce0018951a6694fd09f316ce99816c0269f2787b490cad6838d729f365ad4a6d WHIRLPOOL 30ec83b7054eaa711cfbb57b39c0696a028aee862ed2ca5dfe2515ab1bd625a28175e4d789d9ba2c67692a1b1429e08cc50d72132ac002ccb2be2d26c91cfdfb
DIST mysql-extras-20160131-0252Z.tar.bz2 295849 SHA256 442966972d2f9d9bcc3a27c1df31ed5a5bbcba13fa7ca1254c8964e9d0b7805e SHA512 d8018fd46c94a344fcbcdedfcdee4b3d75878b879b28cd4d07dfb9f29e62df217b243cf43f1e80ebca3507faef9c37c14c21372db84f9ba487c98ed32d7f3c0b WHIRLPOOL 4416bb455ed5862dd1d012ffe6fa6e65d5d24bb60b5b5b71adac2c3ccebb46a3ec75f82a7eef75ff5c37d3a0ab91d191b2395beb643e71a98ee0238b13d4b7fe
-----BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.1
+Version: GnuPG v2
-iQJ8BAEBCABmBQJXMjGtXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
-ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ2NkMyRTQ0RUQ5MEUzMjc1OEU3RDU1QzBE
-MUY3ODFFRkY5RjRBM0I2AAoJENH3ge/59KO2+NsQANNqPpae6Ep3HHUP3GEa+oq/
-d+yfxrp+zYtbWjZJ+4Apcg+6TcrwU9AfKnIhxavHg6e194hg5HOHJgcPA126dU5V
-Xu2QHMFmozezhsQsFvZYq/5z9xfOQ6RW/WYzRsWjnULXEdcUS9EaoyhUQfcG+++W
-wpzzxg7sS0MG9LsrPhVN8nmv/mtRraQ1jbdgu7CLSN1RmN/A1HC+rtcgELEAKgJb
-ZBbeU5mKqhJ9IaEf6Xk/RGEanaPeaxqD6ik0lkkeTg/HOX1aN3frG/H56UgQ9776
-lRRaXfcIVGeyEaFYsQvFEPG/tKyLn3RanAAVvqvcboBi6CV/AsERnOBK8Ao+vdzN
-KJhvdpojJFIArNobSNlSyPMOUXlpANXlpMRrjVhOODPBGTJbZBZA+XLJk1a4dswF
-7lQycmeMTuQDdyYM7qetAsqxN6RzC5Z+adeMt7mjNJ5AoG4r72I+H6DU63ljg4wl
-U+lInSMZlkEil+8c8/F+4MUNALmpMB6mpbEqy2oJJbRRTFy1A7e/Mtb4tRRqjM7X
-8e73rGLMfcct0kwHDrF/KHYcRkSFQVIDDExIPmv+j0TCphCUfTzxWrHniNiOuec7
-LeTQjoONp7aFiWZMIRbOEmD2hsn/tMR+72EwJUiRHcDFFYDj8fOaaRFeCLAAtkjw
-Nd23VeNHkbgjzKVQm85g
-=AgjA
+iQKTBAEBCAB9FiEEZsLkTtkOMnWOfVXA0feB7/n0o7YFAlkH6BJfFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDY2
+QzJFNDRFRDkwRTMyNzU4RTdENTVDMEQxRjc4MUVGRjlGNEEzQjYACgkQ0feB7/n0
+o7bgORAA1EXfSPk8v+zk8aM4ARnDhhT499Y0TQTgmpDC5lvc09j8nZa1CQrYoNcc
+dBGB02LvlELfoCu9oGQHSc2wSyx3B66nfFLEhBFPtDu5ib2LnigubO46zcAB0CLB
+FUWZHEN7m3kkpBV1m6NIJoqx1QIc6H+62mRxO/ofMcP9McFFQ2bKi+XJps8857xJ
+WFFvaVi+OaFjyrvIbUJa638+OMfNVJKGvvEQRHNgimp8vrV7vdlGbBLSzsvbf6e9
+AqslDTXQ08+1KBIxHdz1aJaltwS66U+qQKoef77vhCWP6l9HP4KhcHB4AUtcBacp
+RbGe9X9E+49D3XpkB1j5vAqFDHCrlTt0C64DNJ5cw7fmXr+gtT/Qn2PPyMp1le9g
+9MZmtlfp/d4vrZ1t3qaqeAlY0yl1uLpVR97RjwCLxva9LFdMzK0M+houPVmaLZEL
+/AIWjUhPZa77DfYaLoRmUbLSaqAL24u8Myk6JIiGmcELuhC1glio2PKwsmFxk57/
+NerjvVzsZziVSFhVSIwA4JD0VBocJo+Dm2iQM3wqZ7DN1pVHm/qRsSquPnXKHvcw
+OQ+05ZvdI5g+3q/VS7tbr/mjM/9aADTadrQigyksiLVLfHm2QvrVVrlXNAqO9MGD
+uOjjfxmbrFHpk1VGa7t3Q4iQskPFbFnhDfXESNqskatC/lu7/zM=
+=zLXQ
-----END PGP SIGNATURE-----
diff --git a/dev-db/mariadb/mariadb-10.2.1.ebuild b/dev-db/mariadb/mariadb-10.2.1.ebuild
new file mode 100644
index 0000000..6981240
--- /dev/null
+++ b/dev-db/mariadb/mariadb-10.2.1.ebuild
@@ -0,0 +1,216 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+MY_EXTRAS_VER="20160131-0252Z"
+# The wsrep API version must match between upstream WSREP and sys-cluster/galera major number
+WSREP_REVISION="25"
+SUBSLOT="18"
+MYSQL_PV_MAJOR="5.6"
+
+inherit toolchain-funcs mysql-multilib-r1
+
+HOMEPAGE="http://mariadb.org/"
+DESCRIPTION="An enhanced, drop-in replacement for MySQL"
+
+IUSE="bindist cracklib galera kerberos innodb-lz4 innodb-lzo innodb-snappy mroonga odbc oqgraph pam sphinx sst-rsync sst-xtrabackup tokudb systemd xml"
+RESTRICT="!bindist? ( bindist )"
+
+REQUIRED_USE="server? ( tokudb? ( jemalloc ) ) static? ( !pam ) "
+
+# 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"
+
+MY_PATCH_DIR="${WORKDIR}/mysql-extras-${MY_EXTRAS_VER}"
+
+# "${MY_PATCH_DIR}"/20006_all_cmake_elib-mariadb-10.1.8.patch
+PATCHES=(
+ "${MY_PATCH_DIR}"/20009_all_mariadb_myodbc_symbol_fix-5.5.38.patch
+ "${MY_PATCH_DIR}"/20015_all_mariadb-pkgconfig-location.patch
+ "${MY_PATCH_DIR}"/20018_all_mariadb-10.1.7-without-clientlibs-tools.patch
+)
+
+COMMON_DEPEND="
+ mroonga? ( app-text/groonga-normalizer-mysql )
+ kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
+ systemd? ( sys-apps/systemd:= )
+ !bindist? (
+ sys-libs/binutils-libs:0=
+ >=sys-libs/readline-4.1:0=
+ )
+ server? (
+ cracklib? ( sys-libs/cracklib:0= )
+ extraengine? (
+ odbc? ( dev-db/unixODBC:0= )
+ xml? ( dev-libs/libxml2:2= )
+ )
+ innodb-lz4? ( app-arch/lz4 )
+ innodb-lzo? ( dev-libs/lzo )
+ innodb-snappy? ( app-arch/snappy )
+ oqgraph? ( >=dev-libs/boost-1.40.0:0= dev-libs/judy:0= )
+ pam? ( virtual/pam:0= )
+ tokudb? ( app-arch/snappy )
+ )
+ >=dev-libs/libpcre-8.35:3=
+"
+DEPEND="|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )
+ ${COMMON_DEPEND}"
+RDEPEND="${RDEPEND} ${COMMON_DEPEND}
+ galera? (
+ sys-apps/iproute2
+ =sys-cluster/galera-${WSREP_REVISION}*
+ sst-rsync? ( sys-process/lsof )
+ sst-xtrabackup? ( net-misc/socat[ssl] )
+ )
+ perl? ( !dev-db/mytop
+ virtual/perl-Getopt-Long
+ dev-perl/TermReadKey
+ virtual/perl-Term-ANSIColor
+ virtual/perl-Time-HiRes )
+"
+# xtrabackup-bin causes a circular dependency if DBD-mysql is not already installed
+PDEPEND="galera? ( sst-xtrabackup? ( >=dev-db/xtrabackup-bin-2.2.4 ) )"
+
+MULTILIB_WRAPPED_HEADERS+=( /usr/include/mysql/mysql_version.h
+ /usr/include/mysql/private/probes_mysql_nodtrace.h
+ /usr/include/mysql/private/probes_mysql_dtrace.h )
+
+src_configure(){
+ # bug 508724 mariadb cannot use ld.gold
+ tc-ld-disable-gold
+
+ local MYSQL_CMAKE_NATIVE_DEFINES=(
+ -DWITH_JEMALLOC=$(usex jemalloc system)
+ -DWITH_PCRE=system
+ )
+ local MYSQL_CMAKE_EXTRA_DEFINES=(
+ -DPLUGIN_AUTH_GSSAPI_CLIENT=$(usex kerberos YES NO)
+ )
+ if use server ; then
+ # Federated{,X} must be treated special otherwise they will not be built as plugins
+ if ! use extraengine ; then
+ MYSQL_CMAKE_NATIVE_DEFINES+=(
+ -DPLUGIN_FEDERATED=NO
+ -DPLUGIN_FEDERATEDX=NO )
+ fi
+
+ MYSQL_CMAKE_NATIVE_DEFINES+=(
+ -DPLUGIN_OQGRAPH=$(usex oqgraph YES NO)
+ -DPLUGIN_SPHINX=$(usex sphinx YES NO)
+ -DPLUGIN_TOKUDB=$(usex tokudb YES NO)
+ -DPLUGIN_AUTH_PAM=$(usex pam YES NO)
+ -DPLUGIN_CRACKLIB_PASSWORD_CHECK=$(usex cracklib YES NO)
+ -DPLUGIN_CASSANDRA=NO
+ -DPLUGIN_SEQUENCE=$(usex extraengine YES NO)
+ -DPLUGIN_SPIDER=$(usex extraengine YES NO)
+ -DPLUGIN_CONNECT=$(usex extraengine YES NO)
+ -DCONNECT_WITH_MYSQL=1
+ -DCONNECT_WITH_LIBXML2=$(usex xml)
+ -DCONNECT_WITH_ODBC=$(usex odbc)
+ -DWITH_WSREP=$(usex galera)
+ -DWITH_INNODB_LZ4=$(usex innodb-lz4)
+ -DWITH_INNODB_LZO=$(usex innodb-lzo)
+ -DWITH_INNODB_SNAPPY=$(usex innodb-snappy)
+ -DPLUGIN_MROONGA=$(usex mroonga YES NO)
+ -DPLUGIN_AUTH_GSSAPI=$(usex kerberos YES NO)
+ )
+ fi
+ mysql-multilib-r1_src_configure
+}
+
+# Official test instructions:
+# USE='embedded extraengine perl server openssl static-libs' \
+# FEATURES='test userpriv -usersandbox' \
+# ebuild mariadb-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="${BUILD_DIR}/mysql-test"
+ local retstatus_unit
+ local retstatus_tests
+
+ if use server ; then
+
+ # 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
+
+ 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 \
+ 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."
+ fi
+}
diff --git a/dev-db/mariadb/mariadb-10.2.2.ebuild b/dev-db/mariadb/mariadb-10.2.2.ebuild
new file mode 100644
index 0000000..d73daac
--- /dev/null
+++ b/dev-db/mariadb/mariadb-10.2.2.ebuild
@@ -0,0 +1,225 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+MY_EXTRAS_VER="20160131-0252Z"
+# The wsrep API version must match between upstream WSREP and sys-cluster/galera major number
+WSREP_REVISION="25"
+SUBSLOT="19"
+MYSQL_PV_MAJOR="5.6"
+
+MYSLOT="${PN}/${SUBSLOT}"
+
+inherit toolchain-funcs mysql-multilib-r1
+
+HOMEPAGE="http://mariadb.org/"
+DESCRIPTION="An enhanced, drop-in replacement for MySQL"
+LICENSE="GPL-2 LGPL-2.1+"
+
+IUSE="bindist cracklib galera kerberos innodb-lz4 innodb-lzo innodb-snappy mroonga odbc oqgraph pam sphinx sst-rsync sst-xtrabackup tokudb systemd xml"
+RESTRICT="!bindist? ( bindist )"
+
+REQUIRED_USE="server? ( tokudb? ( jemalloc ) ) static? ( !pam ) "
+
+# 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"
+
+MY_PATCH_DIR="${WORKDIR}/mysql-extras-${MY_EXTRAS_VER}"
+
+# "${MY_PATCH_DIR}"/20006_all_cmake_elib-mariadb-10.1.8.patch
+# "${MY_PATCH_DIR}"/20009_all_mariadb_myodbc_symbol_fix-5.5.38.patch
+# "${MY_PATCH_DIR}"/20018_all_mariadb-10.2.2-without-clientlibs-tools.patch
+PATCHES=(
+ "${MY_PATCH_DIR}"/20015_all_mariadb-pkgconfig-location.patch
+)
+
+COMMON_DEPEND="
+ mroonga? ( app-text/groonga-normalizer-mysql )
+ kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
+ systemd? ( sys-apps/systemd:= )
+ !bindist? (
+ sys-libs/binutils-libs:0=
+ >=sys-libs/readline-4.1:0=
+ )
+ server? (
+ cracklib? ( sys-libs/cracklib:0= )
+ extraengine? (
+ odbc? ( dev-db/unixODBC:0= )
+ xml? ( dev-libs/libxml2:2= )
+ )
+ innodb-lz4? ( app-arch/lz4 )
+ innodb-lzo? ( dev-libs/lzo )
+ innodb-snappy? ( app-arch/snappy )
+ oqgraph? ( >=dev-libs/boost-1.40.0:0= dev-libs/judy:0= )
+ pam? ( virtual/pam:0= )
+ tokudb? ( app-arch/snappy )
+ )
+ >=dev-libs/libpcre-8.35:3=
+"
+DEPEND="|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )
+ ${COMMON_DEPEND}"
+RDEPEND="${RDEPEND} ${COMMON_DEPEND}
+ galera? (
+ sys-apps/iproute2
+ =sys-cluster/galera-${WSREP_REVISION}*
+ sst-rsync? ( sys-process/lsof )
+ sst-xtrabackup? ( net-misc/socat[ssl] )
+ )
+ perl? ( !dev-db/mytop
+ virtual/perl-Getopt-Long
+ dev-perl/TermReadKey
+ virtual/perl-Term-ANSIColor
+ virtual/perl-Time-HiRes )
+"
+# xtrabackup-bin causes a circular dependency if DBD-mysql is not already installed
+PDEPEND="galera? ( sst-xtrabackup? ( || ( >=dev-db/xtrabackup-bin-2.2.4 dev-db/percona-xtrabackup ) ) )"
+
+MULTILIB_WRAPPED_HEADERS+=( /usr/include/mysql/mysql_version.h
+ /usr/include/mariadb/mariadb_version.h
+ /usr/include/mysql/private/probes_mysql_nodtrace.h
+ /usr/include/mysql/private/probes_mysql_dtrace.h )
+MULTILIB_CHOST_TOOLS=( /usr/bin/mariadb_config /usr/bin/mysql_config )
+
+src_configure(){
+ # bug 508724 mariadb cannot use ld.gold
+ tc-ld-disable-gold
+
+ local MYSQL_CMAKE_NATIVE_DEFINES=(
+ -DWITH_JEMALLOC=$(usex jemalloc system)
+ -DWITH_PCRE=system
+ )
+ local MYSQL_CMAKE_EXTRA_DEFINES=(
+ -DPLUGIN_AUTH_GSSAPI_CLIENT=$(usex kerberos ON OFF)
+ -DAUTH_GSSAPI_PLUGIN_TYPE=$(usex kerberos DYNAMIC OFF)
+ -DCONC_WITH_EXTERNAL_ZLIB=YES
+ -DWITH_EXTERNAL_ZLIB=YES
+ -DSUFFIX_INSTALL_DIR=""
+ )
+ if use server ; then
+ # Federated{,X} must be treated special otherwise they will not be built as plugins
+ if ! use extraengine ; then
+ MYSQL_CMAKE_NATIVE_DEFINES+=(
+ -DPLUGIN_FEDERATED=NO
+ -DPLUGIN_FEDERATEDX=NO )
+ fi
+
+ MYSQL_CMAKE_NATIVE_DEFINES+=(
+ -DPLUGIN_OQGRAPH=$(usex oqgraph YES NO)
+ -DPLUGIN_SPHINX=$(usex sphinx YES NO)
+ -DPLUGIN_TOKUDB=$(usex tokudb YES NO)
+ -DPLUGIN_AUTH_PAM=$(usex pam YES NO)
+ -DPLUGIN_CRACKLIB_PASSWORD_CHECK=$(usex cracklib YES NO)
+ -DPLUGIN_CASSANDRA=NO
+ -DPLUGIN_SEQUENCE=$(usex extraengine YES NO)
+ -DPLUGIN_SPIDER=$(usex extraengine YES NO)
+ -DPLUGIN_CONNECT=$(usex extraengine YES NO)
+ -DCONNECT_WITH_MYSQL=1
+ -DCONNECT_WITH_LIBXML2=$(usex xml)
+ -DCONNECT_WITH_ODBC=$(usex odbc)
+ -DWITH_WSREP=$(usex galera)
+ -DWITH_INNODB_LZ4=$(usex innodb-lz4)
+ -DWITH_INNODB_LZO=$(usex innodb-lzo)
+ -DWITH_INNODB_SNAPPY=$(usex innodb-snappy)
+ -DPLUGIN_MROONGA=$(usex mroonga YES NO)
+ -DPLUGIN_AUTH_GSSAPI=$(usex kerberos YES NO)
+ )
+ fi
+ mysql-multilib-r1_src_configure
+}
+
+# Official test instructions:
+# USE='embedded extraengine perl server openssl static-libs' \
+# FEATURES='test userpriv -usersandbox' \
+# ebuild mariadb-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="${BUILD_DIR}/mysql-test"
+ local retstatus_unit
+ local retstatus_tests
+
+ if use server ; then
+
+ # 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
+
+ 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 \
+ 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."
+ fi
+}
diff --git a/dev-db/mariadb/mariadb-10.2.4.ebuild b/dev-db/mariadb/mariadb-10.2.4.ebuild
new file mode 100644
index 0000000..6137d7b
--- /dev/null
+++ b/dev-db/mariadb/mariadb-10.2.4.ebuild
@@ -0,0 +1,244 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+MY_EXTRAS_VER="20160131-0252Z"
+# The wsrep API version must match between upstream WSREP and sys-cluster/galera major number
+WSREP_REVISION="25"
+SUBSLOT="19"
+MYSQL_PV_MAJOR="5.6"
+
+MYSLOT="${PN}/${SUBSLOT}"
+
+inherit toolchain-funcs mysql-multilib-r1
+
+HOMEPAGE="http://mariadb.org/"
+DESCRIPTION="An enhanced, drop-in replacement for MySQL"
+LICENSE="GPL-2 LGPL-2.1+"
+
+IUSE="bindist cracklib galera kerberos innodb-lz4 innodb-lzo innodb-snappy mroonga odbc oqgraph pam sphinx sst-rsync sst-xtrabackup tokudb systemd xml"
+RESTRICT="!bindist? ( bindist )"
+
+REQUIRED_USE="server? ( tokudb? ( jemalloc ) ) static? ( !pam ) "
+
+# 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"
+
+MY_PATCH_DIR="${WORKDIR}/mysql-extras-${MY_EXTRAS_VER}"
+
+# "${MY_PATCH_DIR}"/20006_all_cmake_elib-mariadb-10.1.8.patch
+# "${MY_PATCH_DIR}"/20009_all_mariadb_myodbc_symbol_fix-5.5.38.patch
+# "${MY_PATCH_DIR}"/20018_all_mariadb-10.2.2-without-clientlibs-tools.patch
+PATCHES=(
+ "${MY_PATCH_DIR}"/20015_all_mariadb-pkgconfig-location.patch
+)
+
+COMMON_DEPEND="
+ mroonga? ( app-text/groonga-normalizer-mysql )
+ kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
+ systemd? ( sys-apps/systemd:= )
+ !bindist? (
+ sys-libs/binutils-libs:0=
+ >=sys-libs/readline-4.1:0=
+ )
+ server? (
+ cracklib? ( sys-libs/cracklib:0= )
+ extraengine? (
+ odbc? ( dev-db/unixODBC:0= )
+ xml? ( dev-libs/libxml2:2= )
+ )
+ innodb-lz4? ( app-arch/lz4 )
+ innodb-lzo? ( dev-libs/lzo )
+ innodb-snappy? ( app-arch/snappy )
+ oqgraph? ( >=dev-libs/boost-1.40.0:0= dev-libs/judy:0= )
+ pam? ( virtual/pam:0= )
+ tokudb? ( app-arch/snappy )
+ )
+ >=dev-libs/libpcre-8.35:3=
+"
+DEPEND="|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )
+ ${COMMON_DEPEND}"
+RDEPEND="${RDEPEND} ${COMMON_DEPEND}
+ server? ( galera? (
+ sys-apps/iproute2
+ =sys-cluster/galera-${WSREP_REVISION}*
+ sst-rsync? ( sys-process/lsof )
+ sst-xtrabackup? ( net-misc/socat[ssl] )
+ ) )
+ perl? ( !dev-db/mytop
+ virtual/perl-Getopt-Long
+ dev-perl/TermReadKey
+ virtual/perl-Term-ANSIColor
+ virtual/perl-Time-HiRes )
+"
+# 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 ) ) ) )"
+
+MULTILIB_WRAPPED_HEADERS+=( /usr/include/mysql/mysql_version.h
+ /usr/include/mariadb/mariadb_version.h
+ /usr/include/mysql/private/probes_mysql_nodtrace.h
+ /usr/include/mysql/private/probes_mysql_dtrace.h )
+MULTILIB_CHOST_TOOLS=( /usr/bin/mariadb_config /usr/bin/mysql_config )
+
+src_configure(){
+ # bug 508724 mariadb cannot use ld.gold
+ tc-ld-disable-gold
+
+ local MYSQL_CMAKE_NATIVE_DEFINES=(
+ -DWITH_JEMALLOC=$(usex jemalloc system)
+ -DWITH_PCRE=system
+ )
+ local MYSQL_CMAKE_EXTRA_DEFINES=(
+ -DPLUGIN_AUTH_GSSAPI_CLIENT=$(usex kerberos ON OFF)
+ -DAUTH_GSSAPI_PLUGIN_TYPE=$(usex kerberos DYNAMIC OFF)
+ -DCONC_WITH_EXTERNAL_ZLIB=YES
+ -DWITH_EXTERNAL_ZLIB=YES
+ -DSUFFIX_INSTALL_DIR=""
+ -DINSTALL_INCLUDEDIR=include/mariadb
+ -DINSTALL_INFODIR=share/info
+ -DINSTALL_LIBDIR=$(get_libdir)
+ -DINSTALL_ELIBDIR=$(get_libdir)/mariadb
+ -DINSTALL_MANDIR=share/man
+ -DINSTALL_MYSQLSHAREDIR=share/mariadb
+ -DINSTALL_PLUGINDIR=$(get_libdir)/mariadb/plugin
+ -DINSTALL_SCRIPTDIR=share/mariadb/scripts
+ -DINSTALL_SUPPORTFILESDIR="${EPREFIX}/usr/share/mariadb"
+ )
+
+ if use test ; then
+ MYSQL_CMAKE_EXTRA_DEFINES+=( -DINSTALL_MYSQLTESTDIR=share/mariadb/mysql-test )
+ fi
+
+ if use server ; then
+ # Federated{,X} must be treated special otherwise they will not be built as plugins
+ if ! use extraengine ; then
+ MYSQL_CMAKE_NATIVE_DEFINES+=(
+ -DPLUGIN_FEDERATED=NO
+ -DPLUGIN_FEDERATEDX=NO )
+ fi
+
+ MYSQL_CMAKE_NATIVE_DEFINES+=(
+ -DPLUGIN_OQGRAPH=$(usex oqgraph YES NO)
+ -DPLUGIN_SPHINX=$(usex sphinx YES NO)
+ -DPLUGIN_TOKUDB=$(usex tokudb YES NO)
+ -DPLUGIN_AUTH_PAM=$(usex pam YES NO)
+ -DPLUGIN_CRACKLIB_PASSWORD_CHECK=$(usex cracklib YES NO)
+ -DPLUGIN_CASSANDRA=NO
+ -DPLUGIN_SEQUENCE=$(usex extraengine YES NO)
+ -DPLUGIN_SPIDER=$(usex extraengine YES NO)
+ -DPLUGIN_CONNECT=$(usex extraengine YES NO)
+ -DCONNECT_WITH_MYSQL=1
+ -DCONNECT_WITH_LIBXML2=$(usex xml)
+ -DCONNECT_WITH_ODBC=$(usex odbc)
+ -DWITH_WSREP=$(usex galera)
+ -DWITH_INNODB_LZ4=$(usex innodb-lz4)
+ -DWITH_INNODB_LZO=$(usex innodb-lzo)
+ -DWITH_INNODB_SNAPPY=$(usex innodb-snappy)
+ -DPLUGIN_MROONGA=$(usex mroonga YES NO)
+ -DPLUGIN_AUTH_GSSAPI=$(usex kerberos YES NO)
+ -DINSTALL_SQLBENCHDIR=share/mariadb
+ )
+ fi
+ mysql-multilib-r1_src_configure
+}
+
+# Official test instructions:
+# USE='embedded extraengine perl server openssl static-libs' \
+# FEATURES='test userpriv -usersandbox' \
+# ebuild mariadb-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="${BUILD_DIR}/mysql-test"
+ local retstatus_unit
+ local retstatus_tests
+
+ if use server ; then
+
+ # 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."
+ fi
+}
diff --git a/dev-db/mariadb/mariadb-10.2.5.ebuild b/dev-db/mariadb/mariadb-10.2.5.ebuild
new file mode 100644
index 0000000..6137d7b
--- /dev/null
+++ b/dev-db/mariadb/mariadb-10.2.5.ebuild
@@ -0,0 +1,244 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+MY_EXTRAS_VER="20160131-0252Z"
+# The wsrep API version must match between upstream WSREP and sys-cluster/galera major number
+WSREP_REVISION="25"
+SUBSLOT="19"
+MYSQL_PV_MAJOR="5.6"
+
+MYSLOT="${PN}/${SUBSLOT}"
+
+inherit toolchain-funcs mysql-multilib-r1
+
+HOMEPAGE="http://mariadb.org/"
+DESCRIPTION="An enhanced, drop-in replacement for MySQL"
+LICENSE="GPL-2 LGPL-2.1+"
+
+IUSE="bindist cracklib galera kerberos innodb-lz4 innodb-lzo innodb-snappy mroonga odbc oqgraph pam sphinx sst-rsync sst-xtrabackup tokudb systemd xml"
+RESTRICT="!bindist? ( bindist )"
+
+REQUIRED_USE="server? ( tokudb? ( jemalloc ) ) static? ( !pam ) "
+
+# 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"
+
+MY_PATCH_DIR="${WORKDIR}/mysql-extras-${MY_EXTRAS_VER}"
+
+# "${MY_PATCH_DIR}"/20006_all_cmake_elib-mariadb-10.1.8.patch
+# "${MY_PATCH_DIR}"/20009_all_mariadb_myodbc_symbol_fix-5.5.38.patch
+# "${MY_PATCH_DIR}"/20018_all_mariadb-10.2.2-without-clientlibs-tools.patch
+PATCHES=(
+ "${MY_PATCH_DIR}"/20015_all_mariadb-pkgconfig-location.patch
+)
+
+COMMON_DEPEND="
+ mroonga? ( app-text/groonga-normalizer-mysql )
+ kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
+ systemd? ( sys-apps/systemd:= )
+ !bindist? (
+ sys-libs/binutils-libs:0=
+ >=sys-libs/readline-4.1:0=
+ )
+ server? (
+ cracklib? ( sys-libs/cracklib:0= )
+ extraengine? (
+ odbc? ( dev-db/unixODBC:0= )
+ xml? ( dev-libs/libxml2:2= )
+ )
+ innodb-lz4? ( app-arch/lz4 )
+ innodb-lzo? ( dev-libs/lzo )
+ innodb-snappy? ( app-arch/snappy )
+ oqgraph? ( >=dev-libs/boost-1.40.0:0= dev-libs/judy:0= )
+ pam? ( virtual/pam:0= )
+ tokudb? ( app-arch/snappy )
+ )
+ >=dev-libs/libpcre-8.35:3=
+"
+DEPEND="|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )
+ ${COMMON_DEPEND}"
+RDEPEND="${RDEPEND} ${COMMON_DEPEND}
+ server? ( galera? (
+ sys-apps/iproute2
+ =sys-cluster/galera-${WSREP_REVISION}*
+ sst-rsync? ( sys-process/lsof )
+ sst-xtrabackup? ( net-misc/socat[ssl] )
+ ) )
+ perl? ( !dev-db/mytop
+ virtual/perl-Getopt-Long
+ dev-perl/TermReadKey
+ virtual/perl-Term-ANSIColor
+ virtual/perl-Time-HiRes )
+"
+# 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 ) ) ) )"
+
+MULTILIB_WRAPPED_HEADERS+=( /usr/include/mysql/mysql_version.h
+ /usr/include/mariadb/mariadb_version.h
+ /usr/include/mysql/private/probes_mysql_nodtrace.h
+ /usr/include/mysql/private/probes_mysql_dtrace.h )
+MULTILIB_CHOST_TOOLS=( /usr/bin/mariadb_config /usr/bin/mysql_config )
+
+src_configure(){
+ # bug 508724 mariadb cannot use ld.gold
+ tc-ld-disable-gold
+
+ local MYSQL_CMAKE_NATIVE_DEFINES=(
+ -DWITH_JEMALLOC=$(usex jemalloc system)
+ -DWITH_PCRE=system
+ )
+ local MYSQL_CMAKE_EXTRA_DEFINES=(
+ -DPLUGIN_AUTH_GSSAPI_CLIENT=$(usex kerberos ON OFF)
+ -DAUTH_GSSAPI_PLUGIN_TYPE=$(usex kerberos DYNAMIC OFF)
+ -DCONC_WITH_EXTERNAL_ZLIB=YES
+ -DWITH_EXTERNAL_ZLIB=YES
+ -DSUFFIX_INSTALL_DIR=""
+ -DINSTALL_INCLUDEDIR=include/mariadb
+ -DINSTALL_INFODIR=share/info
+ -DINSTALL_LIBDIR=$(get_libdir)
+ -DINSTALL_ELIBDIR=$(get_libdir)/mariadb
+ -DINSTALL_MANDIR=share/man
+ -DINSTALL_MYSQLSHAREDIR=share/mariadb
+ -DINSTALL_PLUGINDIR=$(get_libdir)/mariadb/plugin
+ -DINSTALL_SCRIPTDIR=share/mariadb/scripts
+ -DINSTALL_SUPPORTFILESDIR="${EPREFIX}/usr/share/mariadb"
+ )
+
+ if use test ; then
+ MYSQL_CMAKE_EXTRA_DEFINES+=( -DINSTALL_MYSQLTESTDIR=share/mariadb/mysql-test )
+ fi
+
+ if use server ; then
+ # Federated{,X} must be treated special otherwise they will not be built as plugins
+ if ! use extraengine ; then
+ MYSQL_CMAKE_NATIVE_DEFINES+=(
+ -DPLUGIN_FEDERATED=NO
+ -DPLUGIN_FEDERATEDX=NO )
+ fi
+
+ MYSQL_CMAKE_NATIVE_DEFINES+=(
+ -DPLUGIN_OQGRAPH=$(usex oqgraph YES NO)
+ -DPLUGIN_SPHINX=$(usex sphinx YES NO)
+ -DPLUGIN_TOKUDB=$(usex tokudb YES NO)
+ -DPLUGIN_AUTH_PAM=$(usex pam YES NO)
+ -DPLUGIN_CRACKLIB_PASSWORD_CHECK=$(usex cracklib YES NO)
+ -DPLUGIN_CASSANDRA=NO
+ -DPLUGIN_SEQUENCE=$(usex extraengine YES NO)
+ -DPLUGIN_SPIDER=$(usex extraengine YES NO)
+ -DPLUGIN_CONNECT=$(usex extraengine YES NO)
+ -DCONNECT_WITH_MYSQL=1
+ -DCONNECT_WITH_LIBXML2=$(usex xml)
+ -DCONNECT_WITH_ODBC=$(usex odbc)
+ -DWITH_WSREP=$(usex galera)
+ -DWITH_INNODB_LZ4=$(usex innodb-lz4)
+ -DWITH_INNODB_LZO=$(usex innodb-lzo)
+ -DWITH_INNODB_SNAPPY=$(usex innodb-snappy)
+ -DPLUGIN_MROONGA=$(usex mroonga YES NO)
+ -DPLUGIN_AUTH_GSSAPI=$(usex kerberos YES NO)
+ -DINSTALL_SQLBENCHDIR=share/mariadb
+ )
+ fi
+ mysql-multilib-r1_src_configure
+}
+
+# Official test instructions:
+# USE='embedded extraengine perl server openssl static-libs' \
+# FEATURES='test userpriv -usersandbox' \
+# ebuild mariadb-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="${BUILD_DIR}/mysql-test"
+ local retstatus_unit
+ local retstatus_tests
+
+ if use server ; then
+
+ # 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."
+ fi
+}
diff --git a/dev-db/mariadb/mariadb-9999.ebuild b/dev-db/mariadb/mariadb-9999.ebuild
index 71781c1..ffc5fbf 100644
--- a/dev-db/mariadb/mariadb-9999.ebuild
+++ b/dev-db/mariadb/mariadb-9999.ebuild
@@ -7,7 +7,7 @@ SERVER_URI=" "
EGIT_REPO_URI="https://github.com/MariaDB/server.git"
# The wsrep API version must match between upstream WSREP and sys-cluster/galera major number
WSREP_REVISION="25"
-SUBSLOT="18"
+SUBSLOT="19"
MYSQL_PV_MAJOR="5.6"
inherit toolchain-funcs mysql-multilib-r1 git-r3