From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id D18DB138D10 for ; Thu, 9 Jul 2015 20:50:43 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 68DB1E0886; Thu, 9 Jul 2015 20:50:43 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 00B80E0886 for ; Thu, 9 Jul 2015 20:50:42 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id EC1E83406F1 for ; Thu, 9 Jul 2015 20:50:41 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 4C427750 for ; Thu, 9 Jul 2015 20:50:40 +0000 (UTC) From: "Brian Evans" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Brian Evans" Message-ID: <1436475191.c2bc2d89cb592aa6c47b16c606cf7a63fc6528d2.grknight@gentoo> Subject: [gentoo-commits] proj/mysql:split-client commit in: dev-db/percona-server/files/, dev-db/percona-server/ X-VCS-Repository: proj/mysql X-VCS-Files: dev-db/percona-server/Manifest dev-db/percona-server/files/without-clientlibs-tools.patch dev-db/percona-server/percona-server-5.6.25.73.0-r1.ebuild X-VCS-Directories: dev-db/percona-server/ dev-db/percona-server/files/ X-VCS-Committer: grknight X-VCS-Committer-Name: Brian Evans X-VCS-Revision: c2bc2d89cb592aa6c47b16c606cf7a63fc6528d2 X-VCS-Branch: split-client Date: Thu, 9 Jul 2015 20:50:40 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: 61a919d9-ddd2-4177-b185-0eb2ea62acc0 X-Archives-Hash: 873f62643de202f7cb34682f53194346 commit: c2bc2d89cb592aa6c47b16c606cf7a63fc6528d2 Author: Brian Evans gentoo org> AuthorDate: Thu Jul 9 20:53:11 2015 +0000 Commit: Brian Evans gentoo org> CommitDate: Thu Jul 9 20:53:11 2015 +0000 URL: https://gitweb.gentoo.org/proj/mysql.git/commit/?id=c2bc2d89 Add patched percona-server dev-db/percona-server/Manifest | 23 +--- .../files/without-clientlibs-tools.patch | 125 +++++++++++++++++ .../percona-server-5.6.25.73.0-r1.ebuild | 152 +++++++++++++++++++++ 3 files changed, 278 insertions(+), 22 deletions(-) diff --git a/dev-db/percona-server/Manifest b/dev-db/percona-server/Manifest index a963e12..5a50dc5 100644 --- a/dev-db/percona-server/Manifest +++ b/dev-db/percona-server/Manifest @@ -1,24 +1,3 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA256 - DIST mysql-extras-20150113-1853Z.tar.bz2 1494439 SHA256 420553dc8557d0622ad762ee6924900acc74fd4f367fd3840acab03114fada4d SHA512 b1252d905b71a6f42484eaa796ebcd2f0769affc566e6c277ef3bc0ef9bc446a1c22aac3faa48ef7b9305056a1302b37d7ef86b547c44514528a5956ce61d372 WHIRLPOOL d14f0d88358eb0bbd2c338052ec086ab8260988497ef09da934365ded3c30c7e905ea936a0c9817ccb49d1f6e3408b3f6a438455a2455c65c2f26a9fc6367ff3 DIST percona-server-5.6.24-72.2.tar.gz 34099689 SHA256 5aa6469f3a55fe0fd1cfe315f2f9cacb0ce318620086c93821c9000d6e25c0de SHA512 46e013b272d96d995af48e0a55c94e7ded1a2cf6e8a4e3c7e1674171ac288e2b211e5761eecbe6f0cacf40a026dccbf102f517745c7c07865165fe3a8e922088 WHIRLPOOL ee200bbf7454c16afb349713ea031e4d8acf4fab2fe3d594336443997c683c0d987704c6a300451d6b77df271e32905ca892753320666438ca797a484a499856 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v2.1 - -iQJ8BAEBCABmBQJVUN8NXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w -ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ2NkMyRTQ0RUQ5MEUzMjc1OEU3RDU1QzBE -MUY3ODFFRkY5RjRBM0I2AAoJENH3ge/59KO2O1YP/2O4khQweEP8zW2elsXL1r54 -FVZaNfi0iynsHYWZYqto/jp8lYgCQEnBLob1W1zcjYF8SMv8qPJkDwJlvteZ3lT8 -oFJ2lvGiLaIQISRke3nL/6G65RkAJEAC31OZr5oxO7gh9hXND17QXvEm+f6/k3Gy -yrWRrQDblWHt+ayc6T/Jxn1EIvG/RQWe7nCS7RhlDnzme9kJ569y8K+I2eRHyQvh -DOJzxDmtvUKqRIR/+gwI6ktScK73USqTI/AXDBDzY89WPqsDprJGRZYqb+ANYiHV -7mMzIz64LRczamtJ1bbmvDd5X/uqVx8lvcHSfyUrcUYhvTX80zXyS2B848w91sz1 -A+Vo9IP0vm+i06dl/z6CyfaSRIfDkPQXPmq66pQm/DGiKrUJa3PTUrX4TlYhbhip -ZQV5tNaoKUEP5DWNPOvovSHCoa8HR33y0YMII6eLD4zVF0r2VnQHLEwBzvovPd3O -HvCZNtOWnK1WtrqTPjZcwRYbuNaLvcZa7UULLSGV69dcj7agfmUQCpOqC9w4goNZ -WZ0ztgZJ/9xE6scBkxMNMzjwWgwFzq5DzUfkv8LCGvNDyherUWwbwz0LM9OqareL -F5AQOecaFehLb3DghcmKkMSR0aYqD+RaUaaymPH0rcUfqWxvzalQ2YfI4GHFTJPI -WNxXBEPTrFRvYAGMVu+T -=ckpy ------END PGP SIGNATURE----- +DIST percona-server-5.6.25-73.0.tar.gz 34152178 SHA256 790d056931b9dd5b158a732812490fdaf9407012aaf93d3f1c1b21942dcdc251 SHA512 9bb4ee29ceb7e80460d2ffa779ca0aefaa6c0af1c4e5309c1c5f37840da4e85da1196a936e1862bacb3f36d064a6dcb6ad45b3eb55f60b033f2741ec6b487b9d WHIRLPOOL 76c59da78fda5cf70802117e59ceb0a877513ed83b0069c6d5a3f169595eac43516897bc02c092caa71cb059424ed3d4cbb97133c6946f870ab7734e8ca7a282 diff --git a/dev-db/percona-server/files/without-clientlibs-tools.patch b/dev-db/percona-server/files/without-clientlibs-tools.patch new file mode 100644 index 0000000..d6d21ad --- /dev/null +++ b/dev-db/percona-server/files/without-clientlibs-tools.patch @@ -0,0 +1,125 @@ +diff -aurN a/CMakeLists.txt b/CMakeLists.txt +--- a/CMakeLists.txt 2015-07-09 09:04:00.118091000 -0400 ++++ b/CMakeLists.txt 2015-07-09 09:17:06.291091000 -0400 +@@ -405,8 +405,6 @@ + MYSQL_CHECK_ZLIB_WITH_COMPRESS() + # Add bundled yassl/taocrypt or system openssl. + MYSQL_CHECK_SSL() +-# Add system/bundled editline. +-MYSQL_CHECK_EDITLINE() + # Add libevent + MYSQL_CHECK_LIBEVENT() + +@@ -436,7 +434,10 @@ + ADD_SUBDIRECTORY(storage/ndb) + ENDIF() + +-ADD_SUBDIRECTORY(include) ++IF(NOT WITHOUT_CLIENTLIBS) ++ ADD_SUBDIRECTORY(include) ++ENDIF(NOT WITHOUT_CLIENTLIBS) ++ + ADD_SUBDIRECTORY(dbug) + ADD_SUBDIRECTORY(strings) + ADD_SUBDIRECTORY(vio) +@@ -462,7 +463,6 @@ + ENDIF() + + ADD_SUBDIRECTORY(extra) +-ADD_SUBDIRECTORY(client) + ADD_SUBDIRECTORY(sql/share) + ADD_SUBDIRECTORY(libservices) + +@@ -470,11 +470,20 @@ + ADD_SUBDIRECTORY(man) + ENDIF() + ++IF(NOT WITHOUT_TOOLS) ++ # Add system/bundled editline ++ MYSQL_CHECK_EDITLINE() ++ ADD_SUBDIRECTORY(client) ++ENDIF(NOT WITHOUT_TOOLS) ++ + IF(NOT WITHOUT_SERVER) + ADD_SUBDIRECTORY(tests) + ADD_SUBDIRECTORY(sql) + OPTION (WITH_EMBEDDED_SERVER "Compile MySQL with embedded server" OFF) + IF(WITH_EMBEDDED_SERVER) ++ IF(WITHOUT_TOOLS) ++ MYSQL_CHECK_EDITLINE() ++ ENDIF(WITHOUT_TOOLS) + ADD_SUBDIRECTORY(libmysqld) + ADD_SUBDIRECTORY(libmysqld/examples) + ENDIF(WITH_EMBEDDED_SERVER) +diff -aurN a/extra/CMakeLists.txt b/extra/CMakeLists.txt +--- a/extra/CMakeLists.txt 2015-05-05 07:05:53.000000000 -0400 ++++ b/extra/CMakeLists.txt 2015-07-09 09:18:16.982091000 -0400 +@@ -59,15 +59,16 @@ + ADD_DEPENDENCIES(GenError copy_openssl_extra) + ENDIF() + ++IF(NOT WITHOUT_CLIENTLIBS) ++ MYSQL_ADD_EXECUTABLE(my_print_defaults my_print_defaults.c) ++ TARGET_LINK_LIBRARIES(my_print_defaults mysys mysys_ssl) ++ SET_TARGET_PROPERTIES(my_print_defaults PROPERTIES LINKER_LANGUAGE CXX) + +-MYSQL_ADD_EXECUTABLE(my_print_defaults my_print_defaults.c) +-TARGET_LINK_LIBRARIES(my_print_defaults mysys mysys_ssl) +-SET_TARGET_PROPERTIES(my_print_defaults PROPERTIES LINKER_LANGUAGE CXX) +- +-MYSQL_ADD_EXECUTABLE(perror perror.c) +-ADD_DEPENDENCIES(perror GenError) +-TARGET_LINK_LIBRARIES(perror mysys mysys_ssl) +-SET_TARGET_PROPERTIES(perror PROPERTIES LINKER_LANGUAGE CXX) ++ MYSQL_ADD_EXECUTABLE(perror perror.c) ++ ADD_DEPENDENCIES(perror GenError) ++ TARGET_LINK_LIBRARIES(perror mysys mysys_ssl) ++ SET_TARGET_PROPERTIES(perror PROPERTIES LINKER_LANGUAGE CXX) ++ENDIF(NOT WITHOUT_CLIENTLIBS) + + MYSQL_ADD_EXECUTABLE(resolveip resolveip.c) + TARGET_LINK_LIBRARIES(resolveip mysys mysys_ssl) +diff -aurN a/libmysql/CMakeLists.txt b/libmysql/CMakeLists.txt +--- a/libmysql/CMakeLists.txt 2015-07-09 09:04:01.217091000 -0400 ++++ b/libmysql/CMakeLists.txt 2015-07-09 09:22:47.903091000 -0400 +@@ -217,14 +217,14 @@ + + IF(UNIX) + GET_TARGET_NAME(perconaserverclient lib_name) +- IF(ENABLE_STATIC_LIBS) ++ IF(ENABLE_STATIC_LIBS AND NOT WITHOUT_CLIENTLIBS) + INSTALL_SYMLINK(perconaserverclient + ${lib_name} ${CMAKE_STATIC_LIBRARY_PREFIX}perconaserverclient_r.a + ${INSTALL_LIBDIR} Development) + ENDIF() + ENDIF() + +-IF(NOT DISABLE_SHARED) ++IF(NOT DISABLE_SHARED AND NOT WITHOUT_CLIENTLIBS) + # Merge several convenience libraries into one big perconaserverclient + # and link them together into shared library. + MERGE_LIBRARIES(libmysql SHARED ${LIBS} +diff -aurN a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt +--- a/scripts/CMakeLists.txt 2015-07-09 09:04:00.401091000 -0400 ++++ b/scripts/CMakeLists.txt 2015-07-09 09:20:25.723091000 -0400 +@@ -347,7 +347,6 @@ + SET(mysql_config_COMPONENT COMPONENT Development) + SET(BIN_SCRIPTS + msql2mysql +- mysql_config + mysql_fix_extensions + mysql_setpermission + mysql_zap +@@ -360,6 +359,12 @@ + mysqld_multi + mysqld_safe + ) ++ IF(NOT WITHOUT_CLIENTLIBS) ++ SET(BIN_SCRIPTS ++ ${BIN_SCRIPTS} ++ mysql_config ++ ) ++ ENDIF(NOT WITHOUT_CLIENTLIBS) + FOREACH(file ${BIN_SCRIPTS}) + IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh) + CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh diff --git a/dev-db/percona-server/percona-server-5.6.25.73.0-r1.ebuild b/dev-db/percona-server/percona-server-5.6.25.73.0-r1.ebuild new file mode 100644 index 0000000..d089f8c --- /dev/null +++ b/dev-db/percona-server/percona-server-5.6.25.73.0-r1.ebuild @@ -0,0 +1,152 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-db/percona-server/percona-server-5.6.25.73.0.ebuild,v 1.1 2015/07/06 18:00:05 grknight Exp $ + +EAPI="5" +MY_EXTRAS_VER="20150113-1853Z" +HAS_TOOLS_PATCH="1" + +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 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd ~x86-linux" + +# 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}" + +# 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_src_prepare + einfo "Applying experimental tools patch" + epatch "${FILESDIR}/without-clientlibs-tools.patch" +} + +# Official test instructions: +# USE='extraengine perl ssl static-libs community' \ +# FEATURES='test userpriv -usersandbox' \ +# ebuild percona-server-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}" + 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 right out of order + mkdir -p "${T}"/var-tests{,/log} + + # Create a symlink to provided binaries so the tests can find them when client-libs is off + if ! use client-libs ; then + ln -srf /usr/bin/my_print_defaults "${BUILD_DIR}/client/my_print_defaults" || die + ln -srf /usr/bin/perror "${BUILD_DIR}/client/perror" || die + mysql-multilib_disable_test main.perror "String mismatch due to not building local perror" + fi + + # These are failing in Percona 5.6 for now and are believed to be + # false positives: + # + # main.information_schema, binlog.binlog_statement_insert_delayed, + # main.mysqld--help-notwin, binlog.binlog_mysqlbinlog_filter + # perfschema.binlog_edge_mix, perfschema.binlog_edge_stmt + # funcs_1.is_columns_mysql funcs_1.is_tables_mysql funcs_1.is_triggers + # engines/funcs.db_alter_character_set engines/funcs.db_alter_character_set_collate + # engines/funcs.db_alter_collate_ascii engines/funcs.db_alter_collate_utf8 + # engines/funcs.db_create_character_set engines/funcs.db_create_character_set_collate + # fails due to USE=-latin1 / utf8 default + # + # main.mysql_client_test: + # segfaults at random under Portage only, suspect resource limits. + # + # main.percona_bug1289599 + # Looks to be a syntax error in the test file itself + # + # main.variables main.myisam main.merge_recover + # fails due to ulimit not able to open enough files (needs 5000) + # + # main.mysqlhotcopy_archive main.mysqlhotcopy_myisam + # Called with bad parameters should be reported upstream + + for t in main.mysql_client_test \ + binlog.binlog_statement_insert_delayed main.information_schema \ + main.mysqld--help-notwin binlog.binlog_mysqlbinlog_filter \ + perfschema.binlog_edge_mix perfschema.binlog_edge_stmt \ + funcs_1.is_columns_mysql funcs_1.is_tables_mysql funcs_1.is_triggers \ + main.variables main.myisam main.merge_recover \ + engines/funcs.db_alter_character_set engines/funcs.db_alter_character_set_collate \ + engines/funcs.db_alter_collate_ascii engines/funcs.db_alter_collate_utf8 \ + engines/funcs.db_create_character_set engines/funcs.db_create_character_set_collate \ + main.percona_bug1289599 main.mysqlhotcopy_archive main.mysqlhotcopy_myisam ; do + mysql-multilib_disable_test "$t" "False positives in Gentoo" + done + + # Run mysql tests + pushd "${TESTDIR}" + + # Set file limits higher so tests run + ulimit -n 3000 + + # run mysql-test tests + perl mysql-test-run.pl --force --vardir="${T}/var-tests" \ + --testcase-timeout=30 + 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 +}