diff options
author | Thomas Deutschmann <whissi@gentoo.org> | 2021-02-12 01:11:44 +0100 |
---|---|---|
committer | Thomas Deutschmann <whissi@gentoo.org> | 2021-02-12 01:11:50 +0100 |
commit | 3925d2fe5eef1e63602a4f520028aa55dca3df08 (patch) | |
tree | 88b376727ad806579a3f302cedfca7a5fa974196 /dev-db | |
parent | percona-server: Drop elog reference to virtual/libmysqlclient (diff) | |
download | mysql-master.tar.gz mysql-master.tar.bz2 mysql-master.zip |
Package-Manager: Portage-3.0.14, Repoman-3.0.2
Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
Diffstat (limited to 'dev-db')
93 files changed, 0 insertions, 13564 deletions
diff --git a/dev-db/mariadb-connector-c/ChangeLog b/dev-db/mariadb-connector-c/ChangeLog deleted file mode 100644 index 3c5efcc..0000000 --- a/dev-db/mariadb-connector-c/ChangeLog +++ /dev/null @@ -1,40 +0,0 @@ - 25 Apr 2017; Brian Evans <grknight@gentoo.org> - mariadb-connector-c-3.0.1_beta.ebuild: - dev-db/mariadb-connector-c: Fix up mysqlcompat USE installs - -*mariadb-connector-c-3.0.1_beta (25 Apr 2017) - - 25 Apr 2017; Brian Evans <grknight@gentoo.org> +files/gentoo-layout-3.0.patch, - +mariadb-connector-c-3.0.1_beta.ebuild: - dev-db/mariadb-connector-c: Version bump to 3.0.1_beta - -*mariadb-connector-c-2.2.2 (13 Feb 2016) - - 13 Feb 2016; Brian Evans <grknight@gentoo.org> - +files/gentoo-layout-2.2.2.patch, +mariadb-connector-c-2.2.2.ebuild: - dev-db/mariadb-connector-c: Version bump - - 15 Aug 2015; Brian Evans <grknight@gentoo.org> - mariadb-connector-c-2.0.0-r1.ebuild, mariadb-connector-c-2.1.0.ebuild, - mariadb-connector-c-9999.ebuild: - dev-db/mariadb-connector-c: fix QA inherit wrt bug 557730 - -*mariadb-native-client-2.0.0 (29 Apr 2014) - - 29 Apr 2014; Brian Evans <grknight@tuffmail.com> +files/fix-libdir.patch, - +files/fix-mariadb_config.patch, +mariadb-native-client-2.0.0.ebuild: - Version bump for 2.0.0 - -*mariadb-native-client-9999 (26 Jun 2013) - - 26 Jun 2013; Brian Evans <grknight@lavabit.com> - +mariadb-native-client-9999.ebuild, mariadb-native-client-1.0.ebuild, - metadata.xml: - Add live ebuild with mysqlcompat feature, optional ssl support and external - zlib - -*mariadb-native-client-1.0 (22 May 2013) - - 22 May 2013; <grknight@lavabit.com> +files/multilib-install.patch, - +mariadb-native-client-1.0.ebuild, +metadata.xml: - Add new C library for MySQL diff --git a/dev-db/mariadb-connector-c/Manifest b/dev-db/mariadb-connector-c/Manifest deleted file mode 100644 index 96c1c73..0000000 --- a/dev-db/mariadb-connector-c/Manifest +++ /dev/null @@ -1,23 +0,0 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA256 - -DIST mariadb-connector-c-2.2.2-src.tar.gz 519724 SHA256 93f56ad9f08bbaf0da8ef03bc96f7093c426ae40dede60575d485e1b99e6406b SHA512 8e7b35345de3ae3902b74613646c17641e441548ec87eb97c635c98dcddb0862411a625d9e82ba62324babe21d0d099a241b074826f0b396b425a80e714dd355 WHIRLPOOL e09d535186726cad6c880327e2045176a8bc773675381262bcff071ecccbdaa6b2fc802250cedf9d3a5f8848fa178fba9a8e236e3d3d988800826176376b91b1 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v2 - -iQKTBAEBCAB9FiEEZsLkTtkOMnWOfVXA0feB7/n0o7YFAlvGkfJfFIAAAAAALgAo -aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDY2 -QzJFNDRFRDkwRTMyNzU4RTdENTVDMEQxRjc4MUVGRjlGNEEzQjYACgkQ0feB7/n0 -o7aOZg/+N0nU88jEV2GjbwsxV98LaGTSYNlNzGT84WL9G2dHjxXodI6eli7tfjXf -BufXEXqrS6VahipTya6JCG4P/z+06AvpA7ZHCUZkJ/m88gnDQ5vdMnjFYVfm7iVO -ODA4mzPcdJ1ah6OeRYsk1kqFqFLhr40weDSMwTjbLAm1771RVzJSkz0L7acRF+WE -F960IK1WaWY9K0D/nRb0VgCckfcLOHQBUsNmQru/QopI196thCP9wnaQQWFyqjIL -pbduyvBc3rPmTeBo+Gm3R2F2rqy2tyxccmYpoYERbYNomuUnSo9Lgo9qe+yRhKXf -hleNchUqUFNYnwvCAx42SU2CNxzBufTVJyTvCvFq1PcUwlVGq+3VIaElwcspzo5f -8eiORT66BM5lV79eG1Tqj4P+ctwIKp3Mq89pfwT9IjgZljDukz56fgZQvDFZQkqs -dZhQoyV7rLx+VKwj/s4k58B8o7kS7IDrCqMhTcwsZJ/gn2xRqeIMUxWxJgnndAZE -5lPHf+/johpj8Zffhd4ehFSe9A4oyAP3BUdndScSixqY58F+f4S5MN32ZHELLng3 -3NO/a4kUcMZ0nF8B4LXygQciKBqMJVp3N+xUL3sKH33ZfJl+PHv5JEvKkaa4JZLT -zbIg5aV+znJR7sdyQWcBE31NYnyJphcz6riROk9KK78d2Zvp3s8= -=BD3O ------END PGP SIGNATURE----- diff --git a/dev-db/mariadb-connector-c/files/fix-libdir.patch b/dev-db/mariadb-connector-c/files/fix-libdir.patch deleted file mode 100644 index c7ade92..0000000 --- a/dev-db/mariadb-connector-c/files/fix-libdir.patch +++ /dev/null @@ -1,58 +0,0 @@ -diff -aurN mariadb_client-2.0.0-src/CMakeLists.txt mariadb_client-2.0.0-src.new/CMakeLists.txt ---- mariadb_client-2.0.0-src/CMakeLists.txt 2014-04-01 11:14:40.000000000 -0400 -+++ mariadb_client-2.0.0-src.new/CMakeLists.txt 2014-04-03 16:12:55.163032445 -0400 -@@ -27,8 +27,19 @@ - - OPTION(WITH_SQLITE "Enables Sqlite support" OFF) - OPTION(WITH_EXTERNAL_ZLIB "Enables use of external zlib" OFF) -+OPTION(INSTALL_LIBDIR "Library install location" OFF) - ############### - -+IF(NOT INSTALL_LIBDIR) -+ # Some distros can set this in a global cmake config -+ IF(CMAKE_INSTALL_LIBDIR) -+ SET(INSTALL_LIBDIR "${CMAKE_INSTALL_LIBDIR}") -+ ELSE() -+ # Provide a sane default -+ SET(INSTALL_LIBDIR "lib/mariadb") -+ ENDIF() -+ENDIF() -+ - IF(WITH_RTC) - SET(RTC_OPTIONS "/RTC1 /RTCc") - ENDIF() -diff -aurN mariadb_client-2.0.0-src/libmariadb/CMakeLists.txt mariadb_client-2.0.0-src.new/libmariadb/CMakeLists.txt ---- mariadb_client-2.0.0-src/libmariadb/CMakeLists.txt 2014-03-18 11:01:05.000000000 -0400 -+++ mariadb_client-2.0.0-src.new/libmariadb/CMakeLists.txt 2014-04-03 16:15:49.417626907 -0400 -@@ -210,15 +210,15 @@ - - INSTALL(TARGETS - libmariadb mariadbclient -- RUNTIME DESTINATION "lib/mariadb" -- LIBRARY DESTINATION "lib/mariadb" -- ARCHIVE DESTINATION "lib/mariadb") -+ RUNTIME DESTINATION "${INSTALL_LIBDIR}" -+ LIBRARY DESTINATION "${INSTALL_LIBDIR}" -+ ARCHIVE DESTINATION "${INSTALL_LIBDIR}") - IF(NOT WIN32 AND WITH_MYSQLCOMPAT) - INSTALL(FILES "${CMAKE_BINARY_DIR}/libmariadb/libmysql${CMAKE_SHARED_LIBRARY_SUFFIX}" - "${CMAKE_BINARY_DIR}/libmariadb/libmysqlclient${CMAKE_SHARED_LIBRARY_SUFFIX}" - "${CMAKE_BINARY_DIR}/libmariadb/libmysqlclient_r${CMAKE_SHARED_LIBRARY_SUFFIX}" - "${CMAKE_BINARY_DIR}/libmariadb/libmysqlclient${CMAKE_STATIC_LIBRARY_SUFFIX}" -- DESTINATION lib/mariadb) -+ DESTINATION ${INSTALL_LIBDIR}) - ENDIF() - - INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/include/ -diff -aurN mariadb_client-2.0.0-src/mariadb_config/mariadb_config.c.in mariadb_client-2.0.0-src.new/mariadb_config/mariadb_config.c.in ---- mariadb_client-2.0.0-src/mariadb_config/mariadb_config.c.in 2014-03-18 11:01:05.000000000 -0400 -+++ mariadb_client-2.0.0-src.new/mariadb_config/mariadb_config.c.in 2014-04-03 16:16:52.455669572 -0400 -@@ -4,7 +4,7 @@ - #include <stdio.h> - - #define INCLUDE "-I@CMAKE_INSTALL_PREFIX@/include/mariadb" --#define LIBS "-L@CMAKE_INSTALL_PREFIX@/lib/mariadb -lmariadb" \ -+#define LIBS "-L@CMAKE_INSTALL_PREFIX@/@INSTALL_LIBDIR@ -lmariadb" \ - "@extra_dynamic_LDFLAGS@" - #define CFLAGS INCLUDE "@CMAKE_C_FLAGS@" - #define VERSION "@MYSQL_CLIENT_VERSION@" diff --git a/dev-db/mariadb-connector-c/files/fix-mariadb_config-2.1.0.patch b/dev-db/mariadb-connector-c/files/fix-mariadb_config-2.1.0.patch deleted file mode 100644 index e5bbce3..0000000 --- a/dev-db/mariadb-connector-c/files/fix-mariadb_config-2.1.0.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -aruN a/mariadb_config/mariadb_config.c.in b/mariadb_config/mariadb_config.c.in ---- a/mariadb_config/mariadb_config.c.in 2015-01-29 13:21:48.000000000 -0500 -+++ b/mariadb_config/mariadb_config.c.in 2015-01-30 13:03:01.312548413 -0500 -@@ -6,7 +6,7 @@ - #define INCLUDE "-I@PREFIX_INSTALL_DIR@/@INCLUDE_INSTALL_DIR@/@SUFFIX_INSTALL_DIR@ -I@PREFIX_INSTALL_DIR@/@INCLUDE_INSTALL_DIR@/@SUFFIX_INSTALL_DIR@/mysql" - #define LIBS "-L@PREFIX_INSTALL_DIR@/@LIB_INSTALL_DIR@/@SUFFIX_INSTALL_DIR@ -lmariadb" \ - "@extra_dynamic_LDFLAGS@" --#define CFLAGS INCLUDE " @CMAKE_C_FLAGS@" -+#define CFLAGS INCLUDE - #define VERSION "@MYSQL_CLIENT_VERSION@" - #define PLUGIN_DIR "@PREFIX_INSTALL_DIR@/@PLUGIN_INSTALL_DIR@" - #define SOCKET "@MYSQL_UNIX_ADDR@" diff --git a/dev-db/mariadb-connector-c/files/fix-mariadb_config.patch b/dev-db/mariadb-connector-c/files/fix-mariadb_config.patch deleted file mode 100644 index 444c877..0000000 --- a/dev-db/mariadb-connector-c/files/fix-mariadb_config.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff -aurN a/mariadb_config/CMakeLists.txt b/mariadb_config/CMakeLists.txt ---- a/mariadb_config/CMakeLists.txt 2014-04-29 12:44:35.309693578 -0400 -+++ b/mariadb_config/CMakeLists.txt 2014-04-29 12:43:25.511924411 -0400 -@@ -19,7 +19,8 @@ - SEARCH_LIBRARY(LIBDL dlopen "dl") - SEARCH_LIBRARY(LIBM floor m) - FOREACH(lib ${EXTRA_LIBS}) -- SET(extra_dynamic_LDFLAGS "${extra_dynamic_LDFLAGS} -l${lib}") -+ STRING(REPLACE "-l" "" clean_lib ${lib}) -+ SET(extra_dynamic_LDFLAGS "${extra_dynamic_LDFLAGS} -l${clean_lib}") - ENDFOREACH() - IF(WITH_SQLITE) - SET(extra_dynamic_LDFLAGS "${extra_dynamic_LDFLAGS} -lsqlite") -diff -aurN a/mariadb_config/mariadb_config.c.in b/mariadb_config/mariadb_config.c.in ---- a/mariadb_config/mariadb_config.c.in 2014-04-29 12:44:22.320108741 -0400 -+++ b/mariadb_config/mariadb_config.c.in 2014-04-29 12:41:54.934819014 -0400 -@@ -6,7 +6,7 @@ - #define INCLUDE "-I@CMAKE_INSTALL_PREFIX@/include/mariadb" - #define LIBS "-L@CMAKE_INSTALL_PREFIX@/@INSTALL_LIBDIR@ -lmariadb" \ - "@extra_dynamic_LDFLAGS@" --#define CFLAGS INCLUDE "@CMAKE_C_FLAGS@" -+#define CFLAGS INCLUDE " @CMAKE_C_FLAGS@" - #define VERSION "@MYSQL_CLIENT_VERSION@" - #define SOCKET "@MYSQL_UNIX_ADDR@" - #define PORT "@MYSQL_PORT@" diff --git a/dev-db/mariadb-connector-c/files/gentoo-layout-2.2.2.patch b/dev-db/mariadb-connector-c/files/gentoo-layout-2.2.2.patch deleted file mode 100644 index dd43133..0000000 --- a/dev-db/mariadb-connector-c/files/gentoo-layout-2.2.2.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -aurN a/cmake/install.cmake b/cmake/install.cmake ---- a/cmake/install.cmake 2015-12-08 02:50:35.000000000 -0500 -+++ b/cmake/install.cmake 2016-02-12 21:40:46.599011426 -0500 -@@ -120,12 +120,6 @@ - SET(PREFIX_INSTALL_DIR_${INSTALL_LAYOUT} ${PREFIX_INSTALL_DIR}) - ENDIF() - --IF(NOT SUFFIX_INSTALL_DIR) -- SET(SUFFIX_INSTALL_DIR_${INSTALL_LAYOUT} "mariadb") --ELSE() -- SET(SUFFIX_INSTALL_DIR_${INSTALL_LAYOUT} ${SUFFIX_INSTALL_DIR}) --ENDIF() -- - FOREACH(dir "BIN" "LIB" "INCLUDE" "DOCS" "PREFIX" "SUFFIX" "PLUGIN") - SET(${dir}_INSTALL_DIR ${${dir}_INSTALL_DIR_${INSTALL_LAYOUT}}) - MARK_AS_ADVANCED(${dir}_INSTALL_DIR) ---- a/mariadb_config/CMakeLists.txt 2016-02-12 21:21:06.981021227 -0500 -+++ b/mariadb_config/CMakeLists.txt 2016-02-12 22:06:02.397130410 -0500 -@@ -33,4 +33,4 @@ - # Installation - # - INSTALL(TARGETS mariadb_config -- DESTINATION "bin") -+ DESTINATION ${BIN_INSTALL_DIR}) diff --git a/dev-db/mariadb-connector-c/files/gentoo-layout-3.0.patch b/dev-db/mariadb-connector-c/files/gentoo-layout-3.0.patch deleted file mode 100644 index b57b7ab..0000000 --- a/dev-db/mariadb-connector-c/files/gentoo-layout-3.0.patch +++ /dev/null @@ -1,9 +0,0 @@ ---- a/mariadb_config/CMakeLists.txt 2016-02-12 21:21:06.981021227 -0500 -+++ b/mariadb_config/CMakeLists.txt 2016-02-12 22:06:02.397130410 -0500 -@@ -40,5 +44,5 @@ - # Installation - # - INSTALL(TARGETS mariadb_config -- DESTINATION "bin" -+ DESTINATION ${INSTALL_BINDIR} - COMPONENT Development) diff --git a/dev-db/mariadb-connector-c/files/gentoo-layout.patch b/dev-db/mariadb-connector-c/files/gentoo-layout.patch deleted file mode 100644 index 5663a37..0000000 --- a/dev-db/mariadb-connector-c/files/gentoo-layout.patch +++ /dev/null @@ -1,60 +0,0 @@ -diff -uarN a/cmake/install.cmake b/cmake/install.cmake ---- a/cmake/install.cmake 2015-01-29 13:21:48.000000000 -0500 -+++ b/cmake/install.cmake 2015-03-18 14:43:14.682768210 -0400 -@@ -39,12 +39,14 @@ - ENDIF() - - SET(INSTALL_LAYOUT ${INSTALL_LAYOUT} CACHE -- STRING "Installation layout. Currently supported options are DEFAULT (tar.gz and zip) and RPM") -+ STRING "Installation layout. Currently supported options are DEFAULT (tar.gz and zip), GENTOO, and RPM") - - # On Windows we only provide zip and .msi. Latter one uses a different packager. - IF(UNIX) - IF(INSTALL_LAYOUT MATCHES "RPM") - SET(libmariadb_prefix "/usr") -+ ELSEIF(INSTALL_LAYOUT MATCHES "GENTOO") -+ SET(libmariadb_prefix ${CMAKE_INSTALL_PREFIX}) - ELSEIF(INSTALL_LAYOUT MATCHES "DEFAULT") - SET(libmariadb_prefix ${CMAKE_INSTALL_PREFIX}) - ENDIF() -@@ -55,7 +57,7 @@ - ENDIF() - - # check if the specified installation layout is valid --SET(VALID_INSTALL_LAYOUTS "DEFAULT" "RPM") -+SET(VALID_INSTALL_LAYOUTS "DEFAULT" "RPM" "GENTOO") - LIST(FIND VALID_INSTALL_LAYOUTS "${INSTALL_LAYOUT}" layout_no) - IF(layout_no EQUAL -1) - MESSAGE(FATAL_ERROR "Invalid installation layout. Please specify one of the following layouts: ${VALID_INSTALL_LAYOUTS}") -diff -uarN a/cmake/install.cmake b/cmake/install.cmake ---- a/cmake/install.cmake 2015-01-29 13:21:48.000000000 -0500 -+++ b/cmake/install.cmake 2015-03-18 14:39:35.240617655 -0400 -@@ -79,6 +79,16 @@ - SET(PLUGIN_INSTALL_DIR_DEFAULT "lib/plugin") - - # -+# Gentoo layout -+# -+SET(SUFFIX_INSTALL_DIR_GENTOO "") -+SET(BIN_INSTALL_DIR_GENTOO "bin") -+SET(LIB_INSTALL_DIR_GENTOO "lib") -+SET(INCLUDE_INSTALL_DIR_GENTOO "include/mariadb") -+SET(DOCS_INSTALL_DIR_GENTOO "share/docs") -+SET(PLUGIN_INSTALL_DIR_GENTOO "lib/mariadb/plugin") -+ -+# - # RPM layout - # - SET(SUFFIX_INSTALL_DIR_RPM "mariadb") -diff -uarN a/cmake/install.cmake b/cmake/install.cmake ---- a/cmake/install.cmake 2015-01-29 13:21:48.000000000 -0500 -+++ b/cmake/install.cmake 2015-03-18 14:31:56.156920869 -0400 -@@ -118,8 +118,5 @@ - SET(PREFIX_INSTALL_DIR_${INSTALL_LAYOUT} ${libmariadb_prefix}) - ENDIF() - --IF(NOT SUFFIX_INSTALL_DIR) -- SET(SUFFIX_INSTALL_DIR_${INSTALL_LAYOUT} "mariadb") --ENDIF() - - FOREACH(dir "BIN" "LIB" "INCLUDE" "DOCS" "PREFIX" "SUFFIX" "PLUGIN") diff --git a/dev-db/mariadb-connector-c/files/multilib-install.patch b/dev-db/mariadb-connector-c/files/multilib-install.patch deleted file mode 100644 index 6dfa270..0000000 --- a/dev-db/mariadb-connector-c/files/multilib-install.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -aruN a/CMakeLists.txt b/CMakeLists.txt ---- a/libmysql/CMakeLists.txt 2013-05-17 14:16:47.621519747 -0400 -+++ b/libmysql/CMakeLists.txt 2013-05-17 14:18:04.570428917 -0400 -@@ -166,9 +166,9 @@ - - INSTALL(TARGETS - libmariadb mariadbclient -- RUNTIME DESTINATION "lib" -- LIBRARY DESTINATION "lib" -- ARCHIVE DESTINATION "lib") -+ RUNTIME DESTINATION "${CMAKE_INSTALL_LIBDIR}" -+ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" -+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}") - - INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/include - DESTINATION mariadbclient) diff --git a/dev-db/mariadb-connector-c/mariadb-connector-c-2.2.2.ebuild b/dev-db/mariadb-connector-c/mariadb-connector-c-2.2.2.ebuild deleted file mode 100644 index 882ee60..0000000 --- a/dev-db/mariadb-connector-c/mariadb-connector-c-2.2.2.ebuild +++ /dev/null @@ -1,71 +0,0 @@ -# Copyright 1999-2018 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -VCS_INHERIT="" -if [[ "${PV}" == 9999 ]] ; then - VCS_INHERIT="git-r3" - EGIT_REPO_URI="https://github.com/MariaDB/connector-c.git" - KEYWORDS="" -else - MY_PN=${PN#mariadb-} - SRC_URI="https://downloads.mariadb.org/f/${MY_PN}-${PV}/${P}-src.tar.gz?serve -> ${P}-src.tar.gz" - S="${WORKDIR}" - KEYWORDS="~amd64 ~x86" -fi - -inherit cmake-utils multilib-minimal ${VCS_INHERIT} - -MULTILIB_CHOST_TOOLS=( /usr/sbin/mariadb_config ) - -MULTILIB_WRAPPED_HEADERS+=( - /usr/include/mariadb/my_config.h -) - -DESCRIPTION="C client library for MariaDB/MySQL" -HOMEPAGE="http://mariadb.org/" -LICENSE="LGPL-2.1" - -SLOT="0/2" -IUSE="mysqlcompat +ssl static-libs" - -DEPEND="sys-libs/zlib:=[${MULTILIB_USEDEP}] - virtual/libiconv:=[${MULTILIB_USEDEP}] - ssl? ( dev-libs/openssl:0=[${MULTILIB_USEDEP}] ) - " -RDEPEND="${DEPEND} - mysqlcompat? ( - !dev-db/mysql - !dev-db/mysql-cluster - !dev-db/mariadb - !dev-db/mariadb-galera - !dev-db/percona-server - !dev-db/mysql-connector-c ) - " -PATCHES=( "${FILESDIR}/fix-mariadb_config-2.1.0.patch" - "${FILESDIR}/gentoo-layout-2.2.2.patch" ) - -multilib_src_configure() { - mycmakeargs+=( - -DMYSQL_UNIX_ADDR="${EPREFIX}/var/run/mysqld/mysqld.sock" - -DWITH_EXTERNAL_ZLIB=ON - -DWITH_OPENSSL=$(usex ssl ON OFF) - -DWITH_MYSQLCOMPAT=$(usex mysqlcompat ON OFF) - -DLIB_INSTALL_DIR=$(get_libdir) - -DPLUGIN_INSTALL_DIR=$(get_libdir)/mariadb/plugin - -DDOCS_INSTALL_DIR=share/docs - -DBIN_INSTALL_DIR=sbin - ) - cmake-utils_src_configure -} - -multilib_src_install_all() { - if ! use static-libs ; then - find "${D}" -name "*.a" -delete || die - fi - if use mysqlcompat ; then - dosym ../sbin/mariadb_config /usr/bin/mysql_config - dosym mariadb /usr/include/mysql - fi -} diff --git a/dev-db/mariadb-connector-c/mariadb-connector-c-9999.ebuild b/dev-db/mariadb-connector-c/mariadb-connector-c-9999.ebuild deleted file mode 100644 index c45c245..0000000 --- a/dev-db/mariadb-connector-c/mariadb-connector-c-9999.ebuild +++ /dev/null @@ -1,76 +0,0 @@ -# Copyright 1999-2018 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -VCS_INHERIT="" -if [[ "${PV}" == 9999 ]] ; then - VCS_INHERIT="git-r3" - EGIT_REPO_URI="https://github.com/MariaDB/mariadb-connector-c.git" - KEYWORDS="" -else - MY_PN=${PN#mariadb-} - SRC_URI=" - http://ftp.osuosl.org/pub/mariadb/${MY_PN}-${PV}/source-tgz/${P}-src.tar.gz - http://mirrors.fe.up.pt/pub/mariadb/${MY_PN}-${PV}/source-tgz/${P}-src.tar.gz - http://ftp-stud.hs-esslingen.de/pub/Mirrors/mariadb/${MY_PN}-${PV}/source-tgz/${P}-src.tar.gz - " - S="${WORKDIR}/${P}-src" - KEYWORDS="~amd64 ~x86" -fi - -inherit cmake-utils multilib-minimal ${VCS_INHERIT} - -MULTILIB_CHOST_TOOLS=( /usr/bin/mariadb_config ) - -MULTILIB_WRAPPED_HEADERS+=( - /usr/include/mariadb/my_config.h -) - -PATCHES=( "${FILESDIR}/fix-mariadb_config-2.1.0.patch" - "${FILESDIR}/gentoo-layout.patch" ) - -DESCRIPTION="C client library for MariaDB/MySQL" -HOMEPAGE="http://mariadb.org/" -LICENSE="LGPL-2.1" - -SLOT="0/2" -IUSE="mysqlcompat +ssl static-libs" - -DEPEND="sys-libs/zlib:=[${MULTILIB_USEDEP}] - virtual/libiconv:=[${MULTILIB_USEDEP}] - ssl? ( dev-libs/openssl:0=[${MULTILIB_USEDEP}] ) - " -# Block server packages due to /usr/bin/mariadb_config symlink there -# TODO: make server package block only when mysqlcompat is enabled -RDEPEND="${DEPEND} - !dev-db/mysql - !dev-db/mysql-cluster - !dev-db/mariadb - !dev-db/mariadb-galera - !dev-db/percona-server - mysqlcompat? ( !dev-db/mysql-connector-c ) - " - -multilib_src_configure() { - local mycmakeargs=( - -DMYSQL_UNIX_ADDR="${EPREFIX%/}/var/run/mysqld/mysqld.sock" - -DWITH_EXTERNAL_ZLIB=ON - -DOPENSSL=$(usex ssl ON OFF) - -DMYSQLCOMPAT=$(usex mysqlcompat ON OFF) - -DLIB_INSTALL_DIR=$(get_libdir) - -DPLUGIN_INSTALL_DIR=$(get_libdir)/mariadb/plugin - -DINSTALL_LAYOUT=GENTOO - ) - cmake-utils_src_configure -} - -multilib_src_install_all() { - if ! use static-libs ; then - find "${D}" -name "*.a" -delete || die - fi - if use mysqlcompat ; then - dosym mariadb_config /usr/bin/mysql_config - dosym mariadb /usr/include/mysql - fi -} diff --git a/dev-db/mariadb-connector-c/metadata.xml b/dev-db/mariadb-connector-c/metadata.xml deleted file mode 100644 index 9c4d844..0000000 --- a/dev-db/mariadb-connector-c/metadata.xml +++ /dev/null @@ -1,11 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> -<pkgmetadata> -<maintainer type="project"> -<email>mysql-bugs@gentoo.org</email> -<name>MySQL</name> -</maintainer> -<use> -<flag name="mysqlcompat">Enable mysqlclient library symbolic links</flag> -</use> -</pkgmetadata> diff --git a/dev-db/mariadb/ChangeLog b/dev-db/mariadb/ChangeLog deleted file mode 100644 index ff4783b..0000000 --- a/dev-db/mariadb/ChangeLog +++ /dev/null @@ -1,406 +0,0 @@ -# ChangeLog for dev-db/mariadb -# Copyright 1999-2017 Gentoo Foundation; Distributed under the GPL v2 -# $Id$ - - 28 Jun 2017; Brian Evans <grknight@gentoo.org> mariadb-10.2.6.ebuild: - dev-db/mariadb: Improve building on ABI_X86_32 - - 13 Jun 2017; Brian Evans <grknight@gentoo.org> mariadb-9999.ebuild: - dev-db/mariadb: Fix subslot of 9999 - - 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 - upstream - - 31 May 2017; Brian Evans <grknight@gentoo.org> mariadb-10.2.6.ebuild: - dev-db/mariadb: Update 10.2.6 - - 29 May 2017; Brian Evans <grknight@gentoo.org> mariadb-10.2.6.ebuild: - dev-db/mariadb: Update with critical API patch - - 28 May 2017; Brian Evans <grknight@gentoo.org> -mariadb-10.0.25.ebuild, - -mariadb-10.1.12.ebuild, -mariadb-10.1.13.ebuild, -mariadb-10.1.14.ebuild, - -mariadb-10.2.1.ebuild, -mariadb-10.2.2.ebuild, -mariadb-10.2.4.ebuild, - -mariadb-10.2.5.ebuild: - dev-db/mariadb: Drop old versions - -*mariadb-10.2.6 (28 May 2017) - - 28 May 2017; Brian Evans <grknight@gentoo.org> +mariadb-10.2.6.ebuild: - dev-db/mariadb: Version bump to 10.2.6 GA Needs refinement and lots of - testing - - 02 May 2017; Brian Evans <grknight@gentoo.org> mariadb-10.2.2.ebuild, - mariadb-10.2.4.ebuild, mariadb-10.2.5.ebuild: - dev-db/mariadb: Remove failed MYSLOT experiment - -*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 - -*mariadb-10.1.14 (10 May 2016) - - 10 May 2016; Brian Evans <grknight@gentoo.org> +mariadb-10.1.14.ebuild, - -mariadb-10.1.10.ebuild, -mariadb-10.1.11.ebuild: - dev-db/mariadb: Version bump for 10.1.14 - -*mariadb-10.0.25 (02 May 2016) - - 02 May 2016; Brian Evans <grknight@gentoo.org> +mariadb-10.0.25.ebuild, - -mariadb-10.0.24.ebuild: - dev-db/mariadb: Version bump for 10.0.25 - -*mariadb-5.5.49 (22 Apr 2016) - - 22 Apr 2016; Brian Evans <grknight@gentoo.org> +mariadb-5.5.49.ebuild, - -mariadb-5.5.48.ebuild: - dev-db/mariadb: Version bump to 5.5.49 - -*mariadb-10.1.13 (30 Mar 2016) - - 30 Mar 2016; Brian Evans <grknight@gentoo.org> +mariadb-10.1.13.ebuild: - dev-db/mariadb: Version bump to 10.1.13 - - 07 Mar 2016; Brian Evans <grknight@gentoo.org> mariadb-10.1.12.ebuild: - dev-db/mariadb: Copy multilib kerberos fixes from portage tree - -*mariadb-10.1.12 (27 Feb 2016) - - 27 Feb 2016; Brian Evans <grknight@gentoo.org> +mariadb-10.1.12.ebuild: - dev-db/mariadb: Version bump 10.1.12; first to use new EAPI6 - -*mariadb-10.0.24 (19 Feb 2016) - - 19 Feb 2016; Brian Evans <grknight@gentoo.org> +mariadb-10.0.24.ebuild, - -mariadb-10.0.23.ebuild: - dev-db/mariadb: Version bump for 10.0.24 - - 12 Feb 2016; Brian Evans <grknight@gentoo.org> -mariadb-5.5.47.ebuild: - dev-db/mariadb: Drop old - -*mariadb-5.5.48 (12 Feb 2016) - - 12 Feb 2016; Brian Evans <grknight@gentoo.org> +mariadb-5.5.48.ebuild: - dev-db/mariadb: Version bump for 5.5.48 - - 31 Jan 2016; Brian Evans <grknight@gentoo.org> mariadb-10.1.11.ebuild: - dev-db/mariadb: Bump patch version to fix kerberos plugin MDEV-9494 - -*mariadb-10.1.11 (29 Jan 2016) - - 29 Jan 2016; Brian Evans <grknight@gentoo.org> +mariadb-10.1.11.ebuild: - dev-db/mariadb: Version bump; needs testing before moving to main tree - - 29 Dec 2015; Brian Evans <grknight@gentoo.org> mariadb-10.0.23.ebuild, - mariadb-10.1.10.ebuild: - dev-db/mariadb: Add missing build dependency wrt bug 570114 app-arch/snappy - is needed for TokuDB - - 29 Dec 2015; Brian Evans <grknight@gentoo.org> mariadb-10.1.10.ebuild: - dev-db/mariadb: Fix Mroonga Engine cmake option - - 28 Dec 2015; Brian Evans <grknight@gentoo.org> -mariadb-10.0.19.ebuild, - -mariadb-10.0.22-r1.ebuild, -mariadb-10.0.22.ebuild, -mariadb-10.1.8.ebuild, - -mariadb-10.1.9-r1.ebuild, -mariadb-10.1.9.ebuild, metadata.xml: - dev-db/mariadb: Drop old - -*mariadb-10.1.10 (28 Dec 2015) - - 28 Dec 2015; Brian Evans <grknight@gentoo.org> +mariadb-10.1.10.ebuild: - dev-db/mariadb: Version bump for 10.1.10 - -*mariadb-5.5.47 (23 Dec 2015) - - 23 Dec 2015; Brian Evans <grknight@gentoo.org> +mariadb-5.5.47.ebuild, - -mariadb-5.5.46.ebuild: - dev-db/mariadb: Version bump for 5.5.47 - -*mariadb-10.0.23 (23 Dec 2015) - - 23 Dec 2015; Brian Evans <grknight@gentoo.org> +mariadb-10.0.23.ebuild: - dev-db/mariadb: Version bump - - 29 Oct 2015; Brian Evans <grknight@gentoo.org> -mariadb-10.1.6_beta.ebuild, - -mariadb-10.1.7_rc.ebuild: - dev-db/mariadb: Drop old, vulnerable 10.1 series beta releases - -*mariadb-10.0.22-r1 (29 Oct 2015) -*mariadb-10.0.22 (29 Oct 2015) - - 29 Oct 2015; Brian Evans <grknight@gentoo.org> +mariadb-10.0.22-r1.ebuild, - +mariadb-10.0.22.ebuild, -mariadb-10.0.21-r1.ebuild, -mariadb-10.0.21.ebuild: - dev-db/mariadb: Version bump to 10.0.22 - - 21 Oct 2015; Brian Evans <grknight@gentoo.org> mariadb-10.1.8.ebuild: - dev-db/mariadb: Update test instructions - - 12 Oct 2015; Brian Evans <grknight@gentoo.org> mariadb-10.1.7_rc.ebuild: - dev-db/mariadb: Readd ~arm64 which was dropped accidentally - -*mariadb-5.5.46 (12 Oct 2015) - - 12 Oct 2015; Brian Evans <grknight@gentoo.org> +mariadb-5.5.46.ebuild, - -mariadb-5.5.45.ebuild: - dev-db/mariadb: Version bump for 5.5 series - -*mariadb-10.1.4_beta (14 Apr 2015) - - 14 Apr 2015; <grknight@gentoo.org> -mariadb-5.5.41.ebuild, - -mariadb-10.1.0_alpha.ebuild, -mariadb-10.1.2_alpha.ebuild, - +mariadb-10.1.4_beta.ebuild: - Version bump; drop old - -*mariadb-10.1.3_beta (16 Mar 2015) - - 16 Mar 2015; Brian Evans <grknight@gentoo.org> +mariadb-10.1.3_beta.ebuild: - [mariadb] Version bump for 10.1 series to beta - -*mariadb-5.5.39 (05 Aug 2014) - - 05 Aug 2014; <grknight@gentoo.org> +mariadb-5.5.39.ebuild, - -mariadb-5.5.38-r1.ebuild: - [mariadb] Version bump Bug 518718 - -*mariadb-10.0.7 (30 Dec 2013) - - 30 Dec 2013; Brian Evans <grknight@tuffmail.com> files/my.cnf-5.5, - -mariadb-10.0.4.ebuild, +mariadb-10.0.7.ebuild: - [mariadb] Version bump for 10 series - -*mariadb-5.5.34 (22 Nov 2013) - - 22 Nov 2013; Brian Evans <grknight@tuffmail.com> +mariadb-5.5.34.ebuild: - [mariadb] Version bump - - 19 Nov 2013; Brian Evans <grknight@tuffmail.com> -mariadb-10.0.1.ebuild, - -mariadb-10.0.2.ebuild, -mariadb-10.0.3.ebuild, -mariadb-5.5.31.ebuild: - [mariadb] Drop old - -*mariadb-10.0.6 (19 Nov 2013) - - 19 Nov 2013; Brian Evans <grknight@tuffmail.com> +mariadb-10.0.6.ebuild: - [mariadb] Version bump to 10.0.6 - -*mariadb-10.0.4 (09 Oct 2013) - - 09 Oct 2013; Brian Evans <grknight@tuffmail.com> +mariadb-10.0.4.ebuild: - [mariadb] Version bump for 10.0.4 All tests pass - -*mariadb-5.5.33a (20 Sep 2013) - - 20 Sep 2013; Brian Evans <grknight@tuffmail.com> +mariadb-5.5.33a.ebuild, - -mariadb-5.5.33.ebuild: - [mariadb] Version Bump to 5.5.33a All tests pass Fix crashes upstream Remove - hacks for jemalloc and tokudb per upstream - -*mariadb-5.5.33 (18 Sep 2013) - - 18 Sep 2013; Brian Evans <grknight@tuffmail.com> +mariadb-5.5.33.ebuild, - metadata.xml: - [mariadb] Bump to version 5.5.33 PBXT was removed upstream TokuDB was added. - TokuDB only builds on amd64 according to author. jemalloc was added by - upstream. Small hack in cmake to use system lib. - - 29 Aug 2013; Brian Evans <grknight@tuffmail.com> -mariadb-5.1.66.ebuild, - -mariadb-5.2.13.ebuild, -mariadb-5.3.11.ebuild, -mariadb-5.5.28a.ebuild, - -mariadb-5.5.29.ebuild, -mariadb-5.5.30.ebuild: - [dev-db/mariadb] Trim old - -*mariadb-5.5.32 (19 Jul 2013) - - 19 Jul 2013; Brian Evans <grknight@tuffmail.com> +mariadb-5.5.32.ebuild: - Version bump - -*mariadb-10.0.3 (12 Jun 2013) - - 12 Jun 2013; Robin H. Johnson <robbat2@gentoo.org> +mariadb-10.0.3.ebuild: - Bump, tests still running for now. - -*mariadb-5.5.31 (28 May 2013) - - 28 May 2013; Robin H. Johnson <robbat2@gentoo.org> +mariadb-5.5.31.ebuild: - Bump. - -*mariadb-10.0.1 (21 Mar 2013) - - 21 Mar 2013; Robin H. Johnson <robbat2@gentoo.org> +mariadb-10.0.1.ebuild: - Very untested MariaDB 10 series. - -*mariadb-5.5.30 (13 Mar 2013) - - 13 Mar 2013; Robin H. Johnson <robbat2@gentoo.org> +mariadb-5.5.30.ebuild: - Bump. - - 04 Mar 2013; Robin H. Johnson <robbat2@gentoo.org> mariadb-5.1.67.ebuild, - mariadb-5.2.14.ebuild, mariadb-5.3.12.ebuild, mariadb-5.5.29.ebuild: - Update headers and keywords. - - 28 Jan 2013; Robin H. Johnson <robbat2@gentoo.org> files/my.cnf-4.1, - files/my.cnf-5.1, files/my.cnf-5.5: - Sync with gentoo-x86 for prefix changes. - - 20 Jan 2013; Robin H. Johnson <robbat2@gentoo.org> mariadb-5.1.62-r1.ebuild, - mariadb-5.1.62.ebuild, mariadb-5.1.66.ebuild, mariadb-5.2.12-r1.ebuild, - mariadb-5.2.12.ebuild, mariadb-5.2.13.ebuild, mariadb-5.3.11.ebuild, - mariadb-5.3.6.ebuild, mariadb-5.3.7.ebuild, mariadb-5.3.9.ebuild, - mariadb-5.5.24.ebuild, mariadb-5.5.25-r1.ebuild, mariadb-5.5.25.ebuild, - mariadb-5.5.28.ebuild, mariadb-5.5.28a.ebuild: - HPPA has decided not to support mariadb for the present time. - - 20 Jan 2013; Robin H. Johnson <robbat2@gentoo.org> -mariadb-5.1.55.ebuild: - Trim old versions. - - 20 Jan 2013; Robin H. Johnson <robbat2@gentoo.org> mariadb-5.5.24.ebuild, - mariadb-5.5.25-r1.ebuild, mariadb-5.5.25.ebuild, mariadb-5.5.28.ebuild, - mariadb-5.5.28a.ebuild: - Fix {tests} typo. - - 22 May 2012; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mariadb-5.1.55.ebuild, mariadb-5.1.62.ebuild, mariadb-5.2.7.ebuild, - mariadb-5.2.8.ebuild, mariadb-5.2.9.ebuild, mariadb-5.2.10.ebuild, - mariadb-5.2.12.ebuild, mariadb-5.3.0_beta.ebuild, mariadb-5.3.1_beta.ebuild, - mariadb-5.3.3_rc.ebuild, mariadb-5.3.5.ebuild, mariadb-5.3.6.ebuild, - mariadb-5.5.22.ebuild, mariadb-5.5.23.ebuild: - Move EAPI assignment to the top. - Whitespace. - -*mariadb-5.3.3_rc (12 Jan 2012) - - 12 Jan 2012; <atlantis@gentoo.org> +mariadb-5.3.3_rc.ebuild: - [dev-db/mariadb] 5.3.3_rc version bump. - -*mariadb-5.2.10 (12 Jan 2012) - - 12 Jan 2012; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - +mariadb-5.2.10.ebuild: - [dev-db/mariadb] Bump to 5.2.10 revision. - - 20 Dec 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mariadb-5.2.7.ebuild, mariadb-5.2.8.ebuild, mariadb-5.3.0_beta.ebuild: - [dev-db/mariadb] Bump EAPI to 4 on old mariadb versions. - - 25 Oct 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mariadb-5.1.55.ebuild, mariadb-5.2.9.ebuild, mariadb-5.3.1_beta.ebuild: - [dev-db/mariadb] Use EAPI-4 to support the new Prefix support of the - eclasses. - -*mariadb-5.2.9 (27 Sep 2011) - - 27 Sep 2011; <atlantis@gentoo.org> +mariadb-5.2.9.ebuild: - Bumped mariadb to 5.2.9 release. - -*mariadb-5.3.1_beta (22 Sep 2011) - - 22 Sep 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - +mariadb-5.3.1_beta.ebuild: - Bumped mariadb to the 5.3.1_beta release. This needs more work as even unit - tests are failing. - -*mariadb-5.2.8 (19 Aug 2011) - - 19 Aug 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - +mariadb-5.2.8.ebuild: - [dev-db/maria] Bumped to release 5.2.8. - - 19 Aug 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mariadb-5.2.7.ebuild, mariadb-5.3.0_beta.ebuild: - Added patch by Diego to fix the multiple install of files. - -*mariadb-5.3.0_beta (29 Jul 2011) - - 29 Jul 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - +mariadb-5.3.0_beta.ebuild: - [dev-db/mariadb] Bump to the first 5.3.0 beta release. - - 21 Jul 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - -mariadb-5.1.42-r1.ebuild, -mariadb-5.1.50.ebuild, -mariadb-5.1.50-r1.ebuild, - -mariadb-5.1.53.ebuild, -mariadb-5.2.4.ebuild, -mariadb-5.2.5.ebuild, - -mariadb-5.2.6.ebuild: - Dropped old versions of mariadb from the overlay. - - 14 Jul 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mariadb-5.1.55.ebuild: - [dev-db/mariadb-5.1.55] Sync the ebuild from the mariadb-5.2.7 ebuild. - Drop irrelevant code and use mysql-v2 and not mysql-autotools. - -*mariadb-5.2.6 (13 May 2011) - - 13 May 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mariadb-5.1.55.ebuild, mariadb-5.2.5.ebuild, +mariadb-5.2.6.ebuild: - Bumped mariadb to the 5.2.6 release. - Fixed the calls to the mysql-autotools functions in the ebuilds using the - mysql-v2 eclass. - - 28 Mar 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mariadb-5.1.55.ebuild, mariadb-5.2.4.ebuild, mariadb-5.2.5.ebuild: - Review the build type support in the eclass / ebuilds. - -*mariadb-5.2.5 (27 Mar 2011) - - 27 Mar 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - -mariadb-5.2.3.ebuild, +mariadb-5.2.5.ebuild: - Bumped mariadb to the 5.2.5 release. - -*mariadb-5.1.55 (05 Mar 2011) - - 05 Mar 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mariadb-5.1.42-r1.ebuild, mariadb-5.1.50.ebuild, mariadb-5.1.50-r1.ebuild, - mariadb-5.1.53.ebuild, +mariadb-5.1.55.ebuild, mariadb-5.2.3.ebuild, - mariadb-5.2.4.ebuild: - Bumped mariadb to the 5.1.55 release. - Updated testing instructions for mariadb ebuilds. - -*mariadb-5.2.3 (29 Nov 2010) - - 29 Nov 2010; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - +mariadb-5.2.3.ebuild: - Added initial ebuild to test 5.2.3 release. Updated eclass as the maria - plugin was renamed to aria in the maria-5.2 tree. - This ebuild is currently dying on the configure run - it seems autoconf is - eating a case in the plugins.m4 file. - -*mariadb-5.1.50-r1 (06 Oct 2010) - - 06 Oct 2010; Robin H. Johnson <robbat2@gentoo.org> mariadb-5.1.50.ebuild, - +mariadb-5.1.50-r1.ebuild: - Release ready for tree now. - - 06 Oct 2010; Robin H. Johnson <robbat2@gentoo.org> mariadb-5.1.50.ebuild: - Ready for release. - - 27 Sep 2010; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mariadb-5.1.50.ebuild: - Dropped the block on amarok[embedded]. - - 24 Sep 2010; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mariadb-5.1.50.ebuild: - Drop the EGIT_REPO_URI used to test locally. - -*mariadb-5.1.50 (24 Sep 2010) - - 24 Sep 2010; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - +mariadb-5.1.50.ebuild: - Updated mariadb to the 5.1.50 release and added embedded support based on - Kristian Nielsen's <knielsen AT knielsen-hq DOT org> updated patch - bug - 306315. - -*mariadb-5.1.42 (15 Mar 2010) - - 15 Mar 2010; Robin H. Johnson <robbat2@gentoo.org> +files/my.cnf-4.1, - +mariadb-5.1.42.ebuild, +metadata.xml: - Add MariaDB. Bug #303130, based on the submission by Brian Evans - <grknight@tuffmail.com>. diff --git a/dev-db/mariadb/Manifest b/dev-db/mariadb/Manifest deleted file mode 100644 index ea9f04c..0000000 --- a/dev-db/mariadb/Manifest +++ /dev/null @@ -1,34 +0,0 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA256 - -DIST mariadb-10.0.35.tar.gz 66551252 SHA256 1b8368e9653570ccb555a07db3de3a8b7277e7587a916d176d2ec70d3c05c00e SHA512 01fc8d48be3f3847bb222835436ab938c6c5b5ac8ba6cc87b3b6d2a2201b7ab4b152dc1f7d9749c89de90097d50052714ac08aafbbb117fffac32bfb47e74779 WHIRLPOOL 2b70e7d79196c3ce2df503a0a7d1d8eea075b98c9ab09e5ee72b3af567cccaa9d5e00d1dfb0320d36e6d6fc2217fe8ceb0321f93f24377060a0ba8df88feabc7 -DIST mariadb-10.1.33.tar.gz 65292094 SHA256 94312c519f2c0c25e1964c64e22aff0036fb22dfb2685638f43a6b2211395d2d SHA512 1d30e06d0c19e338bfbbe6815cf5eee8e1b839b525950f7f54c7cf8f89034658a284df4756f54719ab0f55875546d4713b03bab7dd094ec13291732b069f737e WHIRLPOOL 95cd15f8eb63db01af4d2164c51e4026e31ddbc44a657eac0643a9b43279679d287d6a4424a38d1e957580d3f851efebf9ec530fdd6aa1fb7acf4ff1e0a1a0f8 -DIST mariadb-10.2.15.tar.gz 73329750 SHA256 33de205158fc22fd8eb4e5770cc5ffa1cb4029f9c398dfd8c554ccb3e636ba11 SHA512 7702af8787973b15784dc8a89f9d56765725a420e2e68f1924b67c88c134c7d83d3249dddd16707fa9e5f05ed747f813f16feefbb477e999a6698b1dcfb5a88f WHIRLPOOL 9155656363232c2fd0a5f90d6883320fc41618a73a58c8b54512d3f7a81ef56b9ee2566bf0f4c19094cd25dd9fa9cf7f0623f90a4345e2192e87dc5f98014cdb -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 -DIST mariadb-5.5.49.tar.gz 45738390 SHA256 2c82f2af71b88a7940d5ff647498ed78922c92e88004942caa213131e20f4706 SHA512 4eceb8ab4e1fb7144374f100440b83a8b3294fa9da61027086c27b02b8ff899e3f9d4511adbb02fb50ddab92a48bf6a39ad71ab9e00bc8be00022a4ea4e6fc2f WHIRLPOOL e757ff389b184fa235e39bebbfd4bd53e29a20da640a90a6a2454537a238edfff07f9a76da32e65a7756aa25421174d57f6f28d94924bb3ee0aa7ac6474d03c3 -DIST mariadb-5.5.60.tar.gz 45822878 SHA256 4d3d444555416028ce39d3fb4cdc9cf6a658fcd4b0d2d0c45a73f9bf01d07929 SHA512 eacf6ec57d46b00701b5038a67745174060d592b0e425466149c9a1b6dc1ac0659a36e57e82bf7e9f7865d8eac3dd50d0737630bd6220002d168b5b574437e4c WHIRLPOOL 09ad7e9f95fa6aa19300aca84c9fd674b3d68a5e519dba14a4e5ad9b421afa1898d8d86fc377f2a6c5f5c999bf39ec20d3e40d3a24b0b26182b80caa69afac5e -DIST mysql-extras-20121101-2319Z.tar.bz2 1898358 SHA256 ea5da082d3384bde67e005ebc39b78e7caadea80745333fb5a9cf47a4c4e4c5d SHA512 6a49abb1beee012d87ab63071a568ee6d9d8e4ff7a76401b91f5bdc127860d1c504a3877cbadb81536b07afe5ff419c77c793b0fc14ba484f56765d1ca526614 WHIRLPOOL 4bda75a0a9063830b3140bbc3cb12b60fa21289eee2fa476fb286da6318fdf0445a9c6193bd2063aefcd3f4ecc1f8045b30635f0e32014098d0f3dbee86e01fc -DIST mysql-extras-20150509-1847Z.tar.bz2 1494301 SHA256 de9c9fbb67998604cb3c0409842e4601646c8ad17f2aa301f55ffd4aed7a483d SHA512 f87d96ab8c35236d4453182c49f87f6e703af9dc217916546e4dd7368caa18a2340c9063decd96c22251d1097d7e2cac58bef30e6ff75c23aedf8926dbc3d3b4 WHIRLPOOL f60297c8ee1dfd9867ed6b29a8b04a002f23bc36b1e8d9b5db30e1e454a49fe06ffc37b10d934b11235364eecdc62beb50ce24690ab3d07a50056357906fa0fa -DIST mysql-extras-20180515-1334Z.tar.bz2 321462 SHA256 1a2c4116017ec56ec77375fa7fc85c7f0375d342505a45de16c4fd0dacd4bddf SHA512 de3000f0c65eed9595b52d53205cdcac60cb4a06a5aca27057c8beca6a7890f453aeeda0bb8487b8de75cfb4caa48682b7706273574876c5cefd0d03988c4f7e WHIRLPOOL b3a5fa87ea88cd823d2c7e5449fa50789cc13d487df800836644ba568ba3f8cab34bc26f57e41901e842ef73f7665636b843b8815c996d315589fb1a34ca39a6 -DIST mysql-extras-20180628-0201Z.tar.bz2 322141 SHA256 8317028fa98cc4abd819d11191fb82026eb9c4d23490b7c1d42590731fbc834d SHA512 71a3800ec091b41e41d25536199149eb714c0bbfc0f6fc478e8e4dcaf4cf87a7e4d49c513da3c9badc0de810d7d78c05ad91dd898e45005b42136346237de42a WHIRLPOOL 71a5d8d09ede40a2d7adad6d57e1b546fabb34610c92ede6e0b472c0d84ad016e39ec7fcb038c708723535542dfd9caace22f2b8dd822951ba8c0ee2778c462b ------BEGIN PGP SIGNATURE----- -Version: GnuPG v2 - -iQKTBAEBCAB9FiEEZsLkTtkOMnWOfVXA0feB7/n0o7YFAls0Q4FfFIAAAAAALgAo -aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDY2 -QzJFNDRFRDkwRTMyNzU4RTdENTVDMEQxRjc4MUVGRjlGNEEzQjYACgkQ0feB7/n0 -o7Y+TBAAr7fX+M15A+xeEuNYXAR3aUdHHcK2UzZPL0Jp7yIkjq+1UQnE7I7h55tk -KIzafOXOtuBAO7Hc2AiVdjUeC+f5RjhFFyegBS/c36tc9xjjVEyiY/dHdN8RkQek -3cthXUvtVfRFZWRVKdVCdGxfg5uqNSr7epo/uBvGyQ/TIfc7KAt8jmnE2Nl0ptSc -hdwjCFEFp8F2Ps01YbgJ3cj/0h1iMh6pVZhCu0UNcBKGbKbAkHmqQEMb28JygziL -TBtyXrFztnD3iAnpMXac2BzvARbnS2LYAJtmfiCijGP/AhpvW8Zdumi5ED+TYJ0i -STD0jjyqxAYivm7NfxEYv9b8ADwk0MfJG4bUlYl5qAJBbqWOU6J2XzTYXFwTLtHU -H/6rVUaBB0hYFw/J8cKOvGFkg+6PoSVRysgPwqMx3sfVhecoCB6GXKBawWwgaZvB -6MvrTbME7zQcLlL8zuGwbDZkBXMLw+XPz5DNFnCfEysqN3Y9TylTXXOW4q3AwGkm -gEw7T1fueVZ/88j/YCnNivMdg811ciIJfzY1p2MPgUsI4d7y2snCxr5xhuupqGDd -oFRlttu8QrLFQc654HVWKWK4c2+wZWz1vyj1KELZiC52W+FDlGfdHhjYIgDdjiK6 -zxMpN48+r3mqYGFxkNA/GrIZtC/ijuNBplfr7Y9JVD7RMD1PFOY= -=8aGJ ------END PGP SIGNATURE----- diff --git a/dev-db/mariadb/files/my.cnf-10.2 b/dev-db/mariadb/files/my.cnf-10.2 deleted file mode 100644 index 80b4771..0000000 --- a/dev-db/mariadb/files/my.cnf-10.2 +++ /dev/null @@ -1,3 +0,0 @@ -# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/my.cnf: The global mysql configuration file. - -!includedir @GENTOO_PORTAGE_EPREFIX@/etc/mysql/mariadb.d diff --git a/dev-db/mariadb/files/my.cnf-5.1 b/dev-db/mariadb/files/my.cnf-5.1 deleted file mode 100644 index a5e8bb0..0000000 --- a/dev-db/mariadb/files/my.cnf-5.1 +++ /dev/null @@ -1,146 +0,0 @@ -# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/my.cnf: The global mysql configuration file. -# $Id$ - -# The following options will be passed to all MySQL clients -[client] -#password = your_password -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock - -[mysql] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqladmin] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlcheck] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqldump] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlimport] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlshow] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[myisamchk] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -[myisampack] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -# use [safe_mysqld] with mysql-3 -[mysqld_safe] -err-log = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysql.err - -# add a section [mysqld-4.1] or [mysqld-5.0] for specific configurations -[mysqld] -character-set-server = utf8 -user = mysql -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock -pid-file = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.pid -log-error = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysqld.err -basedir = @GENTOO_PORTAGE_EPREFIX@/usr -datadir = @DATADIR@ -skip-external-locking -key_buffer = 16M -max_allowed_packet = 1M -table_open_cache = 64 -sort_buffer_size = 512K -net_buffer_length = 8K -read_buffer_size = 256K -read_rnd_buffer_size = 512K -myisam_sort_buffer_size = 8M -language = @GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/english - -# security: -# using "localhost" in connects uses sockets by default -# skip-networking -bind-address = 127.0.0.1 - -log-bin -server-id = 1 - -# point the following paths to different dedicated disks -tmpdir = @GENTOO_PORTAGE_EPREFIX@/tmp/ -#log-update = @GENTOO_PORTAGE_EPREFIX@/path-to-dedicated-directory/hostname - -# you need the debug USE flag enabled to use the following directives, -# if needed, uncomment them, start the server and issue -# #tail -f @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.trace -# this will show you *exactly* what's happening in your server ;) - -#log = @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql -#gdb -#debug = d:t:i:o,/tmp/mysqld.trace -#one-thread - -# uncomment the following directives if you are using BDB tables -#bdb_cache_size = 4M -#bdb_max_lock = 10000 - -# the following is the InnoDB configuration -# if you wish to disable innodb instead -# uncomment just the next line -#skip-innodb -# -# the rest of the innodb config follows: -# don't eat too much memory, we're trying to be safe on 64Mb boxes -# you might want to bump this up a bit on boxes with more RAM -innodb_buffer_pool_size = 16M -# this is the default, increase it if you have lots of tables -innodb_additional_mem_pool_size = 2M -# -# i'd like to use @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/innodb, but that is seen as a database :-( -# and upstream wants things to be under @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/, so that's the route -# we have to take for the moment -#innodb_data_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -#innodb_log_arch_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -#innodb_log_group_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -# you may wish to change this size to be more suitable for your system -# the max is there to avoid run-away growth on your machine -innodb_data_file_path = ibdata1:10M:autoextend:max:128M -# we keep this at around 25% of of innodb_buffer_pool_size -# sensible values range from 1MB to (1/innodb_log_files_in_group*innodb_buffer_pool_size) -innodb_log_file_size = 5M -# this is the default, increase it if you have very large transactions going on -innodb_log_buffer_size = 8M -# this is the default and won't hurt you -# you shouldn't need to tweak it -innodb_log_files_in_group=2 -# see the innodb config docs, the other options are not always safe -innodb_flush_log_at_trx_commit = 1 -innodb_lock_wait_timeout = 50 -innodb_file_per_table - -[mysqldump] -quick -max_allowed_packet = 16M - -[mysql] -# uncomment the next directive if you are not familiar with SQL -#safe-updates - -[isamchk] -key_buffer = 20M -sort_buffer_size = 20M -read_buffer = 2M -write_buffer = 2M - -[myisamchk] -key_buffer = 20M -sort_buffer_size = 20M -read_buffer = 2M -write_buffer = 2M - -[mysqlhotcopy] -interactive-timeout diff --git a/dev-db/mariadb/files/my.cnf-5.5 b/dev-db/mariadb/files/my.cnf-5.5 deleted file mode 100644 index 221edcb..0000000 --- a/dev-db/mariadb/files/my.cnf-5.5 +++ /dev/null @@ -1,150 +0,0 @@ -# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/my.cnf: The global mysql configuration file. -# $Id$ - -# The following options will be passed to all MySQL clients -[client] -#password = your_password -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock - -[mysql] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqladmin] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlcheck] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqldump] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlimport] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlshow] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[myisamchk] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -[myisampack] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -# use [safe_mysqld] with mysql-3 -[mysqld_safe] -err-log = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysql.err - -# add a section [mysqld-4.1] or [mysqld-5.0] for specific configurations -[mysqld] -character-set-server = utf8 -user = mysql -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock -pid-file = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.pid -log-error = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysqld.err -basedir = @GENTOO_PORTAGE_EPREFIX@/usr -datadir = @DATADIR@ -skip-external-locking -key_buffer_size = 16M -max_allowed_packet = 1M -table_open_cache = 64 -sort_buffer_size = 512K -net_buffer_length = 8K -read_buffer_size = 256K -read_rnd_buffer_size = 512K -myisam_sort_buffer_size = 8M -lc_messages_dir = @GENTOO_PORTAGE_EPREFIX@/usr/share/mysql -#Set this to your desired error message language -lc_messages = en_US - -# security: -# using "localhost" in connects uses sockets by default -# skip-networking -bind-address = 127.0.0.1 - -log-bin -server-id = 1 - -# point the following paths to different dedicated disks -tmpdir = @GENTOO_PORTAGE_EPREFIX@/tmp/ -#log-update = @GENTOO_PORTAGE_EPREFIX@/path-to-dedicated-directory/hostname - -# you need the debug USE flag enabled to use the following directives, -# if needed, uncomment them, start the server and issue -# #tail -f @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.trace -# this will show you *exactly* what's happening in your server ;) - -#log = @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql -#gdb -#debug = d:t:i:o,/tmp/mysqld.trace -#one-thread - -# the following is the InnoDB configuration -# if you wish to disable innodb instead -# uncomment just the next line -#skip-innodb -# -# the rest of the innodb config follows: -# don't eat too much memory, we're trying to be safe on 64Mb boxes -# you might want to bump this up a bit on boxes with more RAM -innodb_buffer_pool_size = 16M -# this is the default, increase it if you have lots of tables -innodb_additional_mem_pool_size = 2M -# -# i'd like to use @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/innodb, but that is seen as a database :-( -# and upstream wants things to be under @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/, so that's the route -# we have to take for the moment -#innodb_data_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -#innodb_log_arch_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -#innodb_log_group_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -# you may wish to change this size to be more suitable for your system -# the max is there to avoid run-away growth on your machine -innodb_data_file_path = ibdata1:10M:autoextend:max:128M -# we keep this at around 25% of of innodb_buffer_pool_size -# sensible values range from 1MB to (1/innodb_log_files_in_group*innodb_buffer_pool_size) -innodb_log_file_size = 5M -# this is the default, increase it if you have very large transactions going on -innodb_log_buffer_size = 8M -# this is the default and won't hurt you -# you shouldn't need to tweak it -innodb_log_files_in_group=2 -# see the innodb config docs, the other options are not always safe -innodb_flush_log_at_trx_commit = 1 -innodb_lock_wait_timeout = 50 -innodb_file_per_table - -# Uncomment this to get FEDERATED engine support -#plugin-load=federated=ha_federated.so -loose-federated - -[mysqldump] -quick -max_allowed_packet = 16M - -[mysql] -# uncomment the next directive if you are not familiar with SQL -#safe-updates - -[isamchk] -key_buffer_size = 20M -sort_buffer_size = 20M -read_buffer = 2M -write_buffer = 2M - -[myisamchk] -key_buffer_size = 20M -sort_buffer_size = 20M -read_buffer_size = 2M -write_buffer_size = 2M - -[mysqlhotcopy] -interactive-timeout - -[mariadb] diff --git a/dev-db/mariadb/files/my.cnf-5.6 b/dev-db/mariadb/files/my.cnf-5.6 deleted file mode 100644 index 7374a81..0000000 --- a/dev-db/mariadb/files/my.cnf-5.6 +++ /dev/null @@ -1,143 +0,0 @@ -# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/my.cnf: The global mysql configuration file. -# $Id$ - -# The following options will be passed to all MySQL clients -[client] -#password = your_password -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock - -[mysql] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqladmin] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlcheck] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqldump] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlimport] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlshow] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[myisamchk] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -[myisampack] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -# use [safe_mysqld] with mysql-3 -[mysqld_safe] -err-log = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysql.err - -# add a section [mysqld-4.1] or [mysqld-5.0] for specific configurations -[mysqld] -character-set-server = utf8 -user = mysql -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock -pid-file = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.pid -log-error = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysqld.err -basedir = @GENTOO_PORTAGE_EPREFIX@/usr -datadir = @DATADIR@ -skip-external-locking -key_buffer_size = 16M -max_allowed_packet = 4M -table_open_cache = 400 -sort_buffer_size = 512K -net_buffer_length = 16K -read_buffer_size = 256K -read_rnd_buffer_size = 512K -myisam_sort_buffer_size = 8M -lc_messages_dir = @GENTOO_PORTAGE_EPREFIX@/usr/share/mysql -#Set this to your desired error message language -lc_messages = en_US - -# security: -# using "localhost" in connects uses sockets by default -# skip-networking -bind-address = 127.0.0.1 - -log-bin -server-id = 1 - -# point the following paths to different dedicated disks -tmpdir = @GENTOO_PORTAGE_EPREFIX@/tmp/ -#log-update = @GENTOO_PORTAGE_EPREFIX@/path-to-dedicated-directory/hostname - -# you need the debug USE flag enabled to use the following directives, -# if needed, uncomment them, start the server and issue -# #tail -f @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.trace -# this will show you *exactly* what's happening in your server ;) - -#log = @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql -#gdb -#debug = d:t:i:o,/tmp/mysqld.trace -#one-thread - -# the rest of the innodb config follows: -# don't eat too much memory, we're trying to be safe on 64Mb boxes -# you might want to bump this up a bit on boxes with more RAM -innodb_buffer_pool_size = 128M -# -# i'd like to use @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/innodb, but that is seen as a database :-( -# and upstream wants things to be under @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/, so that's the route -# we have to take for the moment -#innodb_data_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -#innodb_log_arch_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -#innodb_log_group_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -# you may wish to change this size to be more suitable for your system -# the max is there to avoid run-away growth on your machine -innodb_data_file_path = ibdata1:10M:autoextend:max:128M -# we keep this at around 25% of of innodb_buffer_pool_size -# sensible values range from 1MB to (1/innodb_log_files_in_group*innodb_buffer_pool_size) -innodb_log_file_size = 48M -# this is the default, increase it if you have very large transactions going on -innodb_log_buffer_size = 8M -# this is the default and won't hurt you -# you shouldn't need to tweak it -innodb_log_files_in_group=2 -# see the innodb config docs, the other options are not always safe -innodb_flush_log_at_trx_commit = 1 -innodb_lock_wait_timeout = 50 -innodb_file_per_table - -# Uncomment this to get FEDERATED engine support -#plugin-load=federated=ha_federated.so -loose-federated - -[mysqldump] -quick -max_allowed_packet = 16M - -[mysql] -# uncomment the next directive if you are not familiar with SQL -#safe-updates - -[isamchk] -key_buffer_size = 20M -sort_buffer_size = 20M -read_buffer = 2M -write_buffer = 2M - -[myisamchk] -key_buffer_size = 20M -sort_buffer_size = 20M -read_buffer_size = 2M -write_buffer_size = 2M - -[mysqlhotcopy] -interactive-timeout - -[mariadb] diff --git a/dev-db/mariadb/files/my.cnf.distro-client b/dev-db/mariadb/files/my.cnf.distro-client deleted file mode 100644 index 4bbe0f9..0000000 --- a/dev-db/mariadb/files/my.cnf.distro-client +++ /dev/null @@ -1,21 +0,0 @@ -# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/50-distro-client.cnf: The global mysql configuration file. - -# The following options will be passed to all MySQL clients -[client] -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock -character-sets-dir = @GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb/charsets -default-character-set=utf8 - -[mysql] -# uncomment the next directive if you are not familiar with SQL -#safe-updates - -[mysqldump] -quick -max_allowed_packet = 16M - -[myisamchk] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb/charsets - -[myisampack] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb/charsets diff --git a/dev-db/mariadb/files/my.cnf.distro-server b/dev-db/mariadb/files/my.cnf.distro-server deleted file mode 100644 index eaf80be..0000000 --- a/dev-db/mariadb/files/my.cnf.distro-server +++ /dev/null @@ -1,28 +0,0 @@ -# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/50-distro-server.cnf: The global mysql configuration file. - -# add a section [mysqld-4.1] or [mysqld-5.0] for specific configurations -[mysqld] -character-set-server = utf8 -user = mysql -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock -pid-file = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mariadb.pid -log-error = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysqld.err -basedir = @GENTOO_PORTAGE_EPREFIX@/usr -datadir = @DATADIR@ -skip-external-locking -lc_messages_dir = @GENTOO_PORTAGE_EPREFIX@/usr/share/mariadb -#Set this to your desired error message language -lc_messages = en_US - -# security: -# using "localhost" in connects uses sockets by default -# skip-networking -bind-address = 127.0.0.1 - -log-bin -server-id = 1 - -# point the following paths to different dedicated disks -tmpdir = @GENTOO_PORTAGE_EPREFIX@/tmp/ -#log-update = @GENTOO_PORTAGE_EPREFIX@/path-to-dedicated-directory/hostname diff --git a/dev-db/mariadb/mariadb-10.0.35-r1.ebuild b/dev-db/mariadb/mariadb-10.0.35-r1.ebuild deleted file mode 100644 index a524cb6..0000000 --- a/dev-db/mariadb/mariadb-10.0.35-r1.ebuild +++ /dev/null @@ -1,844 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="6" -MY_EXTRAS_VER="20180515-1334Z" -SUBSLOT="18" - -JAVA_PKG_OPT_USE="jdbc" - -# Keeping eutils in EAPI=6 for emktemp in pkg_config - -inherit eutils flag-o-matic prefix toolchain-funcs java-pkg-opt-2 user cmake-utils multilib-build - -SRC_URI="https://downloads.mariadb.org/interstitial/${P}/source/${P}.tar.gz " - -# Gentoo patches to MySQL -if [[ "${MY_EXTRAS_VER}" != "live" && "${MY_EXTRAS_VER}" != "none" ]]; then - SRC_URI="${SRC_URI} - mirror://gentoo/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://gitweb.gentoo.org/proj/mysql-extras.git/snapshot/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~grknight/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~robbat2/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~jmbsvicetto/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2" -fi - -HOMEPAGE="http://mariadb.org/" -DESCRIPTION="An enhanced, drop-in replacement for MySQL" -LICENSE="GPL-2" -SLOT="0/${SUBSLOT:-0}" -IUSE="bindist client-libs debug extraengine jdbc jemalloc latin1 libressl - numa odbc oqgraph pam +perl profiling selinux +server sphinx - static static-libs systemtap tcmalloc - test tokudb xml yassl" - -# Tests always fail when libressl is enabled due to hard-coded ciphers in the tests -RESTRICT="!bindist? ( bindist ) libressl? ( test )" - -REQUIRED_USE="jdbc? ( extraengine server !static ) - server? ( tokudb? ( jemalloc !tcmalloc ) ) - ?? ( tcmalloc jemalloc ) - static? ( yassl !pam )" - -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris" - -# Shorten the path because the socket path length must be shorter than 107 chars -# and we will run a mysql server during test phase -S="${WORKDIR}/mysql" - -if [[ "${MY_EXTRAS_VER}" == "live" ]] ; then - MY_PATCH_DIR="${WORKDIR%/}/mysql-extras" - inherit git-r3 - EGIT_REPO_URI="git://anongit.gentoo.org/proj/mysql-extras.git" - EGIT_CHECKOUT_DIR="${WORKDIR%/}/mysql-extras" - EGIT_CLONE_TYPE=shallow -else - MY_PATCH_DIR="${WORKDIR%/}/mysql-extras-${MY_EXTRAS_VER}" -fi - -PATCHES=( - "${MY_PATCH_DIR}/01050_all_mariadb_mysql_config_cleanup-5.5.41.patch" - "${MY_PATCH_DIR}/20006_all_cmake_elib-mariadb-10.0.33.patch" - "${MY_PATCH_DIR}/20009_all_mariadb_myodbc_symbol_fix-5.5.38.patch" - "${MY_PATCH_DIR}/20018_all_mariadb-10.0.20-without-clientlibs-tools.patch" -) - -# Be warned, *DEPEND are version-dependant -# These are used for both runtime and compiletime -COMMON_DEPEND=" - kernel_linux? ( - sys-process/procps:0= - dev-libs/libaio:0= - ) - >=sys-apps/sed-4 - >=sys-apps/texinfo-4.7-r1 - jemalloc? ( dev-libs/jemalloc:0= ) - tcmalloc? ( dev-util/google-perftools:0= ) - systemtap? ( >=dev-util/systemtap-1.3:0= ) - !yassl? ( - !libressl? ( dev-libs/openssl:0= !>=dev-libs/openssl-1.1 ) - libressl? ( dev-libs/libressl:0= ) - ) - >=sys-libs/zlib-1.2.3:0= - sys-libs/ncurses:0= - !bindist? ( - >=sys-libs/readline-4.1:0= - ) - server? ( - extraengine? ( - odbc? ( dev-db/unixODBC:0= ) - xml? ( dev-libs/libxml2:2= ) - ) - numa? ( sys-process/numactl ) - oqgraph? ( >=dev-libs/boost-1.40.0:0= dev-libs/judy:0= ) - pam? ( virtual/pam:0= ) - tokudb? ( app-arch/snappy ) - ) - >=dev-libs/libpcre-8.41-r1:3= -" -DEPEND="virtual/yacc - static? ( sys-libs/ncurses[static-libs] ) - || ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 ) - server? ( extraengine? ( jdbc? ( >=virtual/jdk-1.6 ) ) ) - ${COMMON_DEPEND}" -RDEPEND="selinux? ( sec-policy/selinux-mysql ) - client-libs? ( !dev-db/mariadb-connector-c[mysqlcompat] !dev-db/mysql-connector-c ) - !dev-db/mysql !dev-db/mariadb-galera !dev-db/percona-server !dev-db/mysql-cluster - server? ( !prefix? ( dev-db/mysql-init-scripts ) ) - ${COMMON_DEPEND} - perl? ( !dev-db/mytop - virtual/perl-Getopt-Long - dev-perl/TermReadKey - virtual/perl-Term-ANSIColor - virtual/perl-Time-HiRes ) - server? ( extraengine? ( jdbc? ( >=virtual/jre-1.6 ) ) ) -" -# For other stuff to bring us in -# dev-perl/DBD-mysql is needed by some scripts installed by MySQL -PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 ) - !client-libs? ( dev-db/mysql-connector-c[${MULTILIB_USEDEP},static-libs?] )" - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - local GCC_MAJOR_SET=$(gcc-major-version) - local GCC_MINOR_SET=$(gcc-minor-version) - if use tokudb && [[ ${GCC_MAJOR_SET} -lt 4 || \ - ${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then - eerror "${PN} with tokudb needs to be built with gcc-4.7 or later." - eerror "Please use gcc-config to switch to gcc-4.7 or later version." - die - fi - # Bug 565584. InnoDB now requires atomic functions introduced with gcc-4.7 on - # non x86{,_64} arches - if ! use amd64 && ! use x86 && [[ ${GCC_MAJOR_SET} -lt 4 || \ - ${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then - eerror "${PN} needs to be built with gcc-4.7 or later." - eerror "Please use gcc-config to switch to gcc-4.7 or later version." - die - fi - fi - java-pkg-opt-2_pkg_setup - if has test ${FEATURES} && \ - use server && ! has userpriv ${FEATURES} ; then - eerror "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root." - fi - - # This should come after all of the die statements - enewgroup mysql 60 || die "problem adding 'mysql' group" - enewuser mysql 60 -1 /dev/null mysql || die "problem adding 'mysql' user" -} - -pkg_preinst() { - java-pkg-opt-2_pkg_preinst -} - -pkg_postinst() { - # Make sure the vars are correctly initialized - mysql_init_vars - - # Create log directory securely if it does not exist - [[ -d "${ROOT}${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}${MY_LOGDIR}" - - if use server ; then - if use pam; then - einfo - elog "This install includes the PAM authentication plugin." - elog "To activate and configure the PAM plugin, please read:" - elog "https://mariadb.com/kb/en/mariadb/pam-authentication-plugin/" - einfo - fi - - if [[ -z "${REPLACING_VERSIONS}" ]] ; then - einfo - elog "You might want to run:" - elog "\"emerge --config =${CATEGORY}/${PF}\"" - elog "if this is a new install." - elog - elog "If you are switching server implentations, you should run the" - elog "mysql_upgrade tool." - einfo - else - einfo - elog "If you are upgrading major versions, you should run the" - elog "mysql_upgrade tool." - einfo - fi - - einfo - elog "Be sure to edit the my.cnf file to activate your cluster settings." - elog "This should be done after running \"emerge --config =${CATEGORY}/${PF}\"" - elog "The first time the cluster is activated, you should add" - elog "--wsrep-new-cluster to the options in /etc/conf.d/mysql for one node." - elog "This option should then be removed for subsequent starts." - einfo - fi -} - -src_unpack() { - unpack ${A} - # Grab the patches - [[ "${MY_EXTRAS_VER}" == "live" ]] && S="${WORKDIR%/}/mysql-extras" git-r3_src_unpack - - mv -f "${WORKDIR%/}/${P}" "${S}" || die -} - -src_prepare() { - _disable_engine() { - echo > "${S%/}/storage/${1}/CMakeLists.txt" || die - } - - _disable_plugin() { - echo > "${S%/}/plugin/${1}/CMakeLists.txt" || die - } - - java-pkg-opt-2_src_prepare - if use tcmalloc; then - echo "TARGET_LINK_LIBRARIES(mysqld tcmalloc)" >> "${S%/}/sql/CMakeLists.txt" || die - fi - - # Don't build bundled xz-utils for tokudb - echo > "${S%/}/storage/tokudb/PerconaFT/cmake_modules/TokuThirdParty.cmake" || die - sed -i -e 's/ build_lzma//' -e 's/ build_snappy//' "${S%/}/storage/tokudb/PerconaFT/ft/CMakeLists.txt" || die - sed -i -e 's/add_dependencies\(tokuportability_static_conv build_jemalloc\)//' "${S%/}/storage/tokudb/PerconaFT/portability/CMakeLists.txt" || die - - local plugin - local server_plugins=( handler_socket auth_socket feedback metadata_lock_info - locale_info qc_info server_audit semisync sql_errlog ) - local test_plugins=( audit_null auth_examples daemon_example fulltext ) - if ! use server; then # These plugins are for the server - for plugin in "${server_plugins[@]}" ; do - _disable_plugin "${plugin}" - done - fi - - if ! use test; then # These plugins are only used during testing - for plugin in "${test_plugins[@]}" ; do - _disable_plugin "${plugin}" - done - fi - - # Collides with mariadb-connector-c bug 655980 - _disable_plugin auth_dialog - - # Don't build Mroonga or example - _disable_engine mroonga - _disable_engine example - - if ! use oqgraph ; then # avoids extra library checks - _disable_engine oqgraph - fi - - cmake-utils_src_prepare -} - -src_configure(){ - # bug 508724 mariadb cannot use ld.gold - tc-ld-disable-gold - # Bug #114895, bug #110149 - filter-flags "-O" "-O[01]" - - append-cxxflags -felide-constructors - - # bug #283926, with GCC4.4, this is required to get correct behavior. - append-flags -fno-strict-aliasing - - CMAKE_BUILD_TYPE="RelWithDebInfo" - - # debug hack wrt #497532 - mycmakeargs=( - -DCMAKE_C_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')" - -DCMAKE_CXX_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')" - -DCMAKE_INSTALL_PREFIX="${EPREFIX%/}/usr" - -DINSTALL_SYSCONFDIR="${EPREFIX%/}/etc/mysql" - -DINSTALL_BINDIR=bin - -DINSTALL_DOCDIR=share/doc/${PF} - -DINSTALL_DOCREADMEDIR=share/doc/${PF} - -DINSTALL_INCLUDEDIR=include/mysql - -DINSTALL_INFODIR=share/info - -DINSTALL_LIBDIR=$(get_libdir) - -DINSTALL_MANDIR=share/man - -DINSTALL_MYSQLSHAREDIR=share/mariadb - -DINSTALL_PLUGINDIR=$(get_libdir)/mariadb/plugin - -DINSTALL_SCRIPTDIR=share/mariadb/scripts - -DINSTALL_MYSQLDATADIR="${EPREFIX%/}/var/lib/mysql" - -DINSTALL_SBINDIR=sbin - -DINSTALL_SUPPORTFILESDIR="${EPREFIX%/}/usr/share/mariadb" - -DCOMPILATION_COMMENT="Gentoo Linux ${PF}" - -DWITH_UNIT_TESTS=$(usex test ON OFF) - -DWITH_ZLIB=system - -DENABLED_LOCAL_INFILE=1 - -DMYSQL_UNIX_ADDR="${EPREFIX%/}/var/run/mysqld/mysqld.sock" - -DINSTALL_UNIX_ADDRDIR="${EPREFIX%/}/var/run/mysqld/mysqld.sock" - # The build forces this to be defined when cross-compiling. We pass it - # all the time for simplicity and to make sure it is actually correct. - -DSTACK_DIRECTION=$(tc-stack-grows-down && echo -1 || echo 1) - -DWITHOUT_CLIENTLIBS=YES - -DWITH_READLINE=$(usex bindist 1 0) - -DNOT_FOR_DISTRIBUTION=$(usex bindist 0 1) - -DENABLE_DTRACE=$(usex systemtap) - ) - if use test ; then - mycmakeargs+=( -DINSTALL_MYSQLTESTDIR=share/mariadb/mysql-test ) - else - mycmakeargs+=( -DINSTALL_MYSQLTESTDIR='' ) - fi - - if ! use yassl ; then - mycmakeargs+=( -DWITH_SSL=system ) - else - mycmakeargs+=( -DWITH_SSL=bundled ) - fi - - if use server ; then - - # Federated{,X} must be treated special otherwise they will not be built as plugins - if ! use extraengine ; then - mycmakeargs+=( - -DWITHOUT_FEDERATED_STORAGE_ENGINE=1 - -DWITHOUT_FEDERATEDX_STORAGE_ENGINE=1 ) - fi - - mycmakeargs+=( - -DWITH_JEMALLOC=$(usex jemalloc system) - -DWITH_PCRE=system - -D$(usex sphinx WITH WITHOUT)_SPHINX_STORAGE_ENGINE=1 - -D$(usex tokudb WITH WITHOUT)_TOKUDB_STORAGE_ENGINE=1 - -D$(usex oqgraph WITH WITHOUT)_AUTH_PAM=1 - -D$(usex extraengine WITH WITHOUT)_SEQUENCE_STORAGE_ENGINE=1 - -D$(usex extraengine WITH WITHOUT)_SPIDER_STORAGE_ENGINE=1 - -D$(usex extraengine WITH WITHOUT)_CONNECT_STORAGE_ENGINE=1 - -DCONNECT_WITH_LIBXML2=$(usex xml) - -DCONNECT_WITH_ODBC=$(usex odbc) - -DCONNECT_WITH_JDBC=$(usex jdbc) - # Build failure and autodep wrt bug 639144 - -DCONNECT_WITH_MONGO=OFF - -DINSTALL_SQLBENCHDIR=share/mariadb - ) - - if [[ ( -n ${MYSQL_DEFAULT_CHARSET} ) && ( -n ${MYSQL_DEFAULT_COLLATION} ) ]]; then - ewarn "You are using a custom charset of ${MYSQL_DEFAULT_CHARSET}" - ewarn "and a collation of ${MYSQL_DEFAULT_COLLATION}." - ewarn "You MUST file bugs without these variables set." - - mycmakeargs+=( - -DDEFAULT_CHARSET=${MYSQL_DEFAULT_CHARSET} - -DDEFAULT_COLLATION=${MYSQL_DEFAULT_COLLATION} - ) - - elif ! use latin1 ; then - mycmakeargs+=( - -DDEFAULT_CHARSET=utf8 - -DDEFAULT_COLLATION=utf8_general_ci - ) - else - mycmakeargs+=( - -DDEFAULT_CHARSET=latin1 - -DDEFAULT_COLLATION=latin1_swedish_ci - ) - fi - mycmakeargs+=( - -DEXTRA_CHARSETS=all - -DDISABLE_SHARED=$(usex static YES NO) - -DWITH_EMBEDDED_SERVER=OFF - -DENABLED_PROFILING=$(usex profiling) - ) - - if use static; then - mycmakeargs+=( -DWITH_PIC=1 ) - fi - - if use jemalloc || use tcmalloc ; then - mycmakeargs+=( -DWITH_SAFEMALLOC=OFF ) - fi - - # Storage engines - mycmakeargs+=( - -DWITH_ARCHIVE_STORAGE_ENGINE=1 - -DWITH_BLACKHOLE_STORAGE_ENGINE=1 - -DWITH_CSV_STORAGE_ENGINE=1 - -DWITH_HEAP_STORAGE_ENGINE=1 - -DWITH_INNOBASE_STORAGE_ENGINE=1 - -DWITH_MYISAMMRG_STORAGE_ENGINE=1 - -DWITH_MYISAM_STORAGE_ENGINE=1 - -DWITH_PARTITION_STORAGE_ENGINE=1 - ) - - else - mycmakeargs+=( - -DWITHOUT_SERVER=1 - -DEXTRA_CHARSETS=none - -DINSTALL_SQLBENCHDIR= - ) - fi - - cmake-utils_src_configure -} - -src_compile() { - cmake-utils_src_compile -} - -src_install() { - cmake-utils_src_install - - # Remove an unnecessary, private config header which will never match between ABIs and is not meant to be used - if [[ -f "${ED%/}/usr/include/mysql/server/private/config.h" ]] ; then - rm "${ED%/}/usr/include/mysql/server/private/config.h" || die - fi - - # Make sure the vars are correctly initialized - mysql_init_vars - - # Convenience links - einfo "Making Convenience links for mysqlcheck multi-call binary" - dosym "mysqlcheck" "/usr/bin/mysqlanalyze" - dosym "mysqlcheck" "/usr/bin/mysqlrepair" - dosym "mysqlcheck" "/usr/bin/mysqloptimize" - - # INSTALL_LAYOUT=STANDALONE causes cmake to create a /usr/data dir - if [[ -d "${ED%/}/usr/data" ]] ; then - rm -Rf "${ED%/}/usr/data" || die - fi - - # Unless they explicitly specific USE=test, then do not install the - # testsuite. It DOES have a use to be installed, esp. when you want to do a - # validation of your database configuration after tuning it. - if ! use test ; then - rm -rf "${D%/}/${MY_SHAREDSTATEDIR}/mysql-test" - fi - - # Configuration stuff - einfo "Building default configuration ..." - insinto "${MY_SYSCONFDIR#${EPREFIX}}" - [[ -f "${S%/}/scripts/mysqlaccess.conf" ]] && doins "${S%/}"/scripts/mysqlaccess.conf - local mycnf_src="my.cnf-5.6" - sed -e "s!@DATADIR@!${MY_DATADIR}!g" \ - "${FILESDIR%/}/${mycnf_src}" \ - > "${TMPDIR%/}/my.cnf.ok" || die - use prefix && sed -i -r -e '/^user[[:space:]]*=[[:space:]]*mysql$/d' "${TMPDIR%/}/my.cnf.ok" - if use latin1 ; then - sed -i \ - -e "/character-set/s|utf8|latin1|g" \ - "${TMPDIR%/}/my.cnf.ok" || die - fi - eprefixify "${TMPDIR%/}/my.cnf.ok" - newins "${TMPDIR}/my.cnf.ok" my.cnf - - if use server ; then - einfo "Including support files and sample configurations" - docinto "support-files" - local script - for script in \ - "${S%/}"/support-files/magic - do - [[ -f "$script" ]] && dodoc "${script}" - done - - docinto "scripts" - for script in "${S%/}"/scripts/mysql* ; do - [[ ( -f "$script" ) && ( "${script%.sh}" == "${script}" ) ]] && dodoc "${script}" - done - fi - - #Remove mytop if perl is not selected - [[ -e "${ED%/}/usr/bin/mytop" ]] && ! use perl && rm -f "${ED%/}/usr/bin/mytop" -} - -# Official test instructions: -# USE='extraengine perl server' \ -# FEATURES='test userpriv -usersandbox' \ -# ebuild mariadb-X.X.XX.ebuild \ -# digest clean package -src_test() { - - _disable_test() { - local rawtestname reason - rawtestname="${1}" ; shift - reason="${@}" - ewarn "test '${rawtestname}' disabled: '${reason}'" - echo ${rawtestname} : ${reason} >> "${T}/disabled.def" - } - - local TESTDIR="${BUILD_DIR}/mysql-test" - local retstatus_unit - 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" - - 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} || die - - # Run mysql tests - pushd "${TESTDIR}" > /dev/null || die - - touch "${T}/disabled.def" - # 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 main.mysql_client_test main.mysql_client_test_nonblock \ - main.mysql_client_test_comp rpl.rpl_extra_col_master_myisam \ - rpl.rpl_semi_sync_uninstall_plugin ; do - _disable_test "$t" "False positives in Gentoo" - done - - if ! use client-libs ; then - _disable_test main.plugin_auth "Needs client libraries built" - fi - - # run mysql-test tests - perl mysql-test-run.pl --force --vardir="${T}/var-tests" --reorder --skip-test=tokudb --skip-test-list="${T}/disabled.def" - retstatus_tests=$? - - popd > /dev/null || 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" ]] || die "Test failures: $failures" - einfo "Tests successfully completed" -} - -mysql_init_vars() { - MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX}/usr/share/mariadb"} - MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX}/etc/mysql"} - MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX}/var/lib/mysql"} - MY_LOGDIR=${MY_LOGDIR="${EPREFIX}/var/log/mysql"} - - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR="" - if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then - MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \ - | sed -ne '/datadir/s|^--datadir=||p' \ - | tail -n1` - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR=`grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \ - | sed -e 's/.*=\s*//' \ - | tail -n1` - fi - fi - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR="${MY_LOCALSTATEDIR}" - einfo "Using default MY_DATADIR" - fi - elog "MySQL MY_DATADIR is ${MY_DATADIR}" - - if [[ -z "${PREVIOUS_DATADIR}" ]] ; then - if [[ -e "${MY_DATADIR}" ]] ; then - # If you get this and you're wondering about it, see bug #207636 - elog "MySQL datadir found in ${MY_DATADIR}" - elog "A new one will not be created." - PREVIOUS_DATADIR="yes" - else - PREVIOUS_DATADIR="no" - fi - export PREVIOUS_DATADIR - fi - else - if [[ ${EBUILD_PHASE} == "config" ]]; then - local new_MY_DATADIR - new_MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \ - | sed -ne '/datadir/s|^--datadir=||p' \ - | tail -n1` - - if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]]; then - ewarn "MySQL MY_DATADIR has changed" - ewarn "from ${MY_DATADIR}" - ewarn "to ${new_MY_DATADIR}" - MY_DATADIR="${new_MY_DATADIR}" - fi - fi - fi - - export MY_SHAREDSTATEDIR MY_SYSCONFDIR - export MY_LOCALSTATEDIR MY_LOGDIR - export MY_DATADIR -} - -pkg_config() { - _getoptval() { - local mypd="${EROOT}"/usr/bin/my_print_defaults - local section="$1" - local flag="--${2}=" - local extra_options="${3}" - "${mypd}" $extra_options $section | sed -n "/^${flag}/s,${flag},,gp" - } - local old_MY_DATADIR="${MY_DATADIR}" - local old_HOME="${HOME}" - # my_print_defaults needs to read stuff in $HOME/.my.cnf - export HOME=${EPREFIX}/root - - # Make sure the vars are correctly initialized - mysql_init_vars - - [[ -z "${MY_DATADIR}" ]] && die "Sorry, unable to find MY_DATADIR" - if [[ ! -x "${EROOT}/usr/sbin/mysqld" ]] ; then - die "Minimal builds do NOT include the MySQL server" - fi - - if [[ ( -n "${MY_DATADIR}" ) && ( "${MY_DATADIR}" != "${old_MY_DATADIR}" ) ]]; then - local MY_DATADIR_s="${ROOT}/${MY_DATADIR}" - MY_DATADIR_s="${MY_DATADIR_s%%/}" - local old_MY_DATADIR_s="${ROOT}/${old_MY_DATADIR}" - old_MY_DATADIR_s="${old_MY_DATADIR_s%%/}" - - if [[ ( -d "${old_MY_DATADIR_s}" ) && ( "${old_MY_DATADIR_s}" != / ) ]]; then - if [[ -d "${MY_DATADIR_s}" ]]; then - ewarn "Both ${old_MY_DATADIR_s} and ${MY_DATADIR_s} exist" - ewarn "Attempting to use ${MY_DATADIR_s} and preserving ${old_MY_DATADIR_s}" - else - elog "Moving MY_DATADIR from ${old_MY_DATADIR_s} to ${MY_DATADIR_s}" - mv --strip-trailing-slashes -T "${old_MY_DATADIR_s}" "${MY_DATADIR_s}" \ - || die "Moving MY_DATADIR failed" - fi - else - ewarn "Previous MY_DATADIR (${old_MY_DATADIR_s}) does not exist" - if [[ -d "${MY_DATADIR_s}" ]]; then - ewarn "Attempting to use ${MY_DATADIR_s}" - else - eerror "New MY_DATADIR (${MY_DATADIR_s}) does not exist" - die "Configuration Failed! Please reinstall ${CATEGORY}/${PN}" - fi - fi - fi - - local pwd1="a" - local pwd2="b" - local maxtry=15 - - if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then - local tmp_mysqld_password_source= - - for tmp_mysqld_password_source in mysql client; do - einfo "Trying to get password for mysql 'root' user from '${tmp_mysqld_password_source}' section ..." - MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password)" - if [[ -n "${MYSQL_ROOT_PASSWORD}" ]]; then - if [[ ${MYSQL_ROOT_PASSWORD} == *$'\n'* ]]; then - ewarn "Ignoring password from '${tmp_mysqld_password_source}' section due to newline character (do you have multiple password options set?)!" - MYSQL_ROOT_PASSWORD= - continue - fi - - einfo "Found password in '${tmp_mysqld_password_source}' section!" - break - fi - done - - # Sometimes --show is required to display passwords in some implementations of my_print_defaults - if [[ "${MYSQL_ROOT_PASSWORD}" == '*****' ]]; then - MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password --show)" - fi - - unset tmp_mysqld_password_source - fi - MYSQL_TMPDIR="$(_getoptval mysqld tmpdir)" - # These are dir+prefix - MYSQL_RELAY_LOG="$(_getoptval mysqld relay-log)" - MYSQL_RELAY_LOG=${MYSQL_RELAY_LOG%/*} - MYSQL_LOG_BIN="$(_getoptval mysqld log-bin)" - MYSQL_LOG_BIN=${MYSQL_LOG_BIN%/*} - - if [[ ! -d "${ROOT}/$MYSQL_TMPDIR" ]]; then - einfo "Creating MySQL tmpdir $MYSQL_TMPDIR" - install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_TMPDIR" - fi - if [[ ! -d "${ROOT}/$MYSQL_LOG_BIN" ]]; then - einfo "Creating MySQL log-bin directory $MYSQL_LOG_BIN" - install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_LOG_BIN" - fi - if [[ ! -d "${EROOT}/$MYSQL_RELAY_LOG" ]]; then - einfo "Creating MySQL relay-log directory $MYSQL_RELAY_LOG" - install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_RELAY_LOG" - fi - - if [[ -d "${ROOT}/${MY_DATADIR}/mysql" ]] ; then - ewarn "You have already a MySQL database in place." - ewarn "(${ROOT}/${MY_DATADIR}/*)" - ewarn "Please rename or delete it if you wish to replace it." - die "MySQL database already exists!" - 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" - - if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then - - einfo "Please provide a password for the mysql 'root' user now" - einfo "or through the ${HOME}/.my.cnf file." - ewarn "Avoid [\"'\\_%] characters in the password" - read -rsp " >" pwd1 ; echo - - einfo "Retype the password" - read -rsp " >" pwd2 ; echo - - if [[ "x$pwd1" != "x$pwd2" ]] ; then - die "Passwords are not the same" - fi - MYSQL_ROOT_PASSWORD="${pwd1}" - unset pwd1 pwd2 - fi - - local options - local sqltmp="$(emktemp)" - - # Fix bug 446200. Don't reference host my.cnf, needs to come first, - # see http://bugs.mysql.com/bug.php?id=31312 - use prefix && options="${options} '--defaults-file=${MY_SYSCONFDIR}/my.cnf'" - - # Figure out which options we need to disable to do the setup - local helpfile="${TMPDIR}/mysqld-help" - "${EROOT}/usr/sbin/mysqld" --verbose --help >"${helpfile}" 2>/dev/null - for opt in grant-tables host-cache name-resolve networking slave-start \ - federated ssl log-bin relay-log slow-query-log external-locking \ - log-slave-updates \ - ; do - optexp="--(skip-)?${opt}" optfull="--loose-skip-${opt}" - egrep -sq -- "${optexp}" "${helpfile}" && options="${options} ${optfull}" - done - - einfo "Creating the mysql database and setting proper permissions on it ..." - - # Now that /var/run is a tmpfs mount point, we need to ensure it exists before using it - PID_DIR="${EROOT}/var/run/mysqld" - if [[ ! -d "${PID_DIR}" ]]; then - install -d -m 755 -o mysql -g mysql "${PID_DIR}" || die "Could not create pid directory" - fi - - if [[ ! -d "${MY_DATADIR}" ]]; then - install -d -m 750 -o mysql -g mysql "${MY_DATADIR}" || die "Could not create data directory" - fi - - pushd "${TMPDIR}" &>/dev/null || die - - # Filling timezones, see - # http://dev.mysql.com/doc/mysql/en/time-zone-support.html - "${EROOT}/usr/bin/mysql_tzinfo_to_sql" "${EROOT}/usr/share/zoneinfo" > "${sqltmp}" 2>/dev/null - - local cmd=( "${EROOT}usr/share/mariadb/scripts/mysql_install_db" ) - [[ -f "${cmd}" ]] || cmd=( "${EROOT}usr/bin/mysql_install_db" ) - cmd+=( "--basedir=${EPREFIX}/usr" ${options} "--datadir=${ROOT}/${MY_DATADIR}" "--tmpdir=${ROOT}/${MYSQL_TMPDIR}" ) - einfo "Command: ${cmd[*]}" - su -s /bin/sh -c "${cmd[*]}" mysql \ - >"${TMPDIR}"/mysql_install_db.log 2>&1 - if [ $? -ne 0 ]; then - grep -B5 -A999 -i "ERROR" "${TMPDIR}"/mysql_install_db.log 1>&2 - die "Failed to initialize mysqld. Please review ${EPREFIX}/var/log/mysql/mysqld.err AND ${TMPDIR}/mysql_install_db.log" - fi - popd &>/dev/null || die - [[ -f "${ROOT}/${MY_DATADIR}/mysql/user.frm" ]] \ - || die "MySQL databases not installed" - - use prefix || options="${options} --user=mysql" - - local socket="${EROOT}/var/run/mysqld/mysqld${RANDOM}.sock" - local pidfile="${EROOT}/var/run/mysqld/mysqld${RANDOM}.pid" - local mysqld="${EROOT}/usr/sbin/mysqld \ - ${options} \ - --log-warnings=0 \ - --basedir=${EROOT}/usr \ - --datadir=${ROOT}/${MY_DATADIR} \ - --max_allowed_packet=8M \ - --net_buffer_length=16K \ - --socket=${socket} \ - --pid-file=${pidfile} - --tmpdir=${ROOT}/${MYSQL_TMPDIR}" - #einfo "About to start mysqld: ${mysqld}" - ebegin "Starting mysqld" - einfo "Command ${mysqld}" - ${mysqld} & - rc=$? - while ! [[ -S "${socket}" || "${maxtry}" -lt 1 ]] ; do - maxtry=$((${maxtry}-1)) - echo -n "." - sleep 1 - done - eend $rc - - if ! [[ -S "${socket}" ]]; then - die "Completely failed to start up mysqld with: ${mysqld}" - fi - - ebegin "Setting root password" - # Do this from memory, as we don't want clear text passwords in temp files - local sql="UPDATE mysql.user SET Password = PASSWORD('${MYSQL_ROOT_PASSWORD}') WHERE USER='root'; FLUSH PRIVILEGES" - "${EROOT}/usr/bin/mysql" \ - "--socket=${socket}" \ - -hlocalhost \ - -e "${sql}" - eend $? - - if [[ -n "${sqltmp}" ]] ; then - ebegin "Loading \"zoneinfo\", this step may require a few seconds" - "${EROOT}/usr/bin/mysql" \ - "--socket=${socket}" \ - -hlocalhost \ - -uroot \ - --password="${MYSQL_ROOT_PASSWORD}" \ - mysql < "${sqltmp}" - rc=$? - eend $? - [[ $rc -ne 0 ]] && ewarn "Failed to load zoneinfo!" - fi - - # Stop the server and cleanup - einfo "Stopping the server ..." - kill $(< "${pidfile}" ) - rm -f "${sqltmp}" - wait %1 - einfo "Done" -} diff --git a/dev-db/mariadb/mariadb-10.1.33-r1.ebuild b/dev-db/mariadb/mariadb-10.1.33-r1.ebuild deleted file mode 100644 index 0a3a791..0000000 --- a/dev-db/mariadb/mariadb-10.1.33-r1.ebuild +++ /dev/null @@ -1,879 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="6" -MY_EXTRAS_VER="20180515-1334Z" -SUBSLOT="18" - -JAVA_PKG_OPT_USE="jdbc" - -# Keeping eutils in EAPI=6 for emktemp in pkg_config - -inherit eutils systemd flag-o-matic prefix toolchain-funcs java-pkg-opt-2 user cmake-utils multilib-build - -SRC_URI="https://downloads.mariadb.org/interstitial/${P}/source/${P}.tar.gz " - -# Gentoo patches to MySQL -if [[ "${MY_EXTRAS_VER}" != "live" && "${MY_EXTRAS_VER}" != "none" ]]; then - SRC_URI="${SRC_URI} - mirror://gentoo/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://gitweb.gentoo.org/proj/mysql-extras.git/snapshot/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~grknight/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~robbat2/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~jmbsvicetto/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2" -fi - -HOMEPAGE="http://mariadb.org/" -DESCRIPTION="An enhanced, drop-in replacement for MySQL" -LICENSE="GPL-2" -SLOT="0/${SUBSLOT:-0}" -IUSE="+backup bindist client-libs cracklib debug extraengine galera jdbc jemalloc kerberos - innodb-lz4 innodb-lzo innodb-snappy latin1 libressl mroonga numa odbc oqgraph pam - +perl profiling selinux +server sphinx sst-rsync sst-mariabackup sst-xtrabackup - systemd systemtap static static-libs tcmalloc test tokudb xml yassl" - -# Tests always fail when libressl is enabled due to hard-coded ciphers in the tests -RESTRICT="!bindist? ( bindist ) libressl? ( test )" - -REQUIRED_USE="jdbc? ( extraengine server !static ) - server? ( tokudb? ( jemalloc !tcmalloc ) ) - ?? ( tcmalloc jemalloc ) - static? ( yassl !pam )" - -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris" - -# Shorten the path because the socket path length must be shorter than 107 chars -# and we will run a mysql server during test phase -S="${WORKDIR}/mysql" - -if [[ "${MY_EXTRAS_VER}" == "live" ]] ; then - MY_PATCH_DIR="${WORKDIR%/}/mysql-extras" - inherit git-r3 - EGIT_REPO_URI="git://anongit.gentoo.org/proj/mysql-extras.git" - EGIT_CHECKOUT_DIR="${WORKDIR%/}/mysql-extras" - EGIT_CLONE_TYPE=shallow -else - MY_PATCH_DIR="${WORKDIR%/}/mysql-extras-${MY_EXTRAS_VER}" -fi - -PATCHES=( - "${MY_PATCH_DIR}"/20006_all_cmake_elib-mariadb-10.1.27.patch - "${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.16-without-clientlibs-tools.patch - "${MY_PATCH_DIR}"/20025_all_mariadb-10.1.26-gssapi-detect.patch - "${MY_PATCH_DIR}"/20029_all_mariadb-10.1.31-enable-numa.patch - "${MY_PATCH_DIR}"/20035_all_mariadb-10.1-atomic-detection.patch -) - -# Be warned, *DEPEND are version-dependant -# These are used for both runtime and compiletime -COMMON_DEPEND=" - kernel_linux? ( - sys-process/procps:0= - dev-libs/libaio:0= - ) - >=sys-apps/sed-4 - >=sys-apps/texinfo-4.7-r1 - jemalloc? ( dev-libs/jemalloc:0= ) - tcmalloc? ( dev-util/google-perftools:0= ) - systemtap? ( >=dev-util/systemtap-1.3:0= ) - !yassl? ( - !libressl? ( dev-libs/openssl:0= !>=dev-libs/openssl-1.1 ) - libressl? ( dev-libs/libressl:0= ) - ) - >=sys-libs/zlib-1.2.3:0= - sys-libs/ncurses:0= - !bindist? ( - sys-libs/binutils-libs:0= - >=sys-libs/readline-4.1:0= - ) - server? ( - backup? ( app-arch/libarchive:0= ) - cracklib? ( sys-libs/cracklib:0= ) - extraengine? ( - odbc? ( dev-db/unixODBC:0= ) - xml? ( dev-libs/libxml2:2= ) - sys-libs/zlib[minizip] - ) - innodb-lz4? ( app-arch/lz4 ) - innodb-lzo? ( dev-libs/lzo ) - innodb-snappy? ( app-arch/snappy ) - kerberos? ( virtual/krb5 ) - mroonga? ( app-text/groonga-normalizer-mysql >=app-text/groonga-7.0.4 ) - numa? ( sys-process/numactl ) - oqgraph? ( >=dev-libs/boost-1.40.0:0= dev-libs/judy:0= ) - pam? ( virtual/pam:0= ) - systemd? ( sys-apps/systemd:= ) - tokudb? ( app-arch/snappy ) - ) - !yassl? ( !libressl? ( !>=dev-libs/openssl-1.1.0 ) ) - >=dev-libs/libpcre-8.41-r1:3= -" -DEPEND="virtual/yacc - static? ( sys-libs/ncurses[static-libs] ) - || ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 ) - server? ( extraengine? ( jdbc? ( >=virtual/jdk-1.6 ) ) ) - ${COMMON_DEPEND}" -RDEPEND="selinux? ( sec-policy/selinux-mysql ) - client-libs? ( !dev-db/mariadb-connector-c[mysqlcompat] !dev-db/mysql-connector-c ) - !dev-db/mysql !dev-db/mariadb-galera !dev-db/percona-server !dev-db/mysql-cluster - server? ( !prefix? ( dev-db/mysql-init-scripts ) ) - ${COMMON_DEPEND} - server? ( galera? ( - sys-apps/iproute2 - =sys-cluster/galera-25* - sst-rsync? ( sys-process/lsof ) - sst-mariabackup? ( net-misc/socat[ssl] ) - 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 ) - server? ( extraengine? ( jdbc? ( >=virtual/jre-1.6 ) ) ) -" -# For other stuff to bring us in -# dev-perl/DBD-mysql is needed by some scripts installed by MySQL -# percona-xtrabackup-bin causes a circular dependency if DBD-mysql is not already installed -PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 ) - !client-libs? ( dev-db/mysql-connector-c[${MULTILIB_USEDEP},static-libs?] ) - server? ( galera? ( sst-xtrabackup? ( || ( >=dev-db/percona-xtrabackup-bin-2.2.4 dev-db/percona-xtrabackup ) ) ) )" - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - local GCC_MAJOR_SET=$(gcc-major-version) - local GCC_MINOR_SET=$(gcc-minor-version) - if use tokudb && [[ ${GCC_MAJOR_SET} -lt 4 || \ - ${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then - eerror "${PN} with tokudb needs to be built with gcc-4.7 or later." - eerror "Please use gcc-config to switch to gcc-4.7 or later version." - die - fi - # Bug 565584. InnoDB now requires atomic functions introduced with gcc-4.7 on - # non x86{,_64} arches - if ! use amd64 && ! use x86 && [[ ${GCC_MAJOR_SET} -lt 4 || \ - ${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then - eerror "${PN} needs to be built with gcc-4.7 or later." - eerror "Please use gcc-config to switch to gcc-4.7 or later version." - die - fi - fi - java-pkg-opt-2_pkg_setup - if has test ${FEATURES} && \ - use server && ! has userpriv ${FEATURES} ; then - eerror "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root." - fi - - # This should come after all of the die statements - enewgroup mysql 60 || die "problem adding 'mysql' group" - enewuser mysql 60 -1 /dev/null mysql || die "problem adding 'mysql' user" -} - -pkg_preinst() { - java-pkg-opt-2_pkg_preinst -} - -pkg_postinst() { - # Make sure the vars are correctly initialized - mysql_init_vars - - # Create log directory securely if it does not exist - [[ -d "${ROOT}${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}${MY_LOGDIR}" - - if use server ; then - if use pam; then - einfo - elog "This install includes the PAM authentication plugin." - elog "To activate and configure the PAM plugin, please read:" - elog "https://mariadb.com/kb/en/mariadb/pam-authentication-plugin/" - einfo - fi - - if [[ -z "${REPLACING_VERSIONS}" ]] ; then - einfo - elog "You might want to run:" - elog "\"emerge --config =${CATEGORY}/${PF}\"" - elog "if this is a new install." - elog - elog "If you are switching server implentations, you should run the" - elog "mysql_upgrade tool." - einfo - else - einfo - elog "If you are upgrading major versions, you should run the" - elog "mysql_upgrade tool." - einfo - fi - - einfo - elog "Be sure to edit the my.cnf file to activate your cluster settings." - elog "This should be done after running \"emerge --config =${CATEGORY}/${PF}\"" - elog "The first time the cluster is activated, you should add" - elog "--wsrep-new-cluster to the options in /etc/conf.d/mysql for one node." - elog "This option should then be removed for subsequent starts." - einfo - fi -} - -src_unpack() { - unpack ${A} - # Grab the patches - [[ "${MY_EXTRAS_VER}" == "live" ]] && S="${WORKDIR%/}/mysql-extras" git-r3_src_unpack - - mv -f "${WORKDIR%/}/${PN%%-galera}-${PV}" "${S}" || die -} - -src_prepare() { - _disable_engine() { - echo > "${S%/}/storage/${1}/CMakeLists.txt" || die - } - - _disable_plugin() { - echo > "${S%/}/plugin/${1}/CMakeLists.txt" || die - } - - java-pkg-opt-2_src_prepare - if use tcmalloc; then - echo "TARGET_LINK_LIBRARIES(mysqld tcmalloc)" >> "${S%/}/sql/CMakeLists.txt" || die - fi - - # Don't build bundled xz-utils for tokudb - echo > "${S%/}/storage/tokudb/PerconaFT/cmake_modules/TokuThirdParty.cmake" || die - sed -i -e 's/ build_lzma//' -e 's/ build_snappy//' "${S%/}/storage/tokudb/PerconaFT/ft/CMakeLists.txt" || die - sed -i -e 's/add_dependencies\(tokuportability_static_conv build_jemalloc\)//' "${S%/}/storage/tokudb/PerconaFT/portability/CMakeLists.txt" || die - - local plugin - local server_plugins=( handler_socket auth_socket feedback metadata_lock_info - locale_info qc_info server_audit semisync sql_errlog ) - local test_plugins=( audit_null auth_examples daemon_example fulltext ) - if ! use server; then # These plugins are for the server - for plugin in "${server_plugins[@]}" ; do - _disable_plugin "${plugin}" - done - fi - - if ! use test; then # These plugins are only used during testing - for plugin in "${test_plugins[@]}" ; do - _disable_plugin "${plugin}" - done - fi - - # Collides with mariadb-connector-c bug 655980 - _disable_plugin auth_dialog - - # Avoid useless library checks - use mroonga || _disable_engine mroonga - use oqgraph || _disable_engine oqgraph - _disable_engine example - - cmake-utils_src_prepare -} - -src_configure(){ - # bug 508724 mariadb cannot use ld.gold - tc-ld-disable-gold - # Bug #114895, bug #110149 - filter-flags "-O" "-O[01]" - - append-cxxflags -felide-constructors - - # bug #283926, with GCC4.4, this is required to get correct behavior. - append-flags -fno-strict-aliasing - - CMAKE_BUILD_TYPE="RelWithDebInfo" - - # debug hack wrt #497532 - mycmakeargs=( - -DCMAKE_C_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')" - -DCMAKE_CXX_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')" - -DCMAKE_INSTALL_PREFIX="${EPREFIX%/}/usr" - -DINSTALL_SYSCONFDIR="${EPREFIX%/}/etc/mysql" - -DINSTALL_BINDIR=bin - -DINSTALL_DOCDIR=share/doc/${PF} - -DINSTALL_DOCREADMEDIR=share/doc/${PF} - -DINSTALL_INCLUDEDIR=include/mysql - -DINSTALL_INFODIR=share/info - -DINSTALL_LIBDIR=$(get_libdir) - -DINSTALL_MANDIR=share/man - -DINSTALL_MYSQLSHAREDIR=share/mariadb - -DINSTALL_MYSQLTESTDIR=$(usex test 'share/mariadb/mysql-test' '') - -DINSTALL_PLUGINDIR=$(get_libdir)/mariadb/plugin - -DINSTALL_SCRIPTDIR=share/mariadb/scripts - -DINSTALL_MYSQLDATADIR="${EPREFIX%/}/var/lib/mysql" - -DINSTALL_SBINDIR=sbin - -DINSTALL_SUPPORTFILESDIR="${EPREFIX%/}/usr/share/mariadb" - -DCOMPILATION_COMMENT="Gentoo Linux ${PF}" - -DWITH_UNIT_TESTS=$(usex test ON OFF) - -DWITH_ZLIB=system - -DENABLED_LOCAL_INFILE=1 - -DMYSQL_UNIX_ADDR="${EPREFIX%/}/var/run/mysqld/mysqld.sock" - -DINSTALL_UNIX_ADDRDIR="${EPREFIX%/}/var/run/mysqld/mysqld.sock" - -DWITH_DEFAULT_COMPILER_OPTIONS=0 - -DWITH_DEFAULT_FEATURE_SET=0 - -DINSTALL_SYSTEMD_UNITDIR="$(systemd_get_systemunitdir)" - # The build forces this to be defined when cross-compiling. We pass it - # all the time for simplicity and to make sure it is actually correct. - -DSTACK_DIRECTION=$(tc-stack-grows-down && echo -1 || echo 1) - -DWITHOUT_CLIENTLIBS=YES - -DWITH_READLINE=$(usex bindist 1 0) - -DNOT_FOR_DISTRIBUTION=$(usex bindist 0 1) - -DENABLE_DTRACE=$(usex systemtap) - -DWITH_SSL=$(usex yassl bundled system) - ) - - if use server ; then - - # Federated{,X} must be treated special otherwise they will not be built as plugins - if ! use extraengine ; then - mycmakeargs+=( - -DPLUGIN_FEDERATED=NO - -DPLUGIN_FEDERATEDX=NO ) - fi - - mycmakeargs+=( - -DWITH_JEMALLOC=$(usex jemalloc system) - -DWITH_PCRE=system - -DPLUGIN_OQGRAPH=$(usex oqgraph DYNAMIC 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) - -DCONNECT_WITH_JDBC=$(usex jdbc) - # Build failure and autodep wrt bug 639144 - -DCONNECT_WITH_MONGO=OFF - -DWITH_WSREP=$(usex galera) - -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 DYNAMIC NO) - -DPLUGIN_AUTH_GSSAPI=$(usex kerberos DYNAMIC NO) - -DWITH_MARIABACKUP=$(usex backup ON OFF) - -DWITH_LIBARCHIVE=$(usex backup ON OFF) - -DWITH_SYSTEMD=$(usex systemd yes no) - -DWITH_NUMA=$(usex numa ON OFF) - -DINSTALL_SQLBENCHDIR='' - ) - - if [[ ( -n ${MYSQL_DEFAULT_CHARSET} ) && ( -n ${MYSQL_DEFAULT_COLLATION} ) ]]; then - ewarn "You are using a custom charset of ${MYSQL_DEFAULT_CHARSET}" - ewarn "and a collation of ${MYSQL_DEFAULT_COLLATION}." - ewarn "You MUST file bugs without these variables set." - - mycmakeargs+=( - -DDEFAULT_CHARSET=${MYSQL_DEFAULT_CHARSET} - -DDEFAULT_COLLATION=${MYSQL_DEFAULT_COLLATION} - ) - - elif ! use latin1 ; then - mycmakeargs+=( - -DDEFAULT_CHARSET=utf8 - -DDEFAULT_COLLATION=utf8_general_ci - ) - else - mycmakeargs+=( - -DDEFAULT_CHARSET=latin1 - -DDEFAULT_COLLATION=latin1_swedish_ci - ) - fi - mycmakeargs+=( - -DEXTRA_CHARSETS=all - -DMYSQL_USER=mysql - -DDISABLE_SHARED=$(usex static YES NO) - -DWITH_DEBUG=$(usex debug) - -DWITH_EMBEDDED_SERVER=OFF - -DENABLED_PROFILING=$(usex profiling) - ) - - if use static; then - mycmakeargs+=( -DWITH_PIC=1 ) - fi - - if use jemalloc || use tcmalloc ; then - mycmakeargs+=( -DWITH_SAFEMALLOC=OFF ) - fi - - # Storage engines - mycmakeargs+=( - -DWITH_ARCHIVE_STORAGE_ENGINE=1 - -DWITH_BLACKHOLE_STORAGE_ENGINE=1 - -DWITH_CSV_STORAGE_ENGINE=1 - -DWITH_HEAP_STORAGE_ENGINE=1 - -DWITH_INNOBASE_STORAGE_ENGINE=1 - -DWITH_MYISAMMRG_STORAGE_ENGINE=1 - -DWITH_MYISAM_STORAGE_ENGINE=1 - -DWITH_PARTITION_STORAGE_ENGINE=1 - ) - - else - mycmakeargs+=( - -DWITHOUT_SERVER=1 - -DWITH_EMBEDDED_SERVER=OFF - -DEXTRA_CHARSETS=none - -DINSTALL_SQLBENCHDIR= - -DWITH_SYSTEMD=no - ) - fi - - cmake-utils_src_configure -} - -src_compile() { - cmake-utils_src_compile -} - -src_install() { - cmake-utils_src_install - - # Remove an unnecessary, private config header which will never match between ABIs and is not meant to be used - if [[ -f "${ED}/usr/include/mysql/server/private/config.h" ]] ; then - rm "${ED}/usr/include/mysql/server/private/config.h" || die - fi - - # Make sure the vars are correctly initialized - mysql_init_vars - - # Convenience links - einfo "Making Convenience links for mysqlcheck multi-call binary" - dosym "mysqlcheck" "/usr/bin/mysqlanalyze" - dosym "mysqlcheck" "/usr/bin/mysqlrepair" - dosym "mysqlcheck" "/usr/bin/mysqloptimize" - - # INSTALL_LAYOUT=STANDALONE causes cmake to create a /usr/data dir - if [[ -d "${ED}/usr/data" ]] ; then - rm -Rf "${ED}/usr/data" || die - fi - - # Unless they explicitly specific USE=test, then do not install the - # testsuite. It DOES have a use to be installed, esp. when you want to do a - # validation of your database configuration after tuning it. - if ! use test ; then - rm -rf "${D}/${MY_SHAREDSTATEDIR}/mysql-test" - fi - - # Configuration stuff - einfo "Building default configuration ..." - insinto "${MY_SYSCONFDIR#${EPREFIX}}" - [[ -f "${S}/scripts/mysqlaccess.conf" ]] && doins "${S}"/scripts/mysqlaccess.conf - local mycnf_src="my.cnf-5.6" - sed -e "s!@DATADIR@!${MY_DATADIR}!g" \ - "${FILESDIR}/${mycnf_src}" \ - > "${TMPDIR}/my.cnf.ok" || die - use prefix && sed -i -r -e '/^user[[:space:]]*=[[:space:]]*mysql$/d' "${TMPDIR}/my.cnf.ok" - if use latin1 ; then - sed -i \ - -e "/character-set/s|utf8|latin1|g" \ - "${TMPDIR}/my.cnf.ok" || die - fi - eprefixify "${TMPDIR}/my.cnf.ok" - newins "${TMPDIR}/my.cnf.ok" my.cnf - - if use server ; then - einfo "Including support files and sample configurations" - docinto "support-files" - local script - for script in \ - "${S}"/support-files/magic - do - [[ -f "$script" ]] && dodoc "${script}" - done - - docinto "scripts" - for script in "${S}"/scripts/mysql* ; do - [[ ( -f "$script" ) && ( "${script%.sh}" == "${script}" ) ]] && dodoc "${script}" - done - fi - - #Remove mytop if perl is not selected - [[ -e "${ED}/usr/bin/mytop" ]] && ! use perl && rm -f "${ED}/usr/bin/mytop" -} - -# Official test instructions: -# USE='extraengine perl server static-libs' \ -# FEATURES='test userpriv -usersandbox' \ -# ebuild mariadb-X.X.XX.ebuild \ -# digest clean package -src_test() { - - _disable_test() { - local rawtestname reason - rawtestname="${1}" ; shift - reason="${@}" - ewarn "test '${rawtestname}' disabled: '${reason}'" - echo ${rawtestname} : ${reason} >> "${T}/disabled.def" - } - - local TESTDIR="${BUILD_DIR}/mysql-test" - local retstatus_unit - 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" - - 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} || die - - # Run mysql tests - pushd "${TESTDIR}" > /dev/null || die - - touch "${T}/disabled.def" - # 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 - _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 rpl.rpl_extra_col_master_myisam ; do - _disable_test "$t" "False positives in Gentoo" - done - - if ! use client-libs ; then - _disable_test main.plugin_auth "Needs client libraries built" - fi - - # run mysql-test tests - perl mysql-test-run.pl --force --vardir="${T}/var-tests" --reorder --skip-test=tokudb --skip-test-list="${T}/disabled.def" - retstatus_tests=$? - - popd > /dev/null || 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" ]] || die "Test failures: $failures" - einfo "Tests successfully completed" -} - -mysql_init_vars() { - MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX}/usr/share/mariadb"} - MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX}/etc/mysql"} - MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX}/var/lib/mysql"} - MY_LOGDIR=${MY_LOGDIR="${EPREFIX}/var/log/mysql"} - - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR="" - if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then - MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \ - | sed -ne '/datadir/s|^--datadir=||p' \ - | tail -n1` - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR=`grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \ - | sed -e 's/.*=\s*//' \ - | tail -n1` - fi - fi - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR="${MY_LOCALSTATEDIR}" - einfo "Using default MY_DATADIR" - fi - elog "MySQL MY_DATADIR is ${MY_DATADIR}" - - if [[ -z "${PREVIOUS_DATADIR}" ]] ; then - if [[ -e "${MY_DATADIR}" ]] ; then - # If you get this and you're wondering about it, see bug #207636 - elog "MySQL datadir found in ${MY_DATADIR}" - elog "A new one will not be created." - PREVIOUS_DATADIR="yes" - else - PREVIOUS_DATADIR="no" - fi - export PREVIOUS_DATADIR - fi - else - if [[ ${EBUILD_PHASE} == "config" ]]; then - local new_MY_DATADIR - new_MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \ - | sed -ne '/datadir/s|^--datadir=||p' \ - | tail -n1` - - if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]]; then - ewarn "MySQL MY_DATADIR has changed" - ewarn "from ${MY_DATADIR}" - ewarn "to ${new_MY_DATADIR}" - MY_DATADIR="${new_MY_DATADIR}" - fi - fi - fi - - export MY_SHAREDSTATEDIR MY_SYSCONFDIR - export MY_LOCALSTATEDIR MY_LOGDIR - export MY_DATADIR -} - -pkg_config() { - _getoptval() { - local mypd="${EROOT}"/usr/bin/my_print_defaults - local section="$1" - local flag="--${2}=" - local extra_options="${3}" - "${mypd}" $extra_options $section | sed -n "/^${flag}/s,${flag},,gp" - } - local old_MY_DATADIR="${MY_DATADIR}" - local old_HOME="${HOME}" - # my_print_defaults needs to read stuff in $HOME/.my.cnf - export HOME=${EPREFIX}/root - - # Make sure the vars are correctly initialized - mysql_init_vars - - [[ -z "${MY_DATADIR}" ]] && die "Sorry, unable to find MY_DATADIR" - if [[ ! -x "${EROOT}/usr/sbin/mysqld" ]] ; then - die "Minimal builds do NOT include the MySQL server" - fi - - if [[ ( -n "${MY_DATADIR}" ) && ( "${MY_DATADIR}" != "${old_MY_DATADIR}" ) ]]; then - local MY_DATADIR_s="${ROOT}/${MY_DATADIR}" - MY_DATADIR_s="${MY_DATADIR_s%%/}" - local old_MY_DATADIR_s="${ROOT}/${old_MY_DATADIR}" - old_MY_DATADIR_s="${old_MY_DATADIR_s%%/}" - - if [[ ( -d "${old_MY_DATADIR_s}" ) && ( "${old_MY_DATADIR_s}" != / ) ]]; then - if [[ -d "${MY_DATADIR_s}" ]]; then - ewarn "Both ${old_MY_DATADIR_s} and ${MY_DATADIR_s} exist" - ewarn "Attempting to use ${MY_DATADIR_s} and preserving ${old_MY_DATADIR_s}" - else - elog "Moving MY_DATADIR from ${old_MY_DATADIR_s} to ${MY_DATADIR_s}" - mv --strip-trailing-slashes -T "${old_MY_DATADIR_s}" "${MY_DATADIR_s}" \ - || die "Moving MY_DATADIR failed" - fi - else - ewarn "Previous MY_DATADIR (${old_MY_DATADIR_s}) does not exist" - if [[ -d "${MY_DATADIR_s}" ]]; then - ewarn "Attempting to use ${MY_DATADIR_s}" - else - eerror "New MY_DATADIR (${MY_DATADIR_s}) does not exist" - die "Configuration Failed! Please reinstall ${CATEGORY}/${PN}" - fi - fi - fi - - local pwd1="a" - local pwd2="b" - local maxtry=15 - - if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then - local tmp_mysqld_password_source= - - for tmp_mysqld_password_source in mysql client; do - einfo "Trying to get password for mysql 'root' user from '${tmp_mysqld_password_source}' section ..." - MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password)" - if [[ -n "${MYSQL_ROOT_PASSWORD}" ]]; then - if [[ ${MYSQL_ROOT_PASSWORD} == *$'\n'* ]]; then - ewarn "Ignoring password from '${tmp_mysqld_password_source}' section due to newline character (do you have multiple password options set?)!" - MYSQL_ROOT_PASSWORD= - continue - fi - - einfo "Found password in '${tmp_mysqld_password_source}' section!" - break - fi - done - - # Sometimes --show is required to display passwords in some implementations of my_print_defaults - if [[ "${MYSQL_ROOT_PASSWORD}" == '*****' ]]; then - MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password --show)" - fi - - unset tmp_mysqld_password_source - fi - MYSQL_TMPDIR="$(_getoptval mysqld tmpdir)" - # These are dir+prefix - MYSQL_RELAY_LOG="$(_getoptval mysqld relay-log)" - MYSQL_RELAY_LOG=${MYSQL_RELAY_LOG%/*} - MYSQL_LOG_BIN="$(_getoptval mysqld log-bin)" - MYSQL_LOG_BIN=${MYSQL_LOG_BIN%/*} - - if [[ ! -d "${ROOT}/$MYSQL_TMPDIR" ]]; then - einfo "Creating MySQL tmpdir $MYSQL_TMPDIR" - install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_TMPDIR" - fi - if [[ ! -d "${ROOT}/$MYSQL_LOG_BIN" ]]; then - einfo "Creating MySQL log-bin directory $MYSQL_LOG_BIN" - install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_LOG_BIN" - fi - if [[ ! -d "${EROOT}/$MYSQL_RELAY_LOG" ]]; then - einfo "Creating MySQL relay-log directory $MYSQL_RELAY_LOG" - install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_RELAY_LOG" - fi - - if [[ -d "${ROOT}/${MY_DATADIR}/mysql" ]] ; then - ewarn "You have already a MySQL database in place." - ewarn "(${ROOT}/${MY_DATADIR}/*)" - ewarn "Please rename or delete it if you wish to replace it." - die "MySQL database already exists!" - 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" - - if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then - - einfo "Please provide a password for the mysql 'root' user now" - einfo "or through the ${HOME}/.my.cnf file." - ewarn "Avoid [\"'\\_%] characters in the password" - read -rsp " >" pwd1 ; echo - - einfo "Retype the password" - read -rsp " >" pwd2 ; echo - - if [[ "x$pwd1" != "x$pwd2" ]] ; then - die "Passwords are not the same" - fi - MYSQL_ROOT_PASSWORD="${pwd1}" - unset pwd1 pwd2 - fi - - local options - local sqltmp="$(emktemp)" - - # Fix bug 446200. Don't reference host my.cnf, needs to come first, - # see http://bugs.mysql.com/bug.php?id=31312 - use prefix && options="${options} '--defaults-file=${MY_SYSCONFDIR}/my.cnf'" - - # Figure out which options we need to disable to do the setup - local helpfile="${TMPDIR}/mysqld-help" - "${EROOT}/usr/sbin/mysqld" --verbose --help >"${helpfile}" 2>/dev/null - for opt in grant-tables host-cache name-resolve networking slave-start \ - federated ssl log-bin relay-log slow-query-log external-locking \ - log-slave-updates \ - ; do - optexp="--(skip-)?${opt}" optfull="--loose-skip-${opt}" - egrep -sq -- "${optexp}" "${helpfile}" && options="${options} ${optfull}" - done - - einfo "Creating the mysql database and setting proper permissions on it ..." - - # Now that /var/run is a tmpfs mount point, we need to ensure it exists before using it - PID_DIR="${EROOT}/var/run/mysqld" - if [[ ! -d "${PID_DIR}" ]]; then - install -d -m 755 -o mysql -g mysql "${PID_DIR}" || die "Could not create pid directory" - fi - - if [[ ! -d "${MY_DATADIR}" ]]; then - install -d -m 750 -o mysql -g mysql "${MY_DATADIR}" || die "Could not create data directory" - fi - - pushd "${TMPDIR}" &>/dev/null || die - - # Filling timezones, see - # http://dev.mysql.com/doc/mysql/en/time-zone-support.html - "${EROOT}/usr/bin/mysql_tzinfo_to_sql" "${EROOT}/usr/share/zoneinfo" > "${sqltmp}" 2>/dev/null - - local cmd=( "${EROOT}usr/share/mariadb/scripts/mysql_install_db" ) - [[ -f "${cmd}" ]] || cmd=( "${EROOT}usr/bin/mysql_install_db" ) - cmd+=( "--basedir=${EPREFIX}/usr" ${options} "--datadir=${ROOT}/${MY_DATADIR}" "--tmpdir=${ROOT}/${MYSQL_TMPDIR}" ) - einfo "Command: ${cmd[*]}" - su -s /bin/sh -c "${cmd[*]}" mysql \ - >"${TMPDIR}"/mysql_install_db.log 2>&1 - if [ $? -ne 0 ]; then - grep -B5 -A999 -i "ERROR" "${TMPDIR}"/mysql_install_db.log 1>&2 - die "Failed to initialize mysqld. Please review ${EPREFIX}/var/log/mysql/mysqld.err AND ${TMPDIR}/mysql_install_db.log" - fi - popd &>/dev/null || die - [[ -f "${ROOT}/${MY_DATADIR}/mysql/user.frm" ]] \ - || die "MySQL databases not installed" - - use prefix || options="${options} --user=mysql" - - local socket="${EROOT}/var/run/mysqld/mysqld${RANDOM}.sock" - local pidfile="${EROOT}/var/run/mysqld/mysqld${RANDOM}.pid" - local mysqld="${EROOT}/usr/sbin/mysqld \ - ${options} \ - --log-warnings=0 \ - --basedir=${EROOT}/usr \ - --datadir=${ROOT}/${MY_DATADIR} \ - --max_allowed_packet=8M \ - --net_buffer_length=16K \ - --socket=${socket} \ - --pid-file=${pidfile} - --tmpdir=${ROOT}/${MYSQL_TMPDIR}" - #einfo "About to start mysqld: ${mysqld}" - ebegin "Starting mysqld" - einfo "Command ${mysqld}" - ${mysqld} & - rc=$? - while ! [[ -S "${socket}" || "${maxtry}" -lt 1 ]] ; do - maxtry=$((${maxtry}-1)) - echo -n "." - sleep 1 - done - eend $rc - - if ! [[ -S "${socket}" ]]; then - die "Completely failed to start up mysqld with: ${mysqld}" - fi - - ebegin "Setting root password" - # Do this from memory, as we don't want clear text passwords in temp files - local sql="UPDATE mysql.user SET Password = PASSWORD('${MYSQL_ROOT_PASSWORD}') WHERE USER='root'; FLUSH PRIVILEGES" - "${EROOT}/usr/bin/mysql" \ - "--socket=${socket}" \ - -hlocalhost \ - -e "${sql}" - eend $? - - if [[ -n "${sqltmp}" ]] ; then - ebegin "Loading \"zoneinfo\", this step may require a few seconds" - "${EROOT}/usr/bin/mysql" \ - "--socket=${socket}" \ - -hlocalhost \ - -uroot \ - --password="${MYSQL_ROOT_PASSWORD}" \ - mysql < "${sqltmp}" - rc=$? - eend $? - [[ $rc -ne 0 ]] && ewarn "Failed to load zoneinfo!" - fi - - # Stop the server and cleanup - einfo "Stopping the server ..." - kill $(< "${pidfile}" ) - rm -f "${sqltmp}" - wait %1 - einfo "Done" -} diff --git a/dev-db/mariadb/mariadb-10.2.15-r1.ebuild b/dev-db/mariadb/mariadb-10.2.15-r1.ebuild deleted file mode 100644 index 57c64fa..0000000 --- a/dev-db/mariadb/mariadb-10.2.15-r1.ebuild +++ /dev/null @@ -1,919 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="6" -MY_EXTRAS_VER="20180515-1334Z" -SUBSLOT="18" - -JAVA_PKG_OPT_USE="jdbc" - -# Keeping eutils in EAPI=6 for emktemp in pkg_config - -inherit eutils systemd flag-o-matic prefix toolchain-funcs \ - java-pkg-opt-2 user cmake-utils multilib-build - -SRC_URI="https://downloads.mariadb.org/interstitial/${P}/source/${P}.tar.gz " - -# Gentoo patches to MySQL -if [[ "${MY_EXTRAS_VER}" != "live" && "${MY_EXTRAS_VER}" != "none" ]]; then - SRC_URI="${SRC_URI} - mirror://gentoo/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://gitweb.gentoo.org/proj/mysql-extras.git/snapshot/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~grknight/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~robbat2/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~jmbsvicetto/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2" -fi - -HOMEPAGE="http://mariadb.org/" -DESCRIPTION="An enhanced, drop-in replacement for MySQL" -LICENSE="GPL-2 LGPL-2.1+" -SLOT="0/${SUBSLOT:-0}" -IUSE="+backup bindist client-libs cracklib debug extraengine galera innodb-lz4 - innodb-lzo innodb-snappy jdbc jemalloc kerberos latin1 libressl mroonga - numa odbc oqgraph pam +perl profiling rocksdb selinux +server sphinx - sst-rsync sst-mariabackup sst-xtrabackup static static-libs systemd systemtap tcmalloc - test tokudb xml yassl" - -# Tests always fail when libressl is enabled due to hard-coded ciphers in the tests -RESTRICT="!bindist? ( bindist ) libressl? ( test )" - -REQUIRED_USE="jdbc? ( extraengine server !static ) - server? ( tokudb? ( jemalloc !tcmalloc ) ) - !server? ( !extraengine ) - ?? ( tcmalloc jemalloc ) - static? ( yassl !pam )" - -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris" - -# Shorten the path because the socket path length must be shorter than 107 chars -# and we will run a mysql server during test phase -S="${WORKDIR}/mysql" - -if [[ "${MY_EXTRAS_VER}" == "live" ]] ; then - MY_PATCH_DIR="${WORKDIR%/}/mysql-extras" - inherit git-r3 - EGIT_REPO_URI="git://anongit.gentoo.org/proj/mysql-extras.git" - EGIT_CHECKOUT_DIR="${WORKDIR%/}/mysql-extras" - EGIT_CLONE_TYPE=shallow -else - MY_PATCH_DIR="${WORKDIR%/}/mysql-extras-${MY_EXTRAS_VER}" -fi - -PATCHES=( - "${MY_PATCH_DIR}"/20015_all_mariadb-pkgconfig-location.patch - "${MY_PATCH_DIR}"/20018_all_mariadb-10.2.9-without-clientlibs-tools.patch - "${MY_PATCH_DIR}"/20024_all_mariadb-10.2.6-mysql_st-regression.patch - "${MY_PATCH_DIR}"/20025_all_mariadb-10.2.6-gssapi-detect.patch - "${MY_PATCH_DIR}"/20035_all_mariadb-10.2-atomic-detection.patch -) - -# Be warned, *DEPEND are version-dependant -# These are used for both runtime and compiletime -# MULTILIB_USEDEP only set for libraries used by the client library -COMMON_DEPEND=" - kernel_linux? ( - sys-process/procps:0= - dev-libs/libaio:0= - ) - >=sys-apps/sed-4 - >=sys-apps/texinfo-4.7-r1 - jemalloc? ( dev-libs/jemalloc:0= ) - tcmalloc? ( dev-util/google-perftools:0= ) - systemtap? ( >=dev-util/systemtap-1.3:0= ) - >=sys-libs/zlib-1.2.3:0= - kerberos? ( virtual/krb5 ) - yassl? ( net-libs/gnutls:0= ) - !yassl? ( - !libressl? ( >=dev-libs/openssl-1.0.0:0= ) - libressl? ( dev-libs/libressl:0= ) - ) - sys-libs/ncurses:0= - !bindist? ( - sys-libs/binutils-libs:0= - >=sys-libs/readline-4.1:0= - ) - server? ( - backup? ( app-arch/libarchive:0= ) - 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 ) - mroonga? ( app-text/groonga-normalizer-mysql >=app-text/groonga-7.0.4 ) - numa? ( sys-process/numactl ) - oqgraph? ( >=dev-libs/boost-1.40.0:0= dev-libs/judy:0= ) - pam? ( virtual/pam:0= ) - systemd? ( sys-apps/systemd:= ) - tokudb? ( app-arch/snappy ) - ) - >=dev-libs/libpcre-8.41-r1:3= -" -DEPEND="virtual/yacc - static? ( sys-libs/ncurses[static-libs] ) - || ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 ) - server? ( extraengine? ( jdbc? ( >=virtual/jdk-1.6 ) ) ) - ${COMMON_DEPEND}" -RDEPEND="selinux? ( sec-policy/selinux-mysql ) - !dev-db/mysql !dev-db/mariadb-galera !dev-db/percona-server !dev-db/mysql-cluster - server? ( !prefix? ( dev-db/mysql-init-scripts ) ) - ${COMMON_DEPEND} - server? ( galera? ( - sys-apps/iproute2 - =sys-cluster/galera-25* - sst-rsync? ( sys-process/lsof ) - sst-mariabackup? ( net-misc/socat[ssl] ) - 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 ) - server? ( extraengine? ( jdbc? ( >=virtual/jre-1.6 ) ) ) -" -# For other stuff to bring us in -# dev-perl/DBD-mysql is needed by some scripts installed by MySQL -# percona-xtrabackup-bin causes a circular dependency if DBD-mysql is not already installed -PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 ) - dev-db/mariadb-connector-c[${MULTILIB_USEDEP},static-libs] dev-db/mysql-connector-c[${MULTILIB_USEDEP},static-libs] - server? ( ~virtual/mysql-5.6[static=] - galera? ( sst-xtrabackup? ( || ( >=dev-db/percona-xtrabackup-bin-2.2.4 dev-db/percona-xtrabackup ) ) ) )" - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - local GCC_MAJOR_SET=$(gcc-major-version) - local GCC_MINOR_SET=$(gcc-minor-version) - if use tokudb && [[ ${GCC_MAJOR_SET} -lt 4 || \ - ${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then - eerror "${PN} with tokudb needs to be built with gcc-4.7 or later." - eerror "Please use gcc-config to switch to gcc-4.7 or later version." - die - fi - # Bug 565584. InnoDB now requires atomic functions introduced with gcc-4.7 on - # non x86{,_64} arches - if ! use amd64 && ! use x86 && [[ ${GCC_MAJOR_SET} -lt 4 || \ - ${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then - eerror "${PN} needs to be built with gcc-4.7 or later." - eerror "Please use gcc-config to switch to gcc-4.7 or later version." - die - fi - fi - java-pkg-opt-2_pkg_setup - if has test ${FEATURES} && \ - use server && ! has userpriv ${FEATURES} ; then - eerror "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root." - fi - - # This should come after all of the die statements - enewgroup mysql 60 || die "problem adding 'mysql' group" - enewuser mysql 60 -1 /dev/null mysql || die "problem adding 'mysql' user" -} - -pkg_preinst() { - java-pkg-opt-2_pkg_preinst -} - -pkg_postinst() { - # Make sure the vars are correctly initialized - mysql_init_vars - - # Create log directory securely if it does not exist - [[ -d "${ROOT}${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}${MY_LOGDIR}" - - if use server ; then - if use pam; then - einfo - elog "This install includes the PAM authentication plugin." - elog "To activate and configure the PAM plugin, please read:" - elog "https://mariadb.com/kb/en/mariadb/pam-authentication-plugin/" - einfo - fi - - if [[ -z "${REPLACING_VERSIONS}" ]] ; then - einfo - elog "You might want to run:" - elog "\"emerge --config =${CATEGORY}/${PF}\"" - elog "if this is a new install." - elog - elog "If you are switching server implentations, you should run the" - elog "mysql_upgrade tool." - einfo - else - einfo - elog "If you are upgrading major versions, you should run the" - elog "mysql_upgrade tool." - einfo - fi - - if use galera ; then - einfo - elog "Be sure to edit the my.cnf file to activate your cluster settings." - elog "This should be done after running \"emerge --config =${CATEGORY}/${PF}\"" - elog "The first time the cluster is activated, you should add" - elog "--wsrep-new-cluster to the options in /etc/conf.d/mysql for one node." - elog "This option should then be removed for subsequent starts." - einfo - fi - fi - - # Note about configuration change - einfo - elog "This version of mariadb reorganizes the configuration from a single my.cnf" - elog "to several files in /etc/mysql/${PN}.d." - elog "Please backup any changes you made to /etc/mysql/my.cnf" - elog "and add them as a new file under /etc/mysql/${PN}.d with a .cnf extension." - elog "You may have as many files as needed and they are read alphabetically." - elog "Be sure the options have the appropitate section headers, i.e. [mysqld]." - einfo -} - -src_unpack() { - unpack ${A} - # Grab the patches - [[ "${MY_EXTRAS_VER}" == "live" ]] && S="${WORKDIR%/}/mysql-extras" git-r3_src_unpack - - mv -f "${WORKDIR%/}/${P}" "${S}" || die -} - -src_prepare() { - _disable_engine() { - echo > "${S%/}/storage/${1}/CMakeLists.txt" || die - } - - _disable_plugin() { - echo > "${S%/}/plugin/${1}/CMakeLists.txt" || die - } - java-pkg-opt-2_src_prepare - if use tcmalloc; then - echo "TARGET_LINK_LIBRARIES(mysqld tcmalloc)" >> "${S}/sql/CMakeLists.txt" - fi - - # Don't build bundled xz-utils for tokudb - echo > "${S}/storage/tokudb/PerconaFT/cmake_modules/TokuThirdParty.cmake" || die - sed -i -e 's/ build_lzma//' -e 's/ build_snappy//' "${S}/storage/tokudb/PerconaFT/ft/CMakeLists.txt" || die - sed -i -e 's/add_dependencies\(tokuportability_static_conv build_jemalloc\)//' "${S}/storage/tokudb/PerconaFT/portability/CMakeLists.txt" || die - - # Remove the bundled groonga - # There is no CMake flag, it simply checks for existance - rm -r "${S}"/storage/mroonga/vendor/groonga || die "could not remove packaged groonga" - - local plugin - local server_plugins=( handler_socket auth_socket feedback metadata_lock_info - locale_info qc_info server_audit sql_errlog ) - local test_plugins=( audit_null auth_examples daemon_example fulltext ) - if ! use server; then # These plugins are for the server - for plugin in "${server_plugins[@]}" ; do - _disable_plugin "${plugin}" - done - fi - - if ! use test; then # These plugins are only used during testing - for plugin in "${test_plugins[@]}" ; do - _disable_plugin "${plugin}" - done - fi - - # Collides with mariadb-connector-c bug 655980 - _disable_plugin auth_dialog - - # Avoid useless library checks - use mroonga || _disable_engine mroonga - use oqgraph || _disable_engine oqgraph - _disable_engine example - - cmake-utils_src_prepare -} - -src_configure(){ - # bug 508724 mariadb cannot use ld.gold - tc-ld-disable-gold - # Bug #114895, bug #110149 - filter-flags "-O" "-O[01]" - - append-cxxflags -felide-constructors - - # bug #283926, with GCC4.4, this is required to get correct behavior. - append-flags -fno-strict-aliasing - - CMAKE_BUILD_TYPE="RelWithDebInfo" - - # debug hack wrt #497532 - mycmakeargs=( - -DCMAKE_C_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')" - -DCMAKE_CXX_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')" - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr" - -DMYSQL_DATADIR="${EPREFIX}/var/lib/mysql" - -DSYSCONFDIR="${EPREFIX}/etc/mysql" - -DINSTALL_BINDIR=bin - -DINSTALL_DOCDIR=share/doc/${PF} - -DINSTALL_DOCREADMEDIR=share/doc/${PF} - -DINSTALL_INCLUDEDIR=include/mysql - -DINSTALL_INFODIR=share/info - -DINSTALL_LIBDIR=$(get_libdir) - -DINSTALL_MANDIR=share/man - -DINSTALL_MYSQLSHAREDIR=share/mariadb - -DINSTALL_PLUGINDIR=$(get_libdir)/mariadb/plugin - -DINSTALL_SCRIPTDIR=share/mariadb/scripts - -DINSTALL_MYSQLDATADIR="${EPREFIX}/var/lib/mysql" - -DINSTALL_SBINDIR=sbin - -DINSTALL_SUPPORTFILESDIR="${EPREFIX}/usr/share/mariadb" - -DWITH_COMMENT="Gentoo Linux ${PF}" - -DWITH_UNIT_TESTS=$(usex test ON OFF) - -DWITH_LIBEDIT=0 - -DWITH_ZLIB=system - -DWITHOUT_LIBWRAP=1 - -DENABLED_LOCAL_INFILE=1 - -DMYSQL_UNIX_ADDR="${EPREFIX}/var/run/mysqld/mysqld.sock" - -DINSTALL_UNIX_ADDRDIR="${EPREFIX}/var/run/mysqld/mysqld.sock" - -DWITH_DEFAULT_COMPILER_OPTIONS=0 - -DWITH_DEFAULT_FEATURE_SET=0 - -DINSTALL_SYSTEMD_UNITDIR="$(systemd_get_systemunitdir)" - -DENABLE_STATIC_LIBS=$(usex static-libs ON OFF) - # The build forces this to be defined when cross-compiling. We pass it - # all the time for simplicity and to make sure it is actually correct. - -DSTACK_DIRECTION=$(tc-stack-grows-down && echo -1 || echo 1) - -DPKG_CONFIG_EXECUTABLE="${EPREFIX}/usr/bin/$(tc-getPKG_CONFIG)" - -DPLUGIN_AUTH_GSSAPI=$(usex kerberos DYNAMIC NO) - -DAUTH_GSSAPI_PLUGIN_TYPE=$(usex kerberos DYNAMIC OFF) - -DCONC_WITH_EXTERNAL_ZLIB=YES - -DWITH_EXTERNAL_ZLIB=YES - -DSUFFIX_INSTALL_DIR="" - -DWITH_UNITTEST=OFF - -DINSTALL_MYSQLTESTDIR=$(usex test 'share/mariadb/mysql-test' '') - -DWITH_SSL=$(usex yassl bundled system) - -DWITHOUT_CLIENTLIBS=YES - # bfd.h is only used starting with 10.1 and can be controlled by NOT_FOR_DISTRIBUTION - -DWITH_READLINE=$(usex bindist 1 0) - -DNOT_FOR_DISTRIBUTION=$(usex bindist 0 1) - -DENABLE_DTRACE=$(usex systemtap) - ) - - if use server ; then - - # Federated{,X} must be treated special otherwise they will not be built as plugins - if ! use extraengine ; then - mycmakeargs+=( - -DPLUGIN_FEDERATED=NO - -DPLUGIN_FEDERATEDX=NO ) - fi - - mycmakeargs+=( - -DWITH_JEMALLOC=$(usex jemalloc system) - -DWITH_PCRE=system - -DPLUGIN_OQGRAPH=$(usex oqgraph DYNAMIC 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) - -DCONNECT_WITH_JDBC=$(usex jdbc) - # Build failure and autodep wrt bug 639144 - -DCONNECT_WITH_MONGO=OFF - -DWITH_WSREP=$(usex galera) - -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 DYNAMIC NO) - -DPLUGIN_AUTH_GSSAPI=$(usex kerberos DYNAMIC NO) - -DWITH_MARIABACKUP=$(usex backup ON OFF) - -DWITH_LIBARCHIVE=$(usex backup ON OFF) - -DINSTALL_SQLBENCHDIR='' - -DPLUGIN_ROCKSDB=$(usex rocksdb DYNAMIC NO) - # systemd is only linked to for server notification - -DWITH_SYSTEMD=$(usex systemd yes no) - -DWITH_NUMA=$(usex numa ON OFF) - ) - - if [[ ( -n ${MYSQL_DEFAULT_CHARSET} ) && ( -n ${MYSQL_DEFAULT_COLLATION} ) ]]; then - ewarn "You are using a custom charset of ${MYSQL_DEFAULT_CHARSET}" - ewarn "and a collation of ${MYSQL_DEFAULT_COLLATION}." - ewarn "You MUST file bugs without these variables set." - - mycmakeargs+=( - -DDEFAULT_CHARSET=${MYSQL_DEFAULT_CHARSET} - -DDEFAULT_COLLATION=${MYSQL_DEFAULT_COLLATION} - ) - - elif ! use latin1 ; then - mycmakeargs+=( - -DDEFAULT_CHARSET=utf8 - -DDEFAULT_COLLATION=utf8_general_ci - ) - else - mycmakeargs+=( - -DDEFAULT_CHARSET=latin1 - -DDEFAULT_COLLATION=latin1_swedish_ci - ) - fi - mycmakeargs+=( - -DEXTRA_CHARSETS=all - -DMYSQL_USER=mysql - -DDISABLE_SHARED=$(usex static YES NO) - -DWITH_DEBUG=$(usex debug) - -DWITH_EMBEDDED_SERVER=OFF - -DWITH_PROFILING=$(usex profiling) - ) - - if use static; then - mycmakeargs+=( -DWITH_PIC=1 ) - fi - - if use jemalloc || use tcmalloc ; then - mycmakeargs+=( -DWITH_SAFEMALLOC=OFF ) - fi - - # Storage engines - mycmakeargs+=( - -DWITH_ARCHIVE_STORAGE_ENGINE=1 - -DWITH_BLACKHOLE_STORAGE_ENGINE=1 - -DWITH_CSV_STORAGE_ENGINE=1 - -DWITH_HEAP_STORAGE_ENGINE=1 - -DWITH_INNOBASE_STORAGE_ENGINE=1 - -DWITH_MYISAMMRG_STORAGE_ENGINE=1 - -DWITH_MYISAM_STORAGE_ENGINE=1 - -DWITH_PARTITION_STORAGE_ENGINE=1 - ) - - else - mycmakeargs+=( - -DWITHOUT_SERVER=1 - -DEXTRA_CHARSETS=none - -DINSTALL_SQLBENCHDIR= - -DWITH_SYSTEMD=no - ) - fi - - cmake-utils_src_configure -} - -src_compile() { - cmake-utils_src_compile -} - -src_install() { - cmake-utils_src_install - - # Remove an unnecessary, private config header which will never match between ABIs and is not meant to be used - if [[ -f "${ED}/usr/include/mysql/server/private/config.h" ]] ; then - rm "${ED}/usr/include/mysql/server/private/config.h" || die - fi - - # Make sure the vars are correctly initialized - mysql_init_vars - - # Convenience links - einfo "Making Convenience links for mysqlcheck multi-call binary" - dosym "mysqlcheck" "/usr/bin/mysqlanalyze" - dosym "mysqlcheck" "/usr/bin/mysqlrepair" - dosym "mysqlcheck" "/usr/bin/mysqloptimize" - - # INSTALL_LAYOUT=STANDALONE causes cmake to create a /usr/data dir - if [[ -d "${ED}/usr/data" ]] ; then - rm -Rf "${ED}/usr/data" || die - fi - - # Unless they explicitly specific USE=test, then do not install the - # testsuite. It DOES have a use to be installed, esp. when you want to do a - # validation of your database configuration after tuning it. - if ! use test ; then - rm -rf "${D}/${MY_SHAREDSTATEDIR}/mysql-test" - fi - - # Configuration stuff - einfo "Building default configuration ..." - insinto "${MY_SYSCONFDIR#${EPREFIX}}" - [[ -f "${S}/scripts/mysqlaccess.conf" ]] && doins "${S}"/scripts/mysqlaccess.conf - cp "${FILESDIR}/my.cnf-10.2" "${TMPDIR}/my.cnf" || die - eprefixify "${TMPDIR}/my.cnf" - doins "${TMPDIR}/my.cnf" - insinto "${MY_SYSCONFDIR#${EPREFIX}}/mariadb.d" - cp "${FILESDIR}/my.cnf.distro-client" "${TMPDIR}/50-distro-client.cnf" || die - eprefixify "${TMPDIR}/50-distro-client.cnf" - doins "${TMPDIR}/50-distro-client.cnf" - - if use server ; then - mycnf_src="my.cnf.distro-server" - sed -e "s!@DATADIR@!${MY_DATADIR}!g" \ - "${FILESDIR}/${mycnf_src}" \ - > "${TMPDIR}/my.cnf.ok" || die - if use prefix ; then - sed -i -r -e '/^user[[:space:]]*=[[:space:]]*mysql$/d' \ - "${TMPDIR}/my.cnf.ok" || die - fi - if use latin1 ; then - sed -i \ - -e "/character-set/s|utf8|latin1|g" \ - "${TMPDIR}/my.cnf.ok" || die - fi - eprefixify "${TMPDIR}/my.cnf.ok" - newins "${TMPDIR}/my.cnf.ok" 50-distro-server.cnf - - einfo "Including support files and sample configurations" - docinto "support-files" - local script - for script in \ - "${S}"/support-files/magic - do - [[ -f "$script" ]] && dodoc "${script}" - done - - docinto "scripts" - for script in "${S}"/scripts/mysql* ; do - [[ ( -f "$script" ) && ( "${script%.sh}" == "${script}" ) ]] && dodoc "${script}" - done - fi - - #Remove mytop if perl is not selected - [[ -e "${ED}/usr/bin/mytop" ]] && ! use perl && rm -f "${ED}/usr/bin/mytop" -} - -# Official test instructions: -# USE='extraengine perl server static-libs' \ -# FEATURES='test userpriv -usersandbox' \ -# ebuild mariadb-X.X.XX.ebuild \ -# digest clean package -src_test() { - - _disable_test() { - local rawtestname reason - rawtestname="${1}" ; shift - reason="${@}" - ewarn "test '${rawtestname}' disabled: '${reason}'" - echo ${rawtestname} : ${reason} >> "${T}/disabled.def" - } - - local TESTDIR="${BUILD_DIR}/mysql-test" - local retstatus_unit - 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" - - 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} || die - - # Run mysql tests - pushd "${TESTDIR}" > /dev/null || die - - touch "${T}/disabled.def" - # 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 - _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 rpl.rpl_extra_col_master_myisam ; do - _disable_test "$t" "False positives in Gentoo" - done - - if ! use client-libs ; then - _disable_test main.plugin_auth "Needs client libraries built" - fi - - # run mysql-test tests - perl mysql-test-run.pl --force --vardir="${T}/var-tests" --reorder --skip-test=tokudb --skip-test-list="${T}/disabled.def" - retstatus_tests=$? - - popd > /dev/null || 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" ]] || die "Test failures: $failures" - einfo "Tests successfully completed" -} - -mysql_init_vars() { - MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX}/usr/share/mariadb"} - MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX}/etc/mysql"} - MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX}/var/lib/mysql"} - MY_LOGDIR=${MY_LOGDIR="${EPREFIX}/var/log/mysql"} - - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR="" - if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then - MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \ - | sed -ne '/datadir/s|^--datadir=||p' \ - | tail -n1` - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR=`grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \ - | sed -e 's/.*=\s*//' \ - | tail -n1` - fi - fi - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR="${MY_LOCALSTATEDIR}" - einfo "Using default MY_DATADIR" - fi - elog "MySQL MY_DATADIR is ${MY_DATADIR}" - - if [[ -z "${PREVIOUS_DATADIR}" ]] ; then - if [[ -e "${MY_DATADIR}" ]] ; then - # If you get this and you're wondering about it, see bug #207636 - elog "MySQL datadir found in ${MY_DATADIR}" - elog "A new one will not be created." - PREVIOUS_DATADIR="yes" - else - PREVIOUS_DATADIR="no" - fi - export PREVIOUS_DATADIR - fi - else - if [[ ${EBUILD_PHASE} == "config" ]]; then - local new_MY_DATADIR - new_MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \ - | sed -ne '/datadir/s|^--datadir=||p' \ - | tail -n1` - - if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]]; then - ewarn "MySQL MY_DATADIR has changed" - ewarn "from ${MY_DATADIR}" - ewarn "to ${new_MY_DATADIR}" - MY_DATADIR="${new_MY_DATADIR}" - fi - fi - fi - - export MY_SHAREDSTATEDIR MY_SYSCONFDIR - export MY_LOCALSTATEDIR MY_LOGDIR - export MY_DATADIR -} - -pkg_config() { - _getoptval() { - local mypd="${EROOT}"/usr/bin/my_print_defaults - local section="$1" - local flag="--${2}=" - local extra_options="${3}" - "${mypd}" $extra_options $section | sed -n "/^${flag}/s,${flag},,gp" - } - local old_MY_DATADIR="${MY_DATADIR}" - local old_HOME="${HOME}" - # my_print_defaults needs to read stuff in $HOME/.my.cnf - export HOME=${EPREFIX}/root - - # Make sure the vars are correctly initialized - mysql_init_vars - - [[ -z "${MY_DATADIR}" ]] && die "Sorry, unable to find MY_DATADIR" - if [[ ! -x "${EROOT}/usr/sbin/mysqld" ]] ; then - die "Minimal builds do NOT include the MySQL server" - fi - - if [[ ( -n "${MY_DATADIR}" ) && ( "${MY_DATADIR}" != "${old_MY_DATADIR}" ) ]]; then - local MY_DATADIR_s="${ROOT}/${MY_DATADIR}" - MY_DATADIR_s="${MY_DATADIR_s%%/}" - local old_MY_DATADIR_s="${ROOT}/${old_MY_DATADIR}" - old_MY_DATADIR_s="${old_MY_DATADIR_s%%/}" - - if [[ ( -d "${old_MY_DATADIR_s}" ) && ( "${old_MY_DATADIR_s}" != / ) ]]; then - if [[ -d "${MY_DATADIR_s}" ]]; then - ewarn "Both ${old_MY_DATADIR_s} and ${MY_DATADIR_s} exist" - ewarn "Attempting to use ${MY_DATADIR_s} and preserving ${old_MY_DATADIR_s}" - else - elog "Moving MY_DATADIR from ${old_MY_DATADIR_s} to ${MY_DATADIR_s}" - mv --strip-trailing-slashes -T "${old_MY_DATADIR_s}" "${MY_DATADIR_s}" \ - || die "Moving MY_DATADIR failed" - fi - else - ewarn "Previous MY_DATADIR (${old_MY_DATADIR_s}) does not exist" - if [[ -d "${MY_DATADIR_s}" ]]; then - ewarn "Attempting to use ${MY_DATADIR_s}" - else - eerror "New MY_DATADIR (${MY_DATADIR_s}) does not exist" - die "Configuration Failed! Please reinstall ${CATEGORY}/${PN}" - fi - fi - fi - - local pwd1="a" - local pwd2="b" - local maxtry=15 - - if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then - local tmp_mysqld_password_source= - - for tmp_mysqld_password_source in mysql client; do - einfo "Trying to get password for mysql 'root' user from '${tmp_mysqld_password_source}' section ..." - MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password)" - if [[ -n "${MYSQL_ROOT_PASSWORD}" ]]; then - if [[ ${MYSQL_ROOT_PASSWORD} == *$'\n'* ]]; then - ewarn "Ignoring password from '${tmp_mysqld_password_source}' section due to newline character (do you have multiple password options set?)!" - MYSQL_ROOT_PASSWORD= - continue - fi - - einfo "Found password in '${tmp_mysqld_password_source}' section!" - break - fi - done - - # Sometimes --show is required to display passwords in some implementations of my_print_defaults - if [[ "${MYSQL_ROOT_PASSWORD}" == '*****' ]]; then - MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password --show)" - fi - - unset tmp_mysqld_password_source - fi - MYSQL_TMPDIR="$(_getoptval mysqld tmpdir)" - # These are dir+prefix - MYSQL_RELAY_LOG="$(_getoptval mysqld relay-log)" - MYSQL_RELAY_LOG=${MYSQL_RELAY_LOG%/*} - MYSQL_LOG_BIN="$(_getoptval mysqld log-bin)" - MYSQL_LOG_BIN=${MYSQL_LOG_BIN%/*} - - if [[ ! -d "${ROOT}/$MYSQL_TMPDIR" ]]; then - einfo "Creating MySQL tmpdir $MYSQL_TMPDIR" - install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_TMPDIR" - fi - if [[ ! -d "${ROOT}/$MYSQL_LOG_BIN" ]]; then - einfo "Creating MySQL log-bin directory $MYSQL_LOG_BIN" - install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_LOG_BIN" - fi - if [[ ! -d "${EROOT}/$MYSQL_RELAY_LOG" ]]; then - einfo "Creating MySQL relay-log directory $MYSQL_RELAY_LOG" - install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_RELAY_LOG" - fi - - if [[ -d "${ROOT}/${MY_DATADIR}/mysql" ]] ; then - ewarn "You have already a MySQL database in place." - ewarn "(${ROOT}/${MY_DATADIR}/*)" - ewarn "Please rename or delete it if you wish to replace it." - die "MySQL database already exists!" - 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" - - if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then - - einfo "Please provide a password for the mysql 'root' user now" - einfo "or through the ${HOME}/.my.cnf file." - ewarn "Avoid [\"'\\_%] characters in the password" - read -rsp " >" pwd1 ; echo - - einfo "Retype the password" - read -rsp " >" pwd2 ; echo - - if [[ "x$pwd1" != "x$pwd2" ]] ; then - die "Passwords are not the same" - fi - MYSQL_ROOT_PASSWORD="${pwd1}" - unset pwd1 pwd2 - fi - - local options - local sqltmp="$(emktemp)" - - # Fix bug 446200. Don't reference host my.cnf, needs to come first, - # see http://bugs.mysql.com/bug.php?id=31312 - use prefix && options="${options} '--defaults-file=${MY_SYSCONFDIR}/my.cnf'" - - # Figure out which options we need to disable to do the setup - local helpfile="${TMPDIR}/mysqld-help" - "${EROOT}/usr/sbin/mysqld" --verbose --help >"${helpfile}" 2>/dev/null - for opt in grant-tables host-cache name-resolve networking slave-start \ - federated ssl log-bin relay-log slow-query-log external-locking \ - log-slave-updates \ - ; do - optexp="--(skip-)?${opt}" optfull="--loose-skip-${opt}" - egrep -sq -- "${optexp}" "${helpfile}" && options="${options} ${optfull}" - done - - einfo "Creating the mysql database and setting proper permissions on it ..." - - # Now that /var/run is a tmpfs mount point, we need to ensure it exists before using it - PID_DIR="${EROOT}/var/run/mysqld" - if [[ ! -d "${PID_DIR}" ]]; then - install -d -m 755 -o mysql -g mysql "${PID_DIR}" || die "Could not create pid directory" - fi - - if [[ ! -d "${MY_DATADIR}" ]]; then - install -d -m 750 -o mysql -g mysql "${MY_DATADIR}" || die "Could not create data directory" - fi - - pushd "${TMPDIR}" &>/dev/null || die - - # Filling timezones, see - # http://dev.mysql.com/doc/mysql/en/time-zone-support.html - "${EROOT}/usr/bin/mysql_tzinfo_to_sql" "${EROOT}/usr/share/zoneinfo" > "${sqltmp}" 2>/dev/null - - local cmd=( "${EROOT}usr/share/mariadb/scripts/mysql_install_db" ) - [[ -f "${cmd}" ]] || cmd=( "${EROOT}usr/bin/mysql_install_db" ) - cmd+=( "--basedir=${EPREFIX}/usr" ${options} "--datadir=${ROOT}/${MY_DATADIR}" "--tmpdir=${ROOT}/${MYSQL_TMPDIR}" ) - einfo "Command: ${cmd[*]}" - su -s /bin/sh -c "${cmd[*]}" mysql \ - >"${TMPDIR}"/mysql_install_db.log 2>&1 - if [ $? -ne 0 ]; then - grep -B5 -A999 -i "ERROR" "${TMPDIR}"/mysql_install_db.log 1>&2 - die "Failed to initialize mysqld. Please review ${EPREFIX}/var/log/mysql/mysqld.err AND ${TMPDIR}/mysql_install_db.log" - fi - popd &>/dev/null || die - [[ -f "${ROOT}/${MY_DATADIR}/mysql/user.frm" ]] \ - || die "MySQL databases not installed" - - use prefix || options="${options} --user=mysql" - - local socket="${EROOT}/var/run/mysqld/mysqld${RANDOM}.sock" - local pidfile="${EROOT}/var/run/mysqld/mysqld${RANDOM}.pid" - local mysqld="${EROOT}/usr/sbin/mysqld \ - ${options} \ - --log-warnings=0 \ - --basedir=${EROOT}/usr \ - --datadir=${ROOT}/${MY_DATADIR} \ - --max_allowed_packet=8M \ - --net_buffer_length=16K \ - --socket=${socket} \ - --pid-file=${pidfile} - --tmpdir=${ROOT}/${MYSQL_TMPDIR}" - #einfo "About to start mysqld: ${mysqld}" - ebegin "Starting mysqld" - einfo "Command ${mysqld}" - ${mysqld} & - rc=$? - while ! [[ -S "${socket}" || "${maxtry}" -lt 1 ]] ; do - maxtry=$((${maxtry}-1)) - echo -n "." - sleep 1 - done - eend $rc - - if ! [[ -S "${socket}" ]]; then - die "Completely failed to start up mysqld with: ${mysqld}" - fi - - ebegin "Setting root password" - # Do this from memory, as we don't want clear text passwords in temp files - local sql="UPDATE mysql.user SET Password = PASSWORD('${MYSQL_ROOT_PASSWORD}') WHERE USER='root'; FLUSH PRIVILEGES" - "${EROOT}/usr/bin/mysql" \ - "--socket=${socket}" \ - -hlocalhost \ - -e "${sql}" - eend $? - - if [[ -n "${sqltmp}" ]] ; then - ebegin "Loading \"zoneinfo\", this step may require a few seconds" - "${EROOT}/usr/bin/mysql" \ - "--socket=${socket}" \ - -hlocalhost \ - -uroot \ - --password="${MYSQL_ROOT_PASSWORD}" \ - mysql < "${sqltmp}" - rc=$? - eend $? - [[ $rc -ne 0 ]] && ewarn "Failed to load zoneinfo!" - fi - - # Stop the server and cleanup - einfo "Stopping the server ..." - kill $(< "${pidfile}" ) - rm -f "${sqltmp}" - wait %1 - einfo "Done" -} diff --git a/dev-db/mariadb/mariadb-5.1.67.ebuild b/dev-db/mariadb/mariadb-5.1.67.ebuild deleted file mode 100644 index a09e192..0000000 --- a/dev-db/mariadb/mariadb-5.1.67.ebuild +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="4" -MY_EXTRAS_VER="20121101-2319Z" - -# Build system -BUILD="autotools" - -inherit toolchain-funcs mysql-v2 -# 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 ~x86-fbsd ~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}" - -# 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() { - sed -i \ - -e '/^noinst_PROGRAMS/s/basic-t//g' \ - "${S}"/unittest/mytap/t/Makefile.am - mysql-v2_src_prepare -} - -# Official test instructions: -# USE='berkdb -cluster embedded extraengine perl ssl community' \ -# FEATURES='test userpriv -usersandbox' \ -# ebuild mariadb-X.X.XX.ebuild \ -# digest clean package -src_test() { - # 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" - - emake check || die "make check failed" - 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" - cd "${S}" - einfo ">>> Test phase [test]: ${CATEGORY}/${PF}" - local retstatus_unit - local retstatus_ns - local retstatus_ps - local t - addpredict /this-dir-does-not-exist/t9.MYI - - # Ensure that parallel runs don't die - export MTR_BUILD_THREAD="$((${RANDOM} % 100))" - - # The entire 5.0 series has pre-generated SSL certificates, they have - # mostly expired now. ${S}/mysql-tests/std-data/*.pem - # The certs really SHOULD be generated for the tests, so that they are - # not expiring like this. We cannot do so ourselves as the tests look - # closely as the cert path data, and we do not have the CA key to regen - # ourselves. Alternatively, upstream should generate them with at least - # 50-year validity. - # - # Known expiry points: - # 4.1.*, 5.0.0-5.0.22, 5.1.7: Expires 2013/09/09 - # 5.0.23-5.0.77, 5.1.7-5.1.22?: Expires 2009/01/27 - # 5.0.78-5.0.90, 5.1.??-5.1.42: Expires 2010/01/28 - # - # mysql-test/std_data/untrusted-cacert.pem is MEANT to be - # expired/invalid. - case ${PV} in - 5.1.*|5.4.*|5.5.*) - for t in openssl_1 rpl_openssl rpl.rpl_ssl rpl.rpl_ssl1 ssl ssl_8k_key \ - ssl_compress ssl_connect rpl.rpl_heartbeat_ssl ; do \ - mysql-v2_disable_test \ - "$t" \ - "These OpenSSL tests break due to expired certificates" - done - ;; - esac - - # These are also failing in MySQL 5.1 for now, and are believed to be - # false positives: - # - # main.mysql_comment, main.mysql_upgrade, main.information_schema, - # funcs_1.is_columns_mysql funcs_1.is_tables_mysql funcs_1.is_triggers: - # fails due to USE=-latin1 / utf8 default - # - # main.mysql_client_test: - # segfaults at random under Portage only, suspect resource limits. - # - # main.not_partition: - # Failure reason unknown at this time, must resolve before package.mask - # removal FIXME - case ${PV} in - 5.1.*|5.2.*|5.4.*|5.5.*) - for t in main.mysql_client_test main.mysql_comments \ - main.mysql_upgrade \ - main.information_schema \ - main.not_partition funcs_1.is_columns_mysql \ - funcs_1.is_tables_mysql funcs_1.is_triggers; do - mysql-v2_disable_test "$t" "False positives in Gentoo" - done - ;; - esac - - # New failures in 5.1.50/5.1.51, reported by jmbsvicetto. - # These tests are picking up a 'connect-timeout' config from somewhere, - # which is not valid, and since it does not have 'loose-' in front of - # it, it's causing a failure - case ${PV} in - 5.1.5*|5.4.*|5.5.*|6*) - for t in rpl.rpl_mysql_upgrade main.log_tables_upgrade ; do - mysql-v2_disable_test "$t" \ - "False positives in Gentoo: connect-timeout" - done - ;; - esac - - use profiling && use community \ - || mysql-v2_disable_test main.profiling \ - "Profiling test needs profiling support" - - if [ "${PN}" == "mariadb" ]; then - for t in \ - parts.part_supported_sql_func_ndb \ - parts.partition_auto_increment_ndb ; do - mysql-v2_disable_test $t "ndb not supported in mariadb" - done - fi - - # create directories because mysqladmin might make out of order - mkdir -p "${S}"/mysql-test/var-{ps,ns}{,/log} - - # We run the test protocols seperately - emake test-unit - retstatus_unit=$? - [[ $retstatus_unit -eq 0 ]] || eerror "test-unit failed" - - emake test-ns force="--force --vardir=${S}/mysql-test/var-ns" - retstatus_ns=$? - [[ $retstatus_ns -eq 0 ]] || eerror "test-ns failed" - has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox" - - emake test-ps force="--force --vardir=${S}/mysql-test/var-ps" - retstatus_ps=$? - [[ $retstatus_ps -eq 0 ]] || eerror "test-ps failed" - has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox" - - # TODO: - # When upstream enables the pr and nr testsuites, we need those as well. - - # 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_ns -eq 0 ]] || failures="${failures} test-ns" - [[ $retstatus_ps -eq 0 ]] || failures="${failures} test-ps" - 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-5.2.14.ebuild b/dev-db/mariadb/mariadb-5.2.14.ebuild deleted file mode 100644 index a09e192..0000000 --- a/dev-db/mariadb/mariadb-5.2.14.ebuild +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="4" -MY_EXTRAS_VER="20121101-2319Z" - -# Build system -BUILD="autotools" - -inherit toolchain-funcs mysql-v2 -# 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 ~x86-fbsd ~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}" - -# 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() { - sed -i \ - -e '/^noinst_PROGRAMS/s/basic-t//g' \ - "${S}"/unittest/mytap/t/Makefile.am - mysql-v2_src_prepare -} - -# Official test instructions: -# USE='berkdb -cluster embedded extraengine perl ssl community' \ -# FEATURES='test userpriv -usersandbox' \ -# ebuild mariadb-X.X.XX.ebuild \ -# digest clean package -src_test() { - # 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" - - emake check || die "make check failed" - 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" - cd "${S}" - einfo ">>> Test phase [test]: ${CATEGORY}/${PF}" - local retstatus_unit - local retstatus_ns - local retstatus_ps - local t - addpredict /this-dir-does-not-exist/t9.MYI - - # Ensure that parallel runs don't die - export MTR_BUILD_THREAD="$((${RANDOM} % 100))" - - # The entire 5.0 series has pre-generated SSL certificates, they have - # mostly expired now. ${S}/mysql-tests/std-data/*.pem - # The certs really SHOULD be generated for the tests, so that they are - # not expiring like this. We cannot do so ourselves as the tests look - # closely as the cert path data, and we do not have the CA key to regen - # ourselves. Alternatively, upstream should generate them with at least - # 50-year validity. - # - # Known expiry points: - # 4.1.*, 5.0.0-5.0.22, 5.1.7: Expires 2013/09/09 - # 5.0.23-5.0.77, 5.1.7-5.1.22?: Expires 2009/01/27 - # 5.0.78-5.0.90, 5.1.??-5.1.42: Expires 2010/01/28 - # - # mysql-test/std_data/untrusted-cacert.pem is MEANT to be - # expired/invalid. - case ${PV} in - 5.1.*|5.4.*|5.5.*) - for t in openssl_1 rpl_openssl rpl.rpl_ssl rpl.rpl_ssl1 ssl ssl_8k_key \ - ssl_compress ssl_connect rpl.rpl_heartbeat_ssl ; do \ - mysql-v2_disable_test \ - "$t" \ - "These OpenSSL tests break due to expired certificates" - done - ;; - esac - - # These are also failing in MySQL 5.1 for now, and are believed to be - # false positives: - # - # main.mysql_comment, main.mysql_upgrade, main.information_schema, - # funcs_1.is_columns_mysql funcs_1.is_tables_mysql funcs_1.is_triggers: - # fails due to USE=-latin1 / utf8 default - # - # main.mysql_client_test: - # segfaults at random under Portage only, suspect resource limits. - # - # main.not_partition: - # Failure reason unknown at this time, must resolve before package.mask - # removal FIXME - case ${PV} in - 5.1.*|5.2.*|5.4.*|5.5.*) - for t in main.mysql_client_test main.mysql_comments \ - main.mysql_upgrade \ - main.information_schema \ - main.not_partition funcs_1.is_columns_mysql \ - funcs_1.is_tables_mysql funcs_1.is_triggers; do - mysql-v2_disable_test "$t" "False positives in Gentoo" - done - ;; - esac - - # New failures in 5.1.50/5.1.51, reported by jmbsvicetto. - # These tests are picking up a 'connect-timeout' config from somewhere, - # which is not valid, and since it does not have 'loose-' in front of - # it, it's causing a failure - case ${PV} in - 5.1.5*|5.4.*|5.5.*|6*) - for t in rpl.rpl_mysql_upgrade main.log_tables_upgrade ; do - mysql-v2_disable_test "$t" \ - "False positives in Gentoo: connect-timeout" - done - ;; - esac - - use profiling && use community \ - || mysql-v2_disable_test main.profiling \ - "Profiling test needs profiling support" - - if [ "${PN}" == "mariadb" ]; then - for t in \ - parts.part_supported_sql_func_ndb \ - parts.partition_auto_increment_ndb ; do - mysql-v2_disable_test $t "ndb not supported in mariadb" - done - fi - - # create directories because mysqladmin might make out of order - mkdir -p "${S}"/mysql-test/var-{ps,ns}{,/log} - - # We run the test protocols seperately - emake test-unit - retstatus_unit=$? - [[ $retstatus_unit -eq 0 ]] || eerror "test-unit failed" - - emake test-ns force="--force --vardir=${S}/mysql-test/var-ns" - retstatus_ns=$? - [[ $retstatus_ns -eq 0 ]] || eerror "test-ns failed" - has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox" - - emake test-ps force="--force --vardir=${S}/mysql-test/var-ps" - retstatus_ps=$? - [[ $retstatus_ps -eq 0 ]] || eerror "test-ps failed" - has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox" - - # TODO: - # When upstream enables the pr and nr testsuites, we need those as well. - - # 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_ns -eq 0 ]] || failures="${failures} test-ns" - [[ $retstatus_ps -eq 0 ]] || failures="${failures} test-ps" - 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-5.3.12.ebuild b/dev-db/mariadb/mariadb-5.3.12.ebuild deleted file mode 100644 index a09e192..0000000 --- a/dev-db/mariadb/mariadb-5.3.12.ebuild +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="4" -MY_EXTRAS_VER="20121101-2319Z" - -# Build system -BUILD="autotools" - -inherit toolchain-funcs mysql-v2 -# 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 ~x86-fbsd ~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}" - -# 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() { - sed -i \ - -e '/^noinst_PROGRAMS/s/basic-t//g' \ - "${S}"/unittest/mytap/t/Makefile.am - mysql-v2_src_prepare -} - -# Official test instructions: -# USE='berkdb -cluster embedded extraengine perl ssl community' \ -# FEATURES='test userpriv -usersandbox' \ -# ebuild mariadb-X.X.XX.ebuild \ -# digest clean package -src_test() { - # 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" - - emake check || die "make check failed" - 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" - cd "${S}" - einfo ">>> Test phase [test]: ${CATEGORY}/${PF}" - local retstatus_unit - local retstatus_ns - local retstatus_ps - local t - addpredict /this-dir-does-not-exist/t9.MYI - - # Ensure that parallel runs don't die - export MTR_BUILD_THREAD="$((${RANDOM} % 100))" - - # The entire 5.0 series has pre-generated SSL certificates, they have - # mostly expired now. ${S}/mysql-tests/std-data/*.pem - # The certs really SHOULD be generated for the tests, so that they are - # not expiring like this. We cannot do so ourselves as the tests look - # closely as the cert path data, and we do not have the CA key to regen - # ourselves. Alternatively, upstream should generate them with at least - # 50-year validity. - # - # Known expiry points: - # 4.1.*, 5.0.0-5.0.22, 5.1.7: Expires 2013/09/09 - # 5.0.23-5.0.77, 5.1.7-5.1.22?: Expires 2009/01/27 - # 5.0.78-5.0.90, 5.1.??-5.1.42: Expires 2010/01/28 - # - # mysql-test/std_data/untrusted-cacert.pem is MEANT to be - # expired/invalid. - case ${PV} in - 5.1.*|5.4.*|5.5.*) - for t in openssl_1 rpl_openssl rpl.rpl_ssl rpl.rpl_ssl1 ssl ssl_8k_key \ - ssl_compress ssl_connect rpl.rpl_heartbeat_ssl ; do \ - mysql-v2_disable_test \ - "$t" \ - "These OpenSSL tests break due to expired certificates" - done - ;; - esac - - # These are also failing in MySQL 5.1 for now, and are believed to be - # false positives: - # - # main.mysql_comment, main.mysql_upgrade, main.information_schema, - # funcs_1.is_columns_mysql funcs_1.is_tables_mysql funcs_1.is_triggers: - # fails due to USE=-latin1 / utf8 default - # - # main.mysql_client_test: - # segfaults at random under Portage only, suspect resource limits. - # - # main.not_partition: - # Failure reason unknown at this time, must resolve before package.mask - # removal FIXME - case ${PV} in - 5.1.*|5.2.*|5.4.*|5.5.*) - for t in main.mysql_client_test main.mysql_comments \ - main.mysql_upgrade \ - main.information_schema \ - main.not_partition funcs_1.is_columns_mysql \ - funcs_1.is_tables_mysql funcs_1.is_triggers; do - mysql-v2_disable_test "$t" "False positives in Gentoo" - done - ;; - esac - - # New failures in 5.1.50/5.1.51, reported by jmbsvicetto. - # These tests are picking up a 'connect-timeout' config from somewhere, - # which is not valid, and since it does not have 'loose-' in front of - # it, it's causing a failure - case ${PV} in - 5.1.5*|5.4.*|5.5.*|6*) - for t in rpl.rpl_mysql_upgrade main.log_tables_upgrade ; do - mysql-v2_disable_test "$t" \ - "False positives in Gentoo: connect-timeout" - done - ;; - esac - - use profiling && use community \ - || mysql-v2_disable_test main.profiling \ - "Profiling test needs profiling support" - - if [ "${PN}" == "mariadb" ]; then - for t in \ - parts.part_supported_sql_func_ndb \ - parts.partition_auto_increment_ndb ; do - mysql-v2_disable_test $t "ndb not supported in mariadb" - done - fi - - # create directories because mysqladmin might make out of order - mkdir -p "${S}"/mysql-test/var-{ps,ns}{,/log} - - # We run the test protocols seperately - emake test-unit - retstatus_unit=$? - [[ $retstatus_unit -eq 0 ]] || eerror "test-unit failed" - - emake test-ns force="--force --vardir=${S}/mysql-test/var-ns" - retstatus_ns=$? - [[ $retstatus_ns -eq 0 ]] || eerror "test-ns failed" - has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox" - - emake test-ps force="--force --vardir=${S}/mysql-test/var-ps" - retstatus_ps=$? - [[ $retstatus_ps -eq 0 ]] || eerror "test-ps failed" - has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox" - - # TODO: - # When upstream enables the pr and nr testsuites, we need those as well. - - # 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_ns -eq 0 ]] || failures="${failures} test-ns" - [[ $retstatus_ps -eq 0 ]] || failures="${failures} test-ps" - 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-5.5.49.ebuild b/dev-db/mariadb/mariadb-5.5.49.ebuild deleted file mode 100644 index 0f48548..0000000 --- a/dev-db/mariadb/mariadb-5.5.49.ebuild +++ /dev/null @@ -1,122 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="5" -MY_EXTRAS_VER="20150509-1847Z" - -# Build system -BUILD="cmake" - -inherit toolchain-funcs mysql-v2 -# 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 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~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}" - -# 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 - -# Official test instructions: -# USE='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))" - # 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 symlink for the tests to find the replace util - ln -s "${BUILD_DIR}/extra/replace" "${BUILD_DIR}/client/" - - # These are failing in MariaDB 5.5 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. - # - # archive.mysqlhotcopy_archive main.mysqlhotcopy_myisam - # fails due to bad cleanup of previous tests when run in parallel - # The tool is deprecated anyway - # Bug 532288 - - for t in main.mysql_client_test main.mysql_client_test_nonblock \ - binlog.binlog_statement_insert_delayed main.information_schema \ - main.mysqld--help \ - archive.mysqlhotcopy_archive main.mysqlhotcopy_myisam \ - 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 - 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 -} diff --git a/dev-db/mariadb/mariadb-5.5.60-r1.ebuild b/dev-db/mariadb/mariadb-5.5.60-r1.ebuild deleted file mode 100644 index fa6dd41..0000000 --- a/dev-db/mariadb/mariadb-5.5.60-r1.ebuild +++ /dev/null @@ -1,827 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="6" -MY_EXTRAS_VER="20180628-0201Z" -SUBSLOT="18" - -# Keeping eutils in EAPI=6 for emktemp in pkg_config - -inherit eutils flag-o-matic prefix toolchain-funcs user cmake-utils multilib-build - -SRC_URI="https://downloads.mariadb.org/interstitial/${P}/source/${P}.tar.gz " - -# Gentoo patches to MySQL -if [[ "${MY_EXTRAS_VER}" != "live" && "${MY_EXTRAS_VER}" != "none" ]]; then - SRC_URI="${SRC_URI} - mirror://gentoo/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://gitweb.gentoo.org/proj/mysql-extras.git/snapshot/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~grknight/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~robbat2/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~jmbsvicetto/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2" -fi - -HOMEPAGE="http://mariadb.org/" -DESCRIPTION="An enhanced, drop-in replacement for MySQL" -LICENSE="GPL-2" -SLOT="0/${SUBSLOT:-0}" -IUSE="bindist client-libs debug extraengine jemalloc latin1 libressl - oqgraph pam +perl profiling selinux +server sphinx - static static-libs systemtap tcmalloc - test tokudb yassl" - -# Tests always fail when libressl is enabled due to hard-coded ciphers in the tests -RESTRICT="!bindist? ( bindist ) libressl? ( test )" - -REQUIRED_USE="server? ( tokudb? ( jemalloc !tcmalloc ) ) - ?? ( tcmalloc jemalloc ) - static? ( yassl !pam )" - -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris" - -# Shorten the path because the socket path length must be shorter than 107 chars -# and we will run a mysql server during test phase -S="${WORKDIR}/mysql" - -if [[ "${MY_EXTRAS_VER}" == "live" ]] ; then - MY_PATCH_DIR="${WORKDIR%/}/mysql-extras" - inherit git-r3 - EGIT_REPO_URI="git://anongit.gentoo.org/proj/mysql-extras.git" - EGIT_CHECKOUT_DIR="${WORKDIR%/}/mysql-extras" - EGIT_CLONE_TYPE=shallow -else - MY_PATCH_DIR="${WORKDIR%/}/mysql-extras-${MY_EXTRAS_VER}" -fi - -PATCHES=( - "${MY_PATCH_DIR}/01050_all_mariadb_mysql_config_cleanup-5.5.41.patch" - "${MY_PATCH_DIR}/20004_all_mariadb-filter-tokudb-flags.patch" - "${MY_PATCH_DIR}/20006_all_cmake_elib-mariadb-5.5.50.patch" - "${MY_PATCH_DIR}/20009_all_mariadb_myodbc_symbol_fix-5.5.38.patch" - "${MY_PATCH_DIR}/20018_all_mariadb-5.5.60-without-clientlibs-tools.patch" -) - -# Be warned, *DEPEND are version-dependant -# These are used for both runtime and compiletime -COMMON_DEPEND=" - kernel_linux? ( - sys-process/procps:0= - dev-libs/libaio:0= - ) - >=sys-apps/sed-4 - >=sys-apps/texinfo-4.7-r1 - jemalloc? ( dev-libs/jemalloc:0= ) - tcmalloc? ( dev-util/google-perftools:0= ) - systemtap? ( >=dev-util/systemtap-1.3:0= ) - !yassl? ( - !libressl? ( dev-libs/openssl:0= !>=dev-libs/openssl-1.1 ) - libressl? ( dev-libs/libressl:0= ) - ) - >=sys-libs/zlib-1.2.3:0= - sys-libs/ncurses:0= - !bindist? ( - >=sys-libs/readline-4.1:0= - ) - server? ( - oqgraph? ( >=dev-libs/boost-1.40.0:0= dev-libs/judy:0= ) - pam? ( virtual/pam:0= ) - ) - !client-libs? ( dev-db/mysql-connector-c[${MULTILIB_USEDEP},static-libs?] ) -" -DEPEND="virtual/yacc - static? ( sys-libs/ncurses[static-libs] ) - || ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 ) - ${COMMON_DEPEND}" -RDEPEND="selinux? ( sec-policy/selinux-mysql ) - client-libs? ( !dev-db/mariadb-connector-c[mysqlcompat] !dev-db/mysql-connector-c ) - !dev-db/mysql !dev-db/mariadb-galera !dev-db/percona-server !dev-db/mysql-cluster - server? ( !prefix? ( dev-db/mysql-init-scripts ) ) - ${COMMON_DEPEND} - perl? ( !dev-db/mytop - virtual/perl-Getopt-Long - dev-perl/TermReadKey - virtual/perl-Term-ANSIColor - virtual/perl-Time-HiRes ) -" -# For other stuff to bring us in -# dev-perl/DBD-mysql is needed by some scripts installed by MySQL -PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 )" - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - local GCC_MAJOR_SET=$(gcc-major-version) - local GCC_MINOR_SET=$(gcc-minor-version) - if use tokudb && [[ ${GCC_MAJOR_SET} -lt 4 || \ - ${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then - eerror "${PN} with tokudb needs to be built with gcc-4.7 or later." - eerror "Please use gcc-config to switch to gcc-4.7 or later version." - die - fi - # Bug 565584. InnoDB now requires atomic functions introduced with gcc-4.7 on - # non x86{,_64} arches - if ! use amd64 && ! use x86 && [[ ${GCC_MAJOR_SET} -lt 4 || \ - ${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then - eerror "${PN} needs to be built with gcc-4.7 or later." - eerror "Please use gcc-config to switch to gcc-4.7 or later version." - die - fi - fi - if has test ${FEATURES} && \ - use server && ! has userpriv ${FEATURES} ; then - eerror "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root." - fi - - # This should come after all of the die statements - enewgroup mysql 60 || die "problem adding 'mysql' group" - enewuser mysql 60 -1 /dev/null mysql || die "problem adding 'mysql' user" -} - -pkg_postinst() { - # Make sure the vars are correctly initialized - mysql_init_vars - - # Create log directory securely if it does not exist - [[ -d "${ROOT}${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}${MY_LOGDIR}" - - if use server ; then - if use pam; then - einfo - elog "This install includes the PAM authentication plugin." - elog "To activate and configure the PAM plugin, please read:" - elog "https://mariadb.com/kb/en/mariadb/pam-authentication-plugin/" - einfo - fi - - if [[ -z "${REPLACING_VERSIONS}" ]] ; then - einfo - elog "You might want to run:" - elog "\"emerge --config =${CATEGORY}/${PF}\"" - elog "if this is a new install." - elog - elog "If you are switching server implentations, you should run the" - elog "mysql_upgrade tool." - einfo - else - einfo - elog "If you are upgrading major versions, you should run the" - elog "mysql_upgrade tool." - einfo - fi - - einfo - elog "Be sure to edit the my.cnf file to activate your cluster settings." - elog "This should be done after running \"emerge --config =${CATEGORY}/${PF}\"" - elog "The first time the cluster is activated, you should add" - elog "--wsrep-new-cluster to the options in /etc/conf.d/mysql for one node." - elog "This option should then be removed for subsequent starts." - einfo - fi -} - -src_unpack() { - unpack ${A} - # Grab the patches - [[ "${MY_EXTRAS_VER}" == "live" ]] && S="${WORKDIR%/}/mysql-extras" git-r3_src_unpack - - mv -f "${WORKDIR%/}/${P}" "${S}" || die -} - -src_prepare() { - _disable_engine() { - echo > "${S%/}/storage/${1}/CMakeLists.txt" || die - } - - _disable_plugin() { - echo > "${S%/}/plugin/${1}/CMakeLists.txt" || die - } - - if use tcmalloc; then - echo "TARGET_LINK_LIBRARIES(mysqld tcmalloc)" >> "${S%/}/sql/CMakeLists.txt" || die - fi - - # Don't build bundled xz-utils for tokudb - echo > "${S%/}/storage/tokudb/ft-index/cmake_modules/TokuThirdParty.cmake" || die - sed -i -e 's/ build_lzma//' "${S%/}/storage/tokudb/ft-index/ft/CMakeLists.txt" || die - sed -i -e 's/add_dependencies\(tokuportability_static_conv build_jemalloc\)//' "${S%/}/storage/tokudb/ft-index/portability/CMakeLists.txt" || die - - local plugin - local server_plugins=( handler_socket auth_socket feedback qc_info server_audit semisync sql_errlog ) - local test_plugins=( audit_null auth_examples daemon_example fulltext ) - if ! use server; then # These plugins are for the server - for plugin in "${server_plugins[@]}" ; do - _disable_plugin "${plugin}" - done - fi - - if ! use test; then # These plugins are only used during testing - for plugin in "${test_plugins[@]}" ; do - _disable_plugin "${plugin}" - done - fi - - # Collides with mariadb-connector-c bug 655980 - _disable_plugin auth_dialog - - # Don't build example - _disable_engine example - - if ! use oqgraph ; then # avoids extra library checks - _disable_engine oqgraph - fi - - cmake-utils_src_prepare -} - -src_configure(){ - # bug 508724 mariadb cannot use ld.gold - tc-ld-disable-gold - # Bug #114895, bug #110149 - filter-flags "-O" "-O[01]" - - append-cxxflags -felide-constructors - - # bug #283926, with GCC4.4, this is required to get correct behavior. - append-flags -fno-strict-aliasing - - CMAKE_BUILD_TYPE="RelWithDebInfo" - - # debug hack wrt #497532 - mycmakeargs=( - -DCMAKE_C_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')" - -DCMAKE_CXX_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')" - -DCMAKE_INSTALL_PREFIX="${EPREFIX%/}/usr" - -DDEFAULT_SYSCONFDIR="${EPREFIX%/}/etc/mysql" - -DINSTALL_BINDIR=bin - -DINSTALL_DOCDIR=share/doc/${PF} - -DINSTALL_DOCREADMEDIR=share/doc/${PF} - -DINSTALL_INCLUDEDIR=include/mysql - -DINSTALL_INFODIR=share/info - -DINSTALL_LIBDIR=$(get_libdir) - -DINSTALL_MANDIR=share/man - -DINSTALL_MYSQLSHAREDIR=share/mariadb - -DINSTALL_PLUGINDIR=$(get_libdir)/mariadb/plugin - -DINSTALL_SCRIPTDIR=share/mariadb/scripts - -DINSTALL_MYSQLDATADIR="${EPREFIX%/}/var/lib/mysql" - -DINSTALL_SBINDIR=sbin - -DINSTALL_SUPPORTFILESDIR="${EPREFIX%/}/usr/share/mariadb" - -DCOMPILATION_COMMENT="Gentoo Linux ${PF}" - -DWITH_UNIT_TESTS=$(usex test ON OFF) - -DWITH_ZLIB=system - -DENABLED_LOCAL_INFILE=1 - -DMYSQL_UNIX_ADDR="${EPREFIX%/}/var/run/mysqld/mysqld.sock" - -DINSTALL_UNIX_ADDRDIR="${EPREFIX%/}/var/run/mysqld/mysqld.sock" - # The build forces this to be defined when cross-compiling. We pass it - # all the time for simplicity and to make sure it is actually correct. - -DSTACK_DIRECTION=$(tc-stack-grows-down && echo -1 || echo 1) - -DWITHOUT_CLIENTLIBS=YES - -DWITH_READLINE=$(usex bindist 1 0) - -DNOT_FOR_DISTRIBUTION=$(usex bindist 0 1) - -DENABLE_DTRACE=$(usex systemtap) - ) - if use test ; then - mycmakeargs+=( -DINSTALL_MYSQLTESTDIR=share/mariadb/mysql-test ) - else - mycmakeargs+=( -DINSTALL_MYSQLTESTDIR='' ) - fi - - if ! use yassl ; then - mycmakeargs+=( -DWITH_SSL=system ) - else - mycmakeargs+=( -DWITH_SSL=bundled ) - fi - - if use server ; then - - # Federated{,X} must be treated special otherwise they will not be built as plugins - if ! use extraengine ; then - mycmakeargs+=( - -DWITHOUT_FEDERATED_STORAGE_ENGINE=1 - -DWITHOUT_FEDERATEDX_STORAGE_ENGINE=1 ) - fi - - mycmakeargs+=( - -DWITH_JEMALLOC=$(usex jemalloc system) - -D$(usex sphinx WITH WITHOUT)_SPHINX_STORAGE_ENGINE=1 - -D$(usex tokudb WITH WITHOUT)_TOKUDB_STORAGE_ENGINE=1 - -D$(usex oqgraph WITH WITHOUT)_AUTH_PAM=1 - -DINSTALL_SQLBENCHDIR=share/mariadb - ) - - if [[ ( -n ${MYSQL_DEFAULT_CHARSET} ) && ( -n ${MYSQL_DEFAULT_COLLATION} ) ]]; then - ewarn "You are using a custom charset of ${MYSQL_DEFAULT_CHARSET}" - ewarn "and a collation of ${MYSQL_DEFAULT_COLLATION}." - ewarn "You MUST file bugs without these variables set." - - mycmakeargs+=( - -DDEFAULT_CHARSET=${MYSQL_DEFAULT_CHARSET} - -DDEFAULT_COLLATION=${MYSQL_DEFAULT_COLLATION} - ) - - elif ! use latin1 ; then - mycmakeargs+=( - -DDEFAULT_CHARSET=utf8 - -DDEFAULT_COLLATION=utf8_general_ci - ) - else - mycmakeargs+=( - -DDEFAULT_CHARSET=latin1 - -DDEFAULT_COLLATION=latin1_swedish_ci - ) - fi - mycmakeargs+=( - -DEXTRA_CHARSETS=all - -DDISABLE_SHARED=$(usex static YES NO) - -DWITH_EMBEDDED_SERVER=OFF - -DENABLED_PROFILING=$(usex profiling) - ) - - if use static; then - mycmakeargs+=( -DWITH_PIC=1 ) - fi - - if use jemalloc || use tcmalloc ; then - mycmakeargs+=( -DWITH_SAFEMALLOC=OFF ) - fi - - # Storage engines - mycmakeargs+=( - -DWITH_ARCHIVE_STORAGE_ENGINE=1 - -DWITH_BLACKHOLE_STORAGE_ENGINE=1 - -DWITH_CSV_STORAGE_ENGINE=1 - -DWITH_HEAP_STORAGE_ENGINE=1 - -DWITH_INNOBASE_STORAGE_ENGINE=1 - -DWITH_MYISAMMRG_STORAGE_ENGINE=1 - -DWITH_MYISAM_STORAGE_ENGINE=1 - -DWITH_PARTITION_STORAGE_ENGINE=1 - ) - - else - mycmakeargs+=( - -DWITHOUT_SERVER=1 - -DEXTRA_CHARSETS=none - -DINSTALL_SQLBENCHDIR= - ) - fi - - cmake-utils_src_configure -} - -src_compile() { - cmake-utils_src_compile -} - -src_install() { - cmake-utils_src_install - - # Remove an unnecessary, private config header which will never match between ABIs and is not meant to be used - if [[ -f "${ED%/}/usr/include/mysql/server/private/config.h" ]] ; then - rm "${ED%/}/usr/include/mysql/server/private/config.h" || die - fi - - # Make sure the vars are correctly initialized - mysql_init_vars - - # Convenience links - einfo "Making Convenience links for mysqlcheck multi-call binary" - dosym "mysqlcheck" "/usr/bin/mysqlanalyze" - dosym "mysqlcheck" "/usr/bin/mysqlrepair" - dosym "mysqlcheck" "/usr/bin/mysqloptimize" - - # INSTALL_LAYOUT=STANDALONE causes cmake to create a /usr/data dir - if [[ -d "${ED%/}/usr/data" ]] ; then - rm -Rf "${ED%/}/usr/data" || die - fi - - # Unless they explicitly specific USE=test, then do not install the - # testsuite. It DOES have a use to be installed, esp. when you want to do a - # validation of your database configuration after tuning it. - if ! use test ; then - rm -rf "${D%/}/${MY_SHAREDSTATEDIR}/mysql-test" - fi - - # Configuration stuff - einfo "Building default configuration ..." - insinto "${MY_SYSCONFDIR#${EPREFIX}}" - [[ -f "${S%/}/scripts/mysqlaccess.conf" ]] && doins "${S%/}"/scripts/mysqlaccess.conf - local mycnf_src="my.cnf-5.5" - sed -e "s!@DATADIR@!${MY_DATADIR}!g" \ - "${FILESDIR%/}/${mycnf_src}" \ - > "${TMPDIR%/}/my.cnf.ok" || die - use prefix && sed -i -r -e '/^user[[:space:]]*=[[:space:]]*mysql$/d' "${TMPDIR%/}/my.cnf.ok" - if use latin1 ; then - sed -i \ - -e "/character-set/s|utf8|latin1|g" \ - "${TMPDIR%/}/my.cnf.ok" || die - fi - eprefixify "${TMPDIR%/}/my.cnf.ok" - newins "${TMPDIR}/my.cnf.ok" my.cnf - - if use server ; then - einfo "Including support files and sample configurations" - docinto "support-files" - local script - for script in \ - "${S%/}"/support-files/magic - do - [[ -f "$script" ]] && dodoc "${script}" - done - - docinto "scripts" - for script in "${S%/}"/scripts/mysql* ; do - [[ ( -f "$script" ) && ( "${script%.sh}" == "${script}" ) ]] && dodoc "${script}" - done - fi - - #Remove mytop if perl is not selected - [[ -e "${ED%/}/usr/bin/mytop" ]] && ! use perl && rm -f "${ED%/}/usr/bin/mytop" -} - -# Official test instructions: -# USE='extraengine perl server' \ -# FEATURES='test userpriv -usersandbox' \ -# ebuild mariadb-X.X.XX.ebuild \ -# digest clean package -src_test() { - - _disable_test() { - local rawtestname reason - rawtestname="${1}" ; shift - reason="${@}" - ewarn "test '${rawtestname}' disabled: '${reason}'" - echo ${rawtestname} : ${reason} >> "${T}/disabled.def" - } - - local TESTDIR="${BUILD_DIR}/mysql-test" - local retstatus_unit - 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" - - 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} || die - - # Run mysql tests - pushd "${TESTDIR}" > /dev/null || die - - touch "${T}/disabled.def" - # These are failing in MariaDB 5.5 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. - # - # archive.mysqlhotcopy_archive main.mysqlhotcopy_myisam - # fails due to bad cleanup of previous tests when run in parallel - # The tool is deprecated anyway - # Bug 532288 - - local t - for t in main.mysql_client_test main.mysql_client_test_nonblock \ - binlog.binlog_statement_insert_delayed main.information_schema \ - main.mysqld--help \ - archive.mysqlhotcopy_archive main.mysqlhotcopy_myisam \ - funcs_1.is_triggers funcs_1.is_tables_mysql funcs_1.is_columns_mysql ; do - _disable_test "$t" "False positives in Gentoo" - done - - if ! use client-libs ; then - _disable_test main.plugin_auth "Needs client libraries built" - fi - - # run mysql-test tests - perl mysql-test-run.pl --force --vardir="${T}/var-tests" --reorder --skip-test=tokudb --skip-test-list="${T}/disabled.def" - retstatus_tests=$? - - popd > /dev/null || 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" ]] || die "Test failures: $failures" - einfo "Tests successfully completed" -} - -mysql_init_vars() { - MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX}/usr/share/mariadb"} - MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX}/etc/mysql"} - MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX}/var/lib/mysql"} - MY_LOGDIR=${MY_LOGDIR="${EPREFIX}/var/log/mysql"} - - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR="" - if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then - MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \ - | sed -ne '/datadir/s|^--datadir=||p' \ - | tail -n1` - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR=`grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \ - | sed -e 's/.*=\s*//' \ - | tail -n1` - fi - fi - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR="${MY_LOCALSTATEDIR}" - einfo "Using default MY_DATADIR" - fi - elog "MySQL MY_DATADIR is ${MY_DATADIR}" - - if [[ -z "${PREVIOUS_DATADIR}" ]] ; then - if [[ -e "${MY_DATADIR}" ]] ; then - # If you get this and you're wondering about it, see bug #207636 - elog "MySQL datadir found in ${MY_DATADIR}" - elog "A new one will not be created." - PREVIOUS_DATADIR="yes" - else - PREVIOUS_DATADIR="no" - fi - export PREVIOUS_DATADIR - fi - else - if [[ ${EBUILD_PHASE} == "config" ]]; then - local new_MY_DATADIR - new_MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \ - | sed -ne '/datadir/s|^--datadir=||p' \ - | tail -n1` - - if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]]; then - ewarn "MySQL MY_DATADIR has changed" - ewarn "from ${MY_DATADIR}" - ewarn "to ${new_MY_DATADIR}" - MY_DATADIR="${new_MY_DATADIR}" - fi - fi - fi - - export MY_SHAREDSTATEDIR MY_SYSCONFDIR - export MY_LOCALSTATEDIR MY_LOGDIR - export MY_DATADIR -} - -pkg_config() { - _getoptval() { - local mypd="${EROOT}"/usr/bin/my_print_defaults - local section="$1" - local flag="--${2}=" - local extra_options="${3}" - "${mypd}" $extra_options $section | sed -n "/^${flag}/s,${flag},,gp" - } - local old_MY_DATADIR="${MY_DATADIR}" - local old_HOME="${HOME}" - # my_print_defaults needs to read stuff in $HOME/.my.cnf - export HOME=${EPREFIX}/root - - # Make sure the vars are correctly initialized - mysql_init_vars - - [[ -z "${MY_DATADIR}" ]] && die "Sorry, unable to find MY_DATADIR" - if [[ ! -x "${EROOT}/usr/sbin/mysqld" ]] ; then - die "Minimal builds do NOT include the MySQL server" - fi - - if [[ ( -n "${MY_DATADIR}" ) && ( "${MY_DATADIR}" != "${old_MY_DATADIR}" ) ]]; then - local MY_DATADIR_s="${ROOT}/${MY_DATADIR}" - MY_DATADIR_s="${MY_DATADIR_s%%/}" - local old_MY_DATADIR_s="${ROOT}/${old_MY_DATADIR}" - old_MY_DATADIR_s="${old_MY_DATADIR_s%%/}" - - if [[ ( -d "${old_MY_DATADIR_s}" ) && ( "${old_MY_DATADIR_s}" != / ) ]]; then - if [[ -d "${MY_DATADIR_s}" ]]; then - ewarn "Both ${old_MY_DATADIR_s} and ${MY_DATADIR_s} exist" - ewarn "Attempting to use ${MY_DATADIR_s} and preserving ${old_MY_DATADIR_s}" - else - elog "Moving MY_DATADIR from ${old_MY_DATADIR_s} to ${MY_DATADIR_s}" - mv --strip-trailing-slashes -T "${old_MY_DATADIR_s}" "${MY_DATADIR_s}" \ - || die "Moving MY_DATADIR failed" - fi - else - ewarn "Previous MY_DATADIR (${old_MY_DATADIR_s}) does not exist" - if [[ -d "${MY_DATADIR_s}" ]]; then - ewarn "Attempting to use ${MY_DATADIR_s}" - else - eerror "New MY_DATADIR (${MY_DATADIR_s}) does not exist" - die "Configuration Failed! Please reinstall ${CATEGORY}/${PN}" - fi - fi - fi - - local pwd1="a" - local pwd2="b" - local maxtry=15 - - if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then - local tmp_mysqld_password_source= - - for tmp_mysqld_password_source in mysql client; do - einfo "Trying to get password for mysql 'root' user from '${tmp_mysqld_password_source}' section ..." - MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password)" - if [[ -n "${MYSQL_ROOT_PASSWORD}" ]]; then - if [[ ${MYSQL_ROOT_PASSWORD} == *$'\n'* ]]; then - ewarn "Ignoring password from '${tmp_mysqld_password_source}' section due to newline character (do you have multiple password options set?)!" - MYSQL_ROOT_PASSWORD= - continue - fi - - einfo "Found password in '${tmp_mysqld_password_source}' section!" - break - fi - done - - # Sometimes --show is required to display passwords in some implementations of my_print_defaults - if [[ "${MYSQL_ROOT_PASSWORD}" == '*****' ]]; then - MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password --show)" - fi - - unset tmp_mysqld_password_source - fi - MYSQL_TMPDIR="$(_getoptval mysqld tmpdir)" - # These are dir+prefix - MYSQL_RELAY_LOG="$(_getoptval mysqld relay-log)" - MYSQL_RELAY_LOG=${MYSQL_RELAY_LOG%/*} - MYSQL_LOG_BIN="$(_getoptval mysqld log-bin)" - MYSQL_LOG_BIN=${MYSQL_LOG_BIN%/*} - - if [[ ! -d "${ROOT}/$MYSQL_TMPDIR" ]]; then - einfo "Creating MySQL tmpdir $MYSQL_TMPDIR" - install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_TMPDIR" - fi - if [[ ! -d "${ROOT}/$MYSQL_LOG_BIN" ]]; then - einfo "Creating MySQL log-bin directory $MYSQL_LOG_BIN" - install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_LOG_BIN" - fi - if [[ ! -d "${EROOT}/$MYSQL_RELAY_LOG" ]]; then - einfo "Creating MySQL relay-log directory $MYSQL_RELAY_LOG" - install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_RELAY_LOG" - fi - - if [[ -d "${ROOT}/${MY_DATADIR}/mysql" ]] ; then - ewarn "You have already a MySQL database in place." - ewarn "(${ROOT}/${MY_DATADIR}/*)" - ewarn "Please rename or delete it if you wish to replace it." - die "MySQL database already exists!" - 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" - - if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then - - einfo "Please provide a password for the mysql 'root' user now" - einfo "or through the ${HOME}/.my.cnf file." - ewarn "Avoid [\"'\\_%] characters in the password" - read -rsp " >" pwd1 ; echo - - einfo "Retype the password" - read -rsp " >" pwd2 ; echo - - if [[ "x$pwd1" != "x$pwd2" ]] ; then - die "Passwords are not the same" - fi - MYSQL_ROOT_PASSWORD="${pwd1}" - unset pwd1 pwd2 - fi - - local options - local sqltmp="$(emktemp)" - - # Fix bug 446200. Don't reference host my.cnf, needs to come first, - # see http://bugs.mysql.com/bug.php?id=31312 - use prefix && options="${options} '--defaults-file=${MY_SYSCONFDIR}/my.cnf'" - - # Figure out which options we need to disable to do the setup - local helpfile="${TMPDIR}/mysqld-help" - "${EROOT}/usr/sbin/mysqld" --verbose --help >"${helpfile}" 2>/dev/null - for opt in grant-tables host-cache name-resolve networking slave-start \ - federated ssl log-bin relay-log slow-query-log external-locking \ - log-slave-updates \ - ; do - optexp="--(skip-)?${opt}" optfull="--loose-skip-${opt}" - egrep -sq -- "${optexp}" "${helpfile}" && options="${options} ${optfull}" - done - - einfo "Creating the mysql database and setting proper permissions on it ..." - - # Now that /var/run is a tmpfs mount point, we need to ensure it exists before using it - PID_DIR="${EROOT}/var/run/mysqld" - if [[ ! -d "${PID_DIR}" ]]; then - install -d -m 755 -o mysql -g mysql "${PID_DIR}" || die "Could not create pid directory" - fi - - if [[ ! -d "${MY_DATADIR}" ]]; then - install -d -m 750 -o mysql -g mysql "${MY_DATADIR}" || die "Could not create data directory" - fi - - pushd "${TMPDIR}" &>/dev/null || die - - # Filling timezones, see - # http://dev.mysql.com/doc/mysql/en/time-zone-support.html - "${EROOT}/usr/bin/mysql_tzinfo_to_sql" "${EROOT}/usr/share/zoneinfo" > "${sqltmp}" 2>/dev/null - - local cmd=( "${EROOT}usr/share/mariadb/scripts/mysql_install_db" ) - [[ -f "${cmd}" ]] || cmd=( "${EROOT}usr/bin/mysql_install_db" ) - cmd+=( "--basedir=${EPREFIX}/usr" ${options} "--datadir=${ROOT}/${MY_DATADIR}" "--tmpdir=${ROOT}/${MYSQL_TMPDIR}" ) - einfo "Command: ${cmd[*]}" - su -s /bin/sh -c "${cmd[*]}" mysql \ - >"${TMPDIR}"/mysql_install_db.log 2>&1 - if [ $? -ne 0 ]; then - grep -B5 -A999 -i "ERROR" "${TMPDIR}"/mysql_install_db.log 1>&2 - die "Failed to initialize mysqld. Please review ${EPREFIX}/var/log/mysql/mysqld.err AND ${TMPDIR}/mysql_install_db.log" - fi - popd &>/dev/null || die - [[ -f "${ROOT}/${MY_DATADIR}/mysql/user.frm" ]] \ - || die "MySQL databases not installed" - - use prefix || options="${options} --user=mysql" - - local socket="${EROOT}/var/run/mysqld/mysqld${RANDOM}.sock" - local pidfile="${EROOT}/var/run/mysqld/mysqld${RANDOM}.pid" - local mysqld="${EROOT}/usr/sbin/mysqld \ - ${options} \ - --log-warnings=0 \ - --basedir=${EROOT}/usr \ - --datadir=${ROOT}/${MY_DATADIR} \ - --max_allowed_packet=8M \ - --net_buffer_length=16K \ - --socket=${socket} \ - --pid-file=${pidfile} - --tmpdir=${ROOT}/${MYSQL_TMPDIR}" - #einfo "About to start mysqld: ${mysqld}" - ebegin "Starting mysqld" - einfo "Command ${mysqld}" - ${mysqld} & - rc=$? - while ! [[ -S "${socket}" || "${maxtry}" -lt 1 ]] ; do - maxtry=$((${maxtry}-1)) - echo -n "." - sleep 1 - done - eend $rc - - if ! [[ -S "${socket}" ]]; then - die "Completely failed to start up mysqld with: ${mysqld}" - fi - - ebegin "Setting root password" - # Do this from memory, as we don't want clear text passwords in temp files - local sql="UPDATE mysql.user SET Password = PASSWORD('${MYSQL_ROOT_PASSWORD}') WHERE USER='root'; FLUSH PRIVILEGES" - "${EROOT}/usr/bin/mysql" \ - "--socket=${socket}" \ - -hlocalhost \ - -e "${sql}" - eend $? - - if [[ -n "${sqltmp}" ]] ; then - ebegin "Loading \"zoneinfo\", this step may require a few seconds" - "${EROOT}/usr/bin/mysql" \ - "--socket=${socket}" \ - -hlocalhost \ - -uroot \ - --password="${MYSQL_ROOT_PASSWORD}" \ - mysql < "${sqltmp}" - rc=$? - eend $? - [[ $rc -ne 0 ]] && ewarn "Failed to load zoneinfo!" - fi - - # Stop the server and cleanup - einfo "Stopping the server ..." - kill $(< "${pidfile}" ) - rm -f "${sqltmp}" - wait %1 - einfo "Done" -} diff --git a/dev-db/mariadb/mariadb-9999.ebuild b/dev-db/mariadb/mariadb-9999.ebuild deleted file mode 100644 index 0961b38..0000000 --- a/dev-db/mariadb/mariadb-9999.ebuild +++ /dev/null @@ -1,233 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="6" -MY_EXTRAS_VER="none" -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" -MYSQL_PV_MAJOR="5.6" -JAVA_PKG_OPT_USE="jdbc" - -inherit toolchain-funcs java-pkg-opt-2 mysql-multilib-r1 git-r3 -HOMEPAGE="http://mariadb.org/" -DESCRIPTION="An enhanced, drop-in replacement for MySQL" - -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="jdbc? ( extraengine server !static ) server? ( tokudb? ( jemalloc !tcmalloc ) ) static? ( !pam )" - -KEYWORDS="" - -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? ( - backup? ( app-arch/libarchive:0= ) - 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 ) - server? ( extraengine? ( jdbc? ( >=virtual/jdk-1.6 ) ) ) - ${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 ) - server? ( extraengine? ( jdbc? ( >=virtual/jre-1.6 ) ) ) -" -# xtrabackup-bin causes a circular dependency if DBD-mysql is not already installed -PDEPEND="galera? ( sst-xtrabackup? ( || ( >=dev-db/percona-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 ) - -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 -} - -# This is a special unpack for the VCS version -src_unpack() { - git-r3_src_unpack - - mv -f "${WORKDIR}/${P}" "${S}" -} - -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 - - 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) - -DCONNECT_WITH_JDBC=$(usex jdbc) - -DWITH_WSREP=$(usex galera) - -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) - ) - fi - mysql-multilib-r1_src_configure -} - -# 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 -multilib_src_test() { - - local TESTDIR="${BUILD_DIR}/mysql-test" - local retstatus_unit - local retstatus_tests - - multilib_is_native_abi || return - - # 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-multilib_disable_test "$t" "False positives in Gentoo" - done - - # Run mysql tests - pushd "${TESTDIR}" || die - - # 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 || 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" - - # Cleanup test data after a successful run - rm -r "${S}/mysql-test/var-tests" - else - - einfo "Skipping server tests due to minimal build." - fi -} diff --git a/dev-db/mariadb/metadata.xml b/dev-db/mariadb/metadata.xml deleted file mode 100644 index d9c8a04..0000000 --- a/dev-db/mariadb/metadata.xml +++ /dev/null @@ -1,49 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> -<pkgmetadata> - <maintainer type="project"> - <email>mysql-bugs@gentoo.org</email> - <name>MySQL</name> - </maintainer> - <maintainer type="person"> - <email>hasufell@gentoo.org</email> - <description>Libressl issues. Only assign if it's a direct Libressl issue. Do not directly assign for anything else</description> - </maintainer> -<use> - <flag name="backup">Build mariadb-backup which supports SST and hot backup of InnoDB, Aria and MyISAM including compression and encryption</flag> - <flag name="big-tables">Make tables contain up to 1.844E+19 rows</flag> - <flag name="client-libs">Build the client libraries from the server package instead of the C Connector packages</flag> - <flag name="cluster">Add support for NDB clustering (deprecated)</flag> - <flag name="community">Enables the community features from upstream.</flag> - <flag name="embedded">Build embedded server (libmysqld)</flag> - <flag name="extraengine">Add support for alternative storage engines (Archive, CSV, Blackhole, Federated(X), Partition)</flag> - <flag name="galera">Enables galera replication</flag> - <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> - <flag name="libressl">Enable SSL connections and crypto functions using <pkg>dev-libs/libressl</pkg></flag> - <flag name="max-idx-128">Raise the max index per table limit from 64 to 128</flag> - <flag name="minimal">Install client programs only, no server</flag> - <flag name="mroonga">Add support for the Mroonga engine for interfacing with the Groonga text search</flag> - <flag name="numa">Enable NUMA support using sys-process/numactl (NUMA kernel support is also required)</flag> - <flag name="openssl">Enable SSL connections and crypto functions using <pkg>dev-libs/openssl</pkg></flag> - <flag name="oqgraph">Add support for the Open Query GRAPH engine</flag> - <flag name="pam">Enable the optional PAM authentication plugin for the server</flag> - <flag name="pbxt">Add experimental support for PBXT storage engine</flag> - <flag name="profiling">Add support for statement profiling (requires USE=community).</flag> - <flag name="rocksdb">Add support for RocksDB; a key/value, LSM database optimized for flash storage</flag> - <flag name="server">Build the server program</flag> - <flag name="sphinx">Add suport for the sphinx full-text search engine</flag> - <flag name="sst-rsync">Add tools needed to support the rsync SST method</flag> - <flag name="sst-mariabackup">Add tools needed to support the mariabackup SST method</flag> - <flag name="sst-xtrabackup">Add tools needed to support the xtrabackup and xtrabackup-v2 SST methods</flag> - <flag name="systemtap">Build support for profiling and tracing using <pkg>dev-util/systemtap</pkg></flag> - <flag name="test">Install upstream testsuites for end use.</flag> - <flag name="tokudb">Add support for TokuDB storage engine</flag> - <flag name="yassl">Enable SSL connections and crypto functions using the bundled yaSSL</flag> -</use> -</pkgmetadata> diff --git a/dev-db/mysql-cluster/ChangeLog b/dev-db/mysql-cluster/ChangeLog deleted file mode 100644 index 57fbf14..0000000 --- a/dev-db/mysql-cluster/ChangeLog +++ /dev/null @@ -1,45 +0,0 @@ -# ChangeLog for dev-db/mysql-cluster -# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2 -# $Id$ - -*mysql-cluster-7.2.22 (18 Nov 2015) -*mysql-cluster-7.3.11 (18 Nov 2015) - - 18 Nov 2015; Brian Evans <grknight@gentoo.org> +mysql-cluster-7.2.22.ebuild, - +mysql-cluster-7.3.11.ebuild, -mysql-cluster-7.2.20.ebuild, - -mysql-cluster-7.3.9.ebuild: - dev-db/mysql-cluster: Version bumps - -*mysql-cluster-7.2.19 (10 Feb 2015) -*mysql-cluster-7.3.8 (10 Feb 2015) - - 10 Feb 2015; Brian Evans <grknight@gentoo.org> +mysql-cluster-7.2.19.ebuild, - +mysql-cluster-7.3.8.ebuild, -mysql-cluster-7.2.17.ebuild, - -mysql-cluster-7.3.6-r1.ebuild, -mysql-cluster-7.3.6.ebuild: - Version bump; drop old - -*mysql-cluster-7.0.37 (03 Jul 2013) - - 03 Jul 2013; Brian Evans <grknight@lavabit.com> +mysql-cluster-7.0.37.ebuild, - -mysql-cluster-7.0.9.ebuild: - [mysql-cluster] Bump 7.0 series to 7.0.37 - -*mysql-cluster-7.2.13 (01 Jul 2013) -*mysql-cluster-7.3.0 (01 Jul 2013) - - 01 Jul 2013; Brian Evans <grknight@lavabit.com> - +mysql-cluster-7.2.13.ebuild, +mysql-cluster-7.3.0.ebuild: - Bump to version 7.2.13 and 7.3.0 - - 22 May 2012; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mysql-cluster-7.0.9.ebuild: - Move EAPI assignment to the top. - Whitespace. - -*mysql-cluster-7.0.9 (09 Aug 2010) - - 09 Aug 2010; Robin H. Johnson <robbat2@gentoo.org> - +mysql-cluster-7.0.9.ebuild: - Bug #331691: mysql-cluster support from Nathan Sullivan - <nathan@nightsys.net> for Gentoo telco users. Needs more polish still and - init.d scripts. diff --git a/dev-db/mysql-cluster/Manifest b/dev-db/mysql-cluster/Manifest deleted file mode 100644 index 2eafe55..0000000 --- a/dev-db/mysql-cluster/Manifest +++ /dev/null @@ -1,27 +0,0 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA256 - -DIST mysql-cluster-gpl-7.2.22.tar.gz 26075142 SHA256 404b80192c488791cedf6251e64bb01310b20f13fcdb28721e108e92985ae999 SHA512 b3370725f17a5b6577c9822097b6c39e4375bdabca2a403bd45dfeb9fd5920c0e213c894eed33dadba69d9c066427ab5065c587869d82bf2e3438d3bdeb1aa8e WHIRLPOOL 1275fc2a181011c5ea2ac392c94027f399a5ce4fd499ff23790bfad142b1c7d67bc421e7c6a4e64e6bb409f04016196417535d5704d21165c1120bf46ab68544 -DIST mysql-cluster-gpl-7.3.11.tar.gz 42806929 SHA256 6c8cfc99ccbf47cd4304996559de6fb330e9cdf754bec37ff7347be72e50c646 SHA512 89e5b6e845b71ed6945529b7f515d3af96ec6daf79c0085f1d0ea6e4426f61eb3626b688e5edda668be4615df1b8cec4e71acdf0d21150fa2775c79ea09563e5 WHIRLPOOL f03d3b62da793becd6aab775293e5963697f9b4147bf6d662274f689b1a48692b1f4de0ad196e74cb02a07ce2a69b608a4d420ad5dc153b20888ba69dc361dc4 -DIST mysql-cluster-gpl-7.4.20.tar.gz 41675568 SHA256 4a9efbf3a2506654605daac7ec51f06e18b316786d745b975896cfee395cc5b4 SHA512 fb6b8d027f873423b64b0898386126e85881605357650821ed6cd30c0fabb8edf1765bf2c87e11533d944fd33b07aaf01c045da9e10f8e24e864e9c1a3d8c984 WHIRLPOOL 669471b83fe47550c0ad3dae58a37dfc62e1b71e0f3e0023e8b78f1b2693408eab7b02b7c0cd4ab113691d3f29e09568f2687cfddf7a2e9a8de6fec8c9f06e00 -DIST mysql-extras-20151117-2040Z.tar.bz2 294183 SHA256 2ca16597e869fb0fac4f6e48b779892569698ce83c898df3afaee63131f71833 SHA512 8edbc6a3812d17a2f1a827459867c0747387ff72be86b12fe0e790afca5e4b70e4f23c4098bdb61afa20ef292e2c3b154f16577d5c11999a3e2eec9e43b8d09a WHIRLPOOL f0df653216857527ffa3d31f07ab1c470614b53350f5dbd965ba3bdc398f36f37b506537f1070b03a54203a3847f6557a2ae6757327ce852833fa026de7b518d -DIST mysql-extras-20180628-0201Z.tar.bz2 322141 SHA256 8317028fa98cc4abd819d11191fb82026eb9c4d23490b7c1d42590731fbc834d SHA512 71a3800ec091b41e41d25536199149eb714c0bbfc0f6fc478e8e4dcaf4cf87a7e4d49c513da3c9badc0de810d7d78c05ad91dd898e45005b42136346237de42a WHIRLPOOL 71a5d8d09ede40a2d7adad6d57e1b546fabb34610c92ede6e0b472c0d84ad016e39ec7fcb038c708723535542dfd9caace22f2b8dd822951ba8c0ee2778c462b ------BEGIN PGP SIGNATURE----- -Version: GnuPG v2 - -iQKTBAEBCAB9FiEEZsLkTtkOMnWOfVXA0feB7/n0o7YFAls1JTVfFIAAAAAALgAo -aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDY2 -QzJFNDRFRDkwRTMyNzU4RTdENTVDMEQxRjc4MUVGRjlGNEEzQjYACgkQ0feB7/n0 -o7bVWRAAvmeaQBrNqYDFN31LWTWNRhlydqsRyl/uqBJIx74JgGKfuT4M5OMEqzL6 -VUSX3bM/ecZyIbYvqwZtgGotZ7S+J2Ac/J3crAKnVeTDIpbyU4MQ+nvmKt/kATsy -77m5UrxQXja7ARZ5nUwV3wV0t1VW1/ukips/8KM3yPEdaEXzygo/SSdQUB6QPFaI -nphtETJ84tf9MOWo1HJrS147j9PeDefs3EJONnl7d8mhlzCWNHOI718K8zQhxwS2 -o1va2F+UM0fWHEJoa/trrCKquvv6wra/oaIAlRhthSmLtQYTckAlLNu5n8WtCbpQ -jm1KFR9s3gOY2Lco/xwDkvt23vQk5934hG0wkgyHSTCRuFiJdJD+fXut/eGdTEuu -kpGseCZUFQ/XcFF5FKqJwXYIXd6ILqkzs3YU2dUcdO0XCMgVIytAwEReIgMeryKV -8qCFJY58lJIDsp5Gp/6gb/732WJ9Dmpwpav/M6yS6cBIyC5oKyRLHWeoM4/bnsQW -XFhj6bT1TdHJp+fMpfjb8vWAyA88wutu3lSQ3R90+5bEz3eXssaVZS1CGNnNNCmg -oXsgNAMgUN+z62na+qlQKAaFtMJ4exhepnnpwB1Bwx59/Vt7KJCJga34wanMwuFJ -H/ooLxuNb8KUh5V1pGP/SUiNw29JedsJ1nEbe28gGo/iZv5kZqc= -=skuK ------END PGP SIGNATURE----- diff --git a/dev-db/mysql-cluster/files/my.cnf-5.5 b/dev-db/mysql-cluster/files/my.cnf-5.5 deleted file mode 100644 index b3ab74c..0000000 --- a/dev-db/mysql-cluster/files/my.cnf-5.5 +++ /dev/null @@ -1,148 +0,0 @@ -# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/my.cnf: The global mysql configuration file. -# $Id$ - -# The following options will be passed to all MySQL clients -[client] -#password = your_password -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock - -[mysql] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqladmin] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlcheck] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqldump] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlimport] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlshow] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[myisamchk] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -[myisampack] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -# use [safe_mysqld] with mysql-3 -[mysqld_safe] -err-log = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysql.err - -# add a section [mysqld-4.1] or [mysqld-5.0] for specific configurations -[mysqld] -character-set-server = utf8 -user = mysql -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock -pid-file = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.pid -log-error = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysqld.err -basedir = @GENTOO_PORTAGE_EPREFIX@/usr -datadir = @DATADIR@ -skip-external-locking -key_buffer_size = 16M -max_allowed_packet = 1M -table_open_cache = 64 -sort_buffer_size = 512K -net_buffer_length = 8K -read_buffer_size = 256K -read_rnd_buffer_size = 512K -myisam_sort_buffer_size = 8M -lc_messages_dir = @GENTOO_PORTAGE_EPREFIX@/usr/share/mysql -#Set this to your desired error message language -lc_messages = en_US - -# security: -# using "localhost" in connects uses sockets by default -# skip-networking -bind-address = 127.0.0.1 - -log-bin -server-id = 1 - -# point the following paths to different dedicated disks -tmpdir = @GENTOO_PORTAGE_EPREFIX@/tmp/ -#log-update = @GENTOO_PORTAGE_EPREFIX@/path-to-dedicated-directory/hostname - -# you need the debug USE flag enabled to use the following directives, -# if needed, uncomment them, start the server and issue -# #tail -f @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.trace -# this will show you *exactly* what's happening in your server ;) - -#log = @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql -#gdb -#debug = d:t:i:o,/tmp/mysqld.trace -#one-thread - -# the following is the InnoDB configuration -# if you wish to disable innodb instead -# uncomment just the next line -#skip-innodb -# -# the rest of the innodb config follows: -# don't eat too much memory, we're trying to be safe on 64Mb boxes -# you might want to bump this up a bit on boxes with more RAM -innodb_buffer_pool_size = 16M -# this is the default, increase it if you have lots of tables -innodb_additional_mem_pool_size = 2M -# -# i'd like to use @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/innodb, but that is seen as a database :-( -# and upstream wants things to be under @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/, so that's the route -# we have to take for the moment -#innodb_data_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -#innodb_log_group_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -# you may wish to change this size to be more suitable for your system -# the max is there to avoid run-away growth on your machine -innodb_data_file_path = ibdata1:10M:autoextend:max:128M -# we keep this at around 25% of of innodb_buffer_pool_size -# sensible values range from 1MB to (1/innodb_log_files_in_group*innodb_buffer_pool_size) -innodb_log_file_size = 5M -# this is the default, increase it if you have very large transactions going on -innodb_log_buffer_size = 8M -# this is the default and won't hurt you -# you shouldn't need to tweak it -innodb_log_files_in_group=2 -# see the innodb config docs, the other options are not always safe -innodb_flush_log_at_trx_commit = 1 -innodb_lock_wait_timeout = 50 -innodb_file_per_table - -# Uncomment this to get FEDERATED engine support -#plugin-load=federated=ha_federated.so -loose-federated - -[mysqldump] -quick -max_allowed_packet = 16M - -[mysql] -# uncomment the next directive if you are not familiar with SQL -#safe-updates - -[isamchk] -key_buffer_size = 20M -sort_buffer_size = 20M -read_buffer = 2M -write_buffer = 2M - -[myisamchk] -key_buffer_size = 20M -sort_buffer_size = 20M -read_buffer_size = 2M -write_buffer_size = 2M - -[mysqlhotcopy] -interactive-timeout - diff --git a/dev-db/mysql-cluster/files/my.cnf-5.6 b/dev-db/mysql-cluster/files/my.cnf-5.6 deleted file mode 100644 index ee85e99..0000000 --- a/dev-db/mysql-cluster/files/my.cnf-5.6 +++ /dev/null @@ -1,140 +0,0 @@ -# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/my.cnf: The global mysql configuration file. -# $Id$ - -# The following options will be passed to all MySQL clients -[client] -#password = your_password -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock - -[mysql] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqladmin] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlcheck] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqldump] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlimport] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlshow] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[myisamchk] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -[myisampack] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -# use [safe_mysqld] with mysql-3 -[mysqld_safe] -err-log = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysql.err - -# add a section [mysqld-4.1] or [mysqld-5.0] for specific configurations -[mysqld] -character-set-server = utf8 -user = mysql -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock -pid-file = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.pid -log-error = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysqld.err -basedir = @GENTOO_PORTAGE_EPREFIX@/usr -datadir = @DATADIR@ -skip-external-locking -key_buffer_size = 16M -max_allowed_packet = 4M -table_open_cache = 400 -sort_buffer_size = 512K -net_buffer_length = 16K -read_buffer_size = 256K -read_rnd_buffer_size = 512K -myisam_sort_buffer_size = 8M -lc_messages_dir = @GENTOO_PORTAGE_EPREFIX@/usr/share/mysql -#Set this to your desired error message language -lc_messages = en_US - -# security: -# using "localhost" in connects uses sockets by default -# skip-networking -bind-address = 127.0.0.1 - -log-bin -server-id = 1 - -# point the following paths to different dedicated disks -tmpdir = @GENTOO_PORTAGE_EPREFIX@/tmp/ -#log-update = @GENTOO_PORTAGE_EPREFIX@/path-to-dedicated-directory/hostname - -# you need the debug USE flag enabled to use the following directives, -# if needed, uncomment them, start the server and issue -# #tail -f @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.trace -# this will show you *exactly* what's happening in your server ;) - -#log = @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql -#gdb -#debug = d:t:i:o,/tmp/mysqld.trace -#one-thread - -# the rest of the innodb config follows: -# don't eat too much memory, we're trying to be safe on 64Mb boxes -# you might want to bump this up a bit on boxes with more RAM -innodb_buffer_pool_size = 128M -# -# i'd like to use @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/innodb, but that is seen as a database :-( -# and upstream wants things to be under @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/, so that's the route -# we have to take for the moment -#innodb_data_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -#innodb_log_group_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -# you may wish to change this size to be more suitable for your system -# the max is there to avoid run-away growth on your machine -innodb_data_file_path = ibdata1:10M:autoextend:max:128M -# we keep this at around 25% of of innodb_buffer_pool_size -# sensible values range from 1MB to (1/innodb_log_files_in_group*innodb_buffer_pool_size) -innodb_log_file_size = 48M -# this is the default, increase it if you have very large transactions going on -innodb_log_buffer_size = 8M -# this is the default and won't hurt you -# you shouldn't need to tweak it -innodb_log_files_in_group=2 -# see the innodb config docs, the other options are not always safe -innodb_flush_log_at_trx_commit = 1 -innodb_lock_wait_timeout = 50 -innodb_file_per_table - -# Uncomment this to get FEDERATED engine support -#plugin-load=federated=ha_federated.so -loose-federated - -[mysqldump] -quick -max_allowed_packet = 16M - -[mysql] -# uncomment the next directive if you are not familiar with SQL -#safe-updates - -[isamchk] -key_buffer_size = 20M -sort_buffer_size = 20M -read_buffer = 2M -write_buffer = 2M - -[myisamchk] -key_buffer_size = 20M -sort_buffer_size = 20M -read_buffer_size = 2M -write_buffer_size = 2M - -[mysqlhotcopy] -interactive-timeout diff --git a/dev-db/mysql-cluster/metadata.xml b/dev-db/mysql-cluster/metadata.xml deleted file mode 100644 index 9836872..0000000 --- a/dev-db/mysql-cluster/metadata.xml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> -<pkgmetadata> - <maintainer type="project"> - <email>mysql-bugs@gentoo.org</email> - <name>MySQL</name> - </maintainer> -<use> - <flag name="client-libs">Build the client libraries from the server package instead of the C Connector packages</flag> - <flag name="cluster">Add support for NDB clustering</flag> - <flag name="community">Enables the community features from upstream.</flag> - <flag name="embedded">Build embedded server (libmysqld)</flag> - <flag name="extraengine">Add support for alternative storage engines (Archive, CSV, Blackhole, Federated(X), Partition)</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="libressl">Enable SSL connections and crypto functions using <pkg>dev-libs/libressl</pkg></flag> - <flag name="openssl">Enable SSL connections and crypto functions using <pkg>dev-libs/openssl</pkg></flag> - <flag name="max-idx-128">Raise the max index per table limit from 64 to 128</flag> - <flag name="minimal">Install client programs only, no server</flag> - <flag name="numa">Enable NUMA support using sys-process/numactl (NUMA kernel support is also required)</flag> - <flag name="profiling">Add support for statement profiling (requires USE=community).</flag> - <flag name="server">Build the server program</flag> - <flag name="systemtap">Build support for profiling and tracing using <pkg>dev-util/systemtap</pkg></flag> - <flag name="test">Install upstream testsuites for end use.</flag> - <flag name="yassl">Enable SSL connections and crypto functions using the bundled yaSSL</flag> -</use> -</pkgmetadata> diff --git a/dev-db/mysql-cluster/mysql-cluster-7.2.22.ebuild b/dev-db/mysql-cluster/mysql-cluster-7.2.22.ebuild deleted file mode 100644 index 09d32b5..0000000 --- a/dev-db/mysql-cluster/mysql-cluster-7.2.22.ebuild +++ /dev/null @@ -1,124 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 -MY_EXTRAS_VER="20151117-2040Z" -BUILD="cmake" - -inherit toolchain-funcs java-pkg-opt-2 mysql-v2 -# only to make repoman happy. it is really set in the eclass -IUSE="$IUSE" - -# REMEMBER: also update eclass/mysql*.eclass before committing! -KEYWORDS="~amd64 ~x86" - -# When MY_EXTRAS is bumped, the index should be revised to exclude these. -# This is often broken still -#EPATCH_EXCLUDE='' - -DEPEND="|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )" -RDEPEND="!media-sound/amarok[embedded]" - -# 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 - -# Official test instructions: -# USE='cluster extraengine perl ssl community' \ -# FEATURES='test userpriv -usersandbox' \ -# ebuild mysql-cluster-X.X.XX.ebuild \ -# digest clean package -src_test() { - - 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 "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 "${T}"/var-tests{,/log} - - # These are failing in MySQL 5.5 for now and are believed to be - # false positives: - # - # main.information_schema, binlog.binlog_statement_insert_delayed, - # main.mysqld--help-notwin, ndb.ndbinfo, ndb_binlog.ndb_binlog_index - # fails due to USE=-latin1 / utf8 default - # - # main.mysql_client_test: - # segfaults at random under Portage only, suspect resource limits. - # - # sys_vars.plugin_dir_basic - # fails because PLUGIN_DIR is set to MYSQL_LIBDIR64/plugin - # instead of MYSQL_LIBDIR/plugin - # - # main.flush_read_lock_kill - # fails because of unknown system variable 'DEBUG_SYNC' - # - # main.openssl_1 - # error message changing - # -mysqltest: Could not open connection 'default': 2026 SSL connection - # error: ASN: bad other signature confirmation - # +mysqltest: Could not open connection 'default': 2026 SSL connection - # error: error:00000001:lib(0):func(0):reason(1) - # - - for t in main.mysql_client_test \ - binlog.binlog_statement_insert_delayed main.information_schema \ - main.mysqld--help-notwin main.flush_read_lock_kill \ - sys_vars.plugin_dir_basic main.openssl_1 \ - main.mysqlhotcopy_archive main.mysqlhotcopy_myisam \ - ndb.ndbinfo ndb_binlog.ndb_binlog_index ; do - mysql-v2_disable_test "$t" "False positives in Gentoo" - done - - # Run mysql tests - pushd "${TESTDIR}" - - # run mysql-test tests - perl mysql-test-run.pl --force --vardir="${T}/var-tests" \ - --parallel=auto - 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/dev-db/mysql-cluster/mysql-cluster-7.3.11.ebuild b/dev-db/mysql-cluster/mysql-cluster-7.3.11.ebuild deleted file mode 100644 index 75316b6..0000000 --- a/dev-db/mysql-cluster/mysql-cluster-7.3.11.ebuild +++ /dev/null @@ -1,135 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 -MY_EXTRAS_VER="20151117-2040Z" -SUBSLOT="18" - -inherit toolchain-funcs java-pkg-opt-2 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="~amd64 ~x86" - -# When MY_EXTRAS is bumped, the index should be revised to exclude these. -# This is often broken still -#EPATCH_EXCLUDE='' - -DEPEND="|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )" -RDEPEND="!media-sound/amarok[embedded]" - -# 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 - -# Official test instructions: -# USE='extraengine perl openssl' \ -# FEATURES='test userpriv -usersandbox' \ -# ebuild mysql-cluster-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 "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))" - # 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} - - # These are failing in MySQL 5.5/5.6 for now and are believed to be - # false positives: - # - # main.information_schema, binlog.binlog_statement_insert_delayed, - # main.mysqld--help-notwin, funcs_1.is_triggers funcs_1.is_tables_mysql, - # funcs_1.is_columns_mysql, binlog.binlog_mysqlbinlog_filter, - # perfschema.binlog_edge_mix, perfschema.binlog_edge_stmt, - # mysqld--help-notwin, funcs_1.is_triggers, funcs_1.is_tables_mysql, funcs_1.is_columns_mysql - # perfschema.binlog_edge_stmt, perfschema.binlog_edge_mix, binlog.binlog_mysqlbinlog_filter - # fails due to USE=-latin1 / utf8 default - # - # main.mysql_client_test: - # segfaults at random under Portage only, suspect resource limits. - # - for t in \ - binlog.binlog_mysqlbinlog_filter \ - binlog.binlog_statement_insert_delayed \ - funcs_1.is_columns_mysql \ - funcs_1.is_tables_mysql \ - funcs_1.is_triggers \ - main.information_schema \ - main.mysqld--help-notwinfuncs_1.is_triggers \ - main.mysql_client_test \ - mysqld--help-notwin \ - main.mysqlhotcopy_archive main.mysqlhotcopy_myisam \ - perfschema.binlog_edge_mix \ - perfschema.binlog_edge_stmt \ - ; do - mysql-multilib_disable_test "$t" "False positives in Gentoo" - done - # ndb.ndbinfo, ndb_binlog.ndb_binlog_index: latin1/utf8 - for t in \ - ndb.ndbinfo \ - ndb_binlog.ndb_binlog_index ; do - mysql-multilib_disable_test "$t" "False positives in Gentoo (NDB)" - done - - # Run mysql tests - pushd "${TESTDIR}" - - # run mysql-test tests - perl mysql-test-run.pl --force --vardir="${T}/var-tests" - 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/dev-db/mysql-cluster/mysql-cluster-7.4.20.ebuild b/dev-db/mysql-cluster/mysql-cluster-7.4.20.ebuild deleted file mode 100644 index 7121a97..0000000 --- a/dev-db/mysql-cluster/mysql-cluster-7.4.20.ebuild +++ /dev/null @@ -1,514 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="6" -MY_EXTRAS_VER="20180628-0201Z" - -CMAKE_MAKEFILE_GENERATOR=emake - -# Keeping eutils in EAPI=6 for emktemp in pkg_config - -inherit eutils flag-o-matic prefix toolchain-funcs \ - java-pkg-opt-2 user cmake-utils multilib-build - -SRC_URI="http://cdn.mysql.com/Downloads/MySQL-Cluster-7.4/${PN}-gpl-${PV}.tar.gz - https://cdn.mysql.com/archives/mysql-cluster-7.4/${PN}-gpl-${PV}.tar.gz - http://downloads.mysql.com/archives/MySQL-Cluster-7.4/${PN}-gpl-${PV}.tar.gz" - -# Gentoo patches to MySQL -if [[ "${MY_EXTRAS_VER}" != "live" && "${MY_EXTRAS_VER}" != "none" ]]; then - SRC_URI="${SRC_URI} - mirror://gentoo/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://gitweb.gentoo.org/proj/mysql-extras.git/snapshot/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~grknight/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~robbat2/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~jmbsvicetto/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2" -fi - -HOMEPAGE="https://www.mysql.com/" -DESCRIPTION="A fast, multi-threaded, multi-user SQL database server" -LICENSE="GPL-2" -SLOT="0/18" -IUSE="client-libs cracklib debug jemalloc latin1 libressl numa +perl profiling selinux - +server static static-libs systemtap tcmalloc test yassl" - -# Tests always fail when libressl is enabled due to hard-coded ciphers in the tests -RESTRICT="libressl? ( test )" - -REQUIRED_USE="?? ( tcmalloc jemalloc ) static? ( yassl )" - -KEYWORDS="~amd64 ~x86" -# Shorten the path because the socket path length must be shorter than 107 chars -# and we will run a mysql server during test phase -S="${WORKDIR}/mysql" - -if [[ "${MY_EXTRAS_VER}" == "live" ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/mysql-extras.git" - EGIT_CHECKOUT_DIR="${WORKDIR}/mysql-extras" - EGIT_CLONE_TYPE=shallow - MY_PATCH_DIR="${WORKDIR}/mysql-extras" -else - MY_PATCH_DIR="${WORKDIR}/mysql-extras-${MY_EXTRAS_VER}" -fi - -MY_PATCH_DIR="${WORKDIR}/mysql-extras-${MY_EXTRAS_VER}" - -PATCHES=( - "${MY_PATCH_DIR}"/01050_all_mysql_config_cleanup-5.6.patch - "${MY_PATCH_DIR}"/02040_all_embedded-library-shared-5.5.10.patch - "${MY_PATCH_DIR}"/20006_all_cmake_elib-mysql-5.6.35.patch - "${MY_PATCH_DIR}"/20007_all_cmake-debug-werror-5.6.22.patch - "${MY_PATCH_DIR}"/20009_all_mysql_myodbc_symbol_fix-5.6.patch - "${MY_PATCH_DIR}"/20018_all_mysql-5.6.25-without-clientlibs-tools.patch - "${MY_PATCH_DIR}"/20027_all_mysql-5.5-perl5.26-includes.patch - "${MY_PATCH_DIR}"/20028_all_mysql-5.6-gcc7.patch - "${MY_PATCH_DIR}"/30000_all_mysql-cluster-multilib-property.patch -) - -# Be warned, *DEPEND are version-dependant -# These are used for both runtime and compiletime -COMMON_DEPEND=" - kernel_linux? ( - sys-process/procps:0= - dev-libs/libaio:0= - ) - net-misc/curl - >=sys-apps/sed-4 - >=sys-apps/texinfo-4.7-r1 - jemalloc? ( dev-libs/jemalloc:0= ) - tcmalloc? ( dev-util/google-perftools:0= ) - systemtap? ( >=dev-util/systemtap-1.3:0= ) - !yassl? ( - !libressl? ( >=dev-libs/openssl-1.0.0:0= ) - libressl? ( dev-libs/libressl:0= ) - ) - >=sys-libs/zlib-1.2.3:0= - sys-libs/ncurses:0= - server? ( - numa? ( sys-process/numactl ) - dev-libs/libevent:0= - ) - !client-libs? ( dev-db/mysql-connector-c[${MULTILIB_USEDEP},static-libs?] ) - ${JAVA_PKG_E_DEPEND} -" -DEPEND="virtual/yacc - static? ( sys-libs/ncurses[static-libs] ) - || ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 ) - >=virtual/jdk-1.6 - test? ( dev-perl/JSON ) - ${COMMON_DEPEND}" -RDEPEND="selinux? ( sec-policy/selinux-mysql ) - client-libs? ( !dev-db/mariadb-connector-c[mysqlcompat] !dev-db/mysql-connector-c ) - !dev-db/mariadb !dev-db/mariadb-galera !dev-db/percona-server !dev-db/mysql - server? ( !prefix? ( dev-db/mysql-init-scripts ) ) - >=virtual/jre-1.6 - ${COMMON_DEPEND} -" -# For other stuff to bring us in -# dev-perl/DBD-mysql is needed by some scripts installed by MySQL -PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 )" - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - local GCC_MAJOR_SET=$(gcc-major-version) - local GCC_MINOR_SET=$(gcc-minor-version) - # Bug 565584. InnoDB now requires atomic functions introduced with gcc-4.7 on - # non x86{,_64} arches - if ! use amd64 && ! use x86 && [[ ${GCC_MAJOR_SET} -lt 4 || \ - ${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then - eerror "${PN} needs to be built with gcc-4.7 or later." - eerror "Please use gcc-config to switch to gcc-4.7 or later version." - die - fi - fi - if has test ${FEATURES} && \ - use server && ! has userpriv ${FEATURES} ; then - eerror "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root." - fi - - # This should come after all of the die statements - enewgroup mysql 60 || die "problem adding 'mysql' group" - enewuser mysql 60 -1 /dev/null mysql || die "problem adding 'mysql' user" - java-pkg_init -} - -src_unpack() { - unpack ${A} - # Grab the patches - [[ "${MY_EXTRAS_VER}" == "live" ]] && S="${WORKDIR}/mysql-extras" git-r3_src_unpack - - mv -f "${WORKDIR}/${PN}-gpl-${PV}" "${S}" || die -} - -src_prepare() { - java-utils-2_src_prepare - _disable_engine() { - echo > "${S%/}/storage/${1}/CMakeLists.txt" || die - } - - _disable_plugin() { - echo > "${S%/}/plugin/${1}/CMakeLists.txt" || die - } - - if use jemalloc ; then - echo "TARGET_LINK_LIBRARIES(mysqld jemalloc)" >> "${S}/sql/CMakeLists.txt" || die - fi - if use tcmalloc; then - echo "TARGET_LINK_LIBRARIES(mysqld tcmalloc)" >> "${S}/sql/CMakeLists.txt" || die - fi - # Remove the centos and rhel selinux policies to support mysqld_safe under SELinux - if [[ -d "${S}/support-files/SELinux" ]] ; then - echo > "${S}/support-files/SELinux/CMakeLists.txt" || die - fi - - if use libressl ; then - sed -i 's/OPENSSL_MAJOR_VERSION STREQUAL "1"/OPENSSL_MAJOR_VERSION STREQUAL "2"/' \ - "${S}/cmake/ssl.cmake" || die - fi - local plugin - local server_plugins=( semisync ) - local test_plugins=( audit_null daemon_example fulltext ) - if ! use server; then # These plugins are for the server - for plugin in "${server_plugins[@]}" ; do - _disable_plugin "${plugin}" - done - fi - - if ! use test; then # These plugins are only used during testing - for plugin in "${test_plugins[@]}" ; do - _disable_plugin "${plugin}" - done - fi - - # Don't build example - _disable_engine example - _disable_plugin innodb_memcached - - cmake-utils_src_prepare -} - -src_configure() { - # Bug #114895, bug #110149 - filter-flags "-O" "-O[01]" - - append-cxxflags -felide-constructors - - # bug #283926, with GCC4.4, this is required to get correct behavior. - append-flags -fno-strict-aliasing - - CMAKE_BUILD_TYPE="RelWithDebInfo" - - # debug hack wrt #497532 - mycmakeargs=( - -DCMAKE_C_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')" - -DCMAKE_CXX_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')" - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr" - -DMYSQL_DATADIR="${EPREFIX}/var/lib/mysql" - -DSYSCONFDIR="${EPREFIX}/etc/mysql" - -DINSTALL_BINDIR=bin - -DINSTALL_DOCDIR=share/doc/${PF} - -DINSTALL_DOCREADMEDIR=share/doc/${PF} - -DINSTALL_INCLUDEDIR=include/mysql - -DINSTALL_INFODIR=share/info - -DINSTALL_LIBDIR=$(get_libdir) - -DINSTALL_MANDIR=share/man - -DINSTALL_MYSQLSHAREDIR=share/mysql - -DINSTALL_PLUGINDIR=$(get_libdir)/mysql/plugin - -DINSTALL_SCRIPTDIR=share/mysql/scripts - -DINSTALL_MYSQLDATADIR="${EPREFIX}/var/lib/mysql" - -DINSTALL_SBINDIR=sbin - -DINSTALL_SUPPORTFILESDIR="${EPREFIX}/usr/share/mysql" - -DCOMPILATION_COMMENT="Gentoo Linux ${PF}" - -DWITH_UNIT_TESTS=$(usex test ON OFF) - ### TODO: make this system but issues with UTF-8 prevent it - -DWITH_EDITLINE=bundled - -DWITH_ZLIB=system - -DWITH_LIBWRAP=0 - -DENABLED_LOCAL_INFILE=1 - -DMYSQL_UNIX_ADDR="${EPREFIX}/var/run/mysqld/mysqld.sock" - -DWITH_DEFAULT_COMPILER_OPTIONS=0 - -DWITH_DEFAULT_FEATURE_SET=0 - # The build forces this to be defined when cross-compiling. We pass it - # all the time for simplicity and to make sure it is actually correct. - -DSTACK_DIRECTION=$(tc-stack-grows-down && echo -1 || echo 1) - -DWITH_LIBEVENT=NO - -DWITHOUT_CLIENTLIBS=YES - -DENABLE_DTRACE=$(usex systemtap) - -DWITH_SSL=$(usex yassl bundled system) - -DINSTALL_MYSQLTESTDIR=$(usex test 'share/mysql/mysql-test' '') - -DWITHOUT_VALIDATE_PASSWORD=1 - ) - - if use server ; then - - if [[ ( -n ${MYSQL_DEFAULT_CHARSET} ) && ( -n ${MYSQL_DEFAULT_COLLATION} ) ]]; then - ewarn "You are using a custom charset of ${MYSQL_DEFAULT_CHARSET}" - ewarn "and a collation of ${MYSQL_DEFAULT_COLLATION}." - ewarn "You MUST file bugs without these variables set." - - mycmakeargs+=( - -DDEFAULT_CHARSET=${MYSQL_DEFAULT_CHARSET} - -DDEFAULT_COLLATION=${MYSQL_DEFAULT_COLLATION} - ) - - elif ! use latin1 ; then - mycmakeargs+=( - -DDEFAULT_CHARSET=utf8 - -DDEFAULT_COLLATION=utf8_general_ci - ) - else - mycmakeargs+=( - -DDEFAULT_CHARSET=latin1 - -DDEFAULT_COLLATION=latin1_swedish_ci - ) - fi - mycmakeargs+=( - -DWITH_NUMA=$(usex numa ON OFF) - -DEXTRA_CHARSETS=all - -DDISABLE_SHARED=$(usex static YES NO) - -DWITH_DEBUG=$(usex debug) - -DWITH_EMBEDDED_SERVER=OFF - -DENABLED_PROFILING=$(usex profiling) - ) - - if use static; then - mycmakeargs+=( -DWITH_PIC=1 ) - fi - - # Storage engines - mycmakeargs+=( - -DWITH_ARCHIVE_STORAGE_ENGINE=1 - -DWITH_BLACKHOLE_STORAGE_ENGINE=1 - -DWITH_CSV_STORAGE_ENGINE=1 - -DWITH_HEAP_STORAGE_ENGINE=1 - -DWITH_INNOBASE_STORAGE_ENGINE=1 - -DWITH_MYISAMMRG_STORAGE_ENGINE=1 - -DWITH_MYISAM_STORAGE_ENGINE=1 - -DWITH_PARTITION_STORAGE_ENGINE=1 - -DWITH_INNODB_MEMCACHED=0 - -DWITH_NDBCLUSTER=1 - -DWITHOUT_PARTITION_STORAGE_ENGINE=0 - ) - - else - mycmakeargs+=( - -DWITHOUT_SERVER=1 - -DWITH_EMBEDDED_SERVER=OFF - -DEXTRA_CHARSETS=none - ) - fi - - cmake-utils_src_configure -} - -src_compile() { - cmake-utils_src_compile -} - -src_install() { - cmake-utils_src_install - - # Kill old libmysqclient_r symlinks if they exist. Time to fix what depends on them. - find "${D%/}" -name 'libmysqlclient_r.*' -type l -delete || die - # Make sure the vars are correctly initialized - mysql_init_vars - - # Convenience links - einfo "Making Convenience links for mysqlcheck multi-call binary" - dosym "mysqlcheck" "/usr/bin/mysqlanalyze" - dosym "mysqlcheck" "/usr/bin/mysqlrepair" - dosym "mysqlcheck" "/usr/bin/mysqloptimize" - - # INSTALL_LAYOUT=STANDALONE causes cmake to create a /usr/data dir - if [[ -d "${ED%/}/usr/data" ]] ; then - find "${ED%/}/usr/data" -delete || die - fi - - # Unless they explicitly specific USE=test, then do not install the - # testsuite. It DOES have a use to be installed, esp. when you want to do a - # validation of your database configuration after tuning it. - if ! use test ; then - find "${D%/}/${MY_SHAREDSTATEDIR}/mysql-test" -delete || die - fi - - # Configuration stuff - einfo "Building default configuration ..." - insinto "${MY_SYSCONFDIR#${EPREFIX}}" - [[ -f "${S%/}/scripts/mysqlaccess.conf" ]] && doins "${S%/}"/scripts/mysqlaccess.conf - local mycnf_src="my.cnf-5.6" - sed -e "s!@DATADIR@!${MY_DATADIR}!g" \ - "${FILESDIR%/}/${mycnf_src}" \ - > "${TMPDIR%/}/my.cnf.ok" || die - use prefix && sed -i -r -e '/^user[[:space:]]*=[[:space:]]*mysql$/d' "${TMPDIR%/}/my.cnf.ok" - if use latin1 ; then - sed -i \ - -e "/character-set/s|utf8|latin1|g" \ - "${TMPDIR%/}/my.cnf.ok" || die - fi - eprefixify "${TMPDIR%/}/my.cnf.ok" - newins "${TMPDIR}/my.cnf.ok" my.cnf - - if use server ; then - einfo "Including support files and sample configurations" - docinto "support-files" - local script - for script in \ - "${S}"/support-files/magic - do - [[ -f "$script" ]] && dodoc "${script}" - done - - docinto "scripts" - for script in "${S}"/scripts/mysql* ; do - [[ ( -f "$script" ) && ( "${script%.sh}" == "${script}" ) ]] && dodoc "${script}" - done - fi -} - -pkg_preinst() { - java-utils-2_pkg_preinst -} - -pkg_postinst() { - # Make sure the vars are correctly initialized - mysql_init_vars - - # Create log directory securely if it does not exist - [[ -d "${ROOT}${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}${MY_LOGDIR}" - - if use server ; then - if [[ -z "${REPLACING_VERSIONS}" ]] ; then - einfo - elog "You might want to run:" - elog "\"emerge --config =${CATEGORY}/${PF}\"" - elog "if this is a new install." - elog - elog "If you are switching server implentations, you should run the" - elog "mysql_upgrade tool." - einfo - else - einfo - elog "If you are upgrading major versions, you should run the" - elog "mysql_upgrade tool." - einfo - fi - fi -} - -# Official test instructions: -# USE='extraengine perl openssl' \ -# FEATURES='test userpriv -usersandbox' \ -# ebuild mysql-cluster-X.X.XX.ebuild \ -# digest clean package -src_test() { - - _disable_test() { - local rawtestname reason - rawtestname="${1}" ; shift - reason="${@}" - ewarn "test '${rawtestname}' disabled: '${reason}'" - echo ${rawtestname} : ${reason} >> "${T}/disabled.def" - } - - 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}" - - # 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 symlink for the tests to find mysql_tzinfo_to_sql - ln -s "${BUILD_DIR}/sql/mysql_tzinfo_to_sql" "${S}/sql/" - - touch "${T}/disabled.def" - # These are failing in MySQL 5.5/5.6 for now and are believed to be - # false positives: - # - # main.information_schema, binlog.binlog_statement_insert_delayed, - # main.mysqld--help-notwin, funcs_1.is_triggers funcs_1.is_tables_mysql, - # funcs_1.is_columns_mysql, binlog.binlog_mysqlbinlog_filter, - # perfschema.binlog_edge_mix, perfschema.binlog_edge_stmt, - # mysqld--help-notwin, funcs_1.is_triggers, funcs_1.is_tables_mysql, funcs_1.is_columns_mysql - # perfschema.binlog_edge_stmt, perfschema.binlog_edge_mix, binlog.binlog_mysqlbinlog_filter - # fails due to USE=-latin1 / utf8 default - # - # main.mysql_client_test: - # segfaults at random under Portage only, suspect resource limits. - # - for t in \ - binlog.binlog_mysqlbinlog_filter \ - binlog.binlog_statement_insert_delayed \ - funcs_1.is_columns_mysql \ - funcs_1.is_tables_mysql \ - funcs_1.is_triggers \ - main.information_schema \ - main.mysqld--help-notwinfuncs_1.is_triggers \ - main.mysql_client_test \ - mysqld--help-notwin \ - main.mysqlhotcopy_archive main.mysqlhotcopy_myisam \ - perfschema.binlog_edge_mix \ - perfschema.binlog_edge_stmt \ - rpl.rpl_plugin_load main.mysql \ - main.mysql_upgrade \ - ; do - _disable_test "$t" "False positives in Gentoo" - done - # ndb.ndbinfo, ndb_binlog.ndb_binlog_index: latin1/utf8 - for t in \ - ndb.ndbinfo ndb.ndb_tools_connect \ - ndb_binlog.ndb_binlog_index ; do - _disable_test "$t" "False positives in Gentoo (NDB) (Latin1/UTF8)" - done - - # Set file limits higher so tests run - ulimit -n 3000 - - # Run mysql tests - pushd "${TESTDIR}" > /dev/null || die - - # run mysql-test tests - perl mysql-test-run.pl --force --vardir="${T}/var-tests" \ - --suite-timeout=5000 --reorder --skip-test-list="${T}/disabled.def" \ - --nounit-tests - retstatus_tests=$? - - popd > /dev/null || 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/mysql-init-scripts/ChangeLog b/dev-db/mysql-init-scripts/ChangeLog deleted file mode 100644 index 4b326a1..0000000 --- a/dev-db/mysql-init-scripts/ChangeLog +++ /dev/null @@ -1,26 +0,0 @@ -# ChangeLog for dev-db/mysql-init-scripts -# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Id$ - -*mysql-init-scripts-1.2 (06 Aug 2014) - - 06 Aug 2014; Brian Evans <grknight@gentoo.org> +files/mysql.conf.d, - +files/mysql.rc6, +files/mysqlmanager.conf.d, +files/mysqlmanager.rc6, - +mysql-init-scripts-1.2.ebuild: - [mysql-init-scripts] Retire the v1 series to the overlay since all tree - versions can no longer use - - 06 Dec 2010; Robin H. Johnson <robbat2@gentoo.org> files/mysql-5.1.53-conf.d, - files/mysql-5.1.53-init.d: - Add stop timeout. - - 06 Dec 2010; Robin H. Johnson <robbat2@gentoo.org> files/mysql-5.1.53-init.d: - Fix typo. - -*mysql-init-scripts-2.0_pre1 (06 Dec 2010) - - 06 Dec 2010; Robin H. Johnson <robbat2@gentoo.org> - +mysql-init-scripts-2.0_pre1.ebuild, +files/mysql-5.1.53-conf.d, - +files/mysql-5.1.53-init.d, +files/logrotate.mysql, +metadata.xml: - Finally revamp init scripts, based on bug #175783 submission from Davide - Pesavento <davidepesa@gmail.com>. diff --git a/dev-db/mysql-init-scripts/files/conf.d-2.0 b/dev-db/mysql-init-scripts/files/conf.d-2.0 deleted file mode 100644 index 142995e..0000000 --- a/dev-db/mysql-init-scripts/files/conf.d-2.0 +++ /dev/null @@ -1,79 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -# If you want a non-stock location for the config file, uncomment or update -# either of these as needed. If you do use it, you must make sure that none of -# your socket, pidfile, datadir, logfiles, binary logs, relay logs or InnoDB -# files collide with each other. -MY_CNF="/etc/mysql/my.cnf" -#MY_CNF="${MY_CNF:-/etc/${SVCNAME}/my.cnf}" -#MY_CNF="${MY_CNF:-/etc/mysql/my-${SVCNAME/mysql.}.cnf}" - -# Place any additional arguments here that you might need -# Common/useful options: -# --skip-slave-start=1 - For bringing up replication initially -# --server-id=NNN - Server ID for replication -# --skip-networking - lock it down to UNIX sockets only -MY_ARGS="" - -# This setting (in seconds) should be high enough to allow InnoDB to do a full -# checkpoint recovery. 900 is the default used in the upstream RPM startup -# scripts. 30 seconds should be sufficent if you just have a tiny <1GiB -# database. After the core startup is done, we wait this long for the UNIX -# socket to appear. -STARTUP_TIMEOUT="900" - -# This is how long, in milliseconds, we wait for pidfile to be created, early -# in the startup. -STARTUP_EARLY_TIMEOUT="1000" - -# How long (in seconds) should we wait for shutdown? -STOP_TIMEOUT=120 - -# integer [-20 .. 19 ] default 0 -# change the priority of the server -20 (high) to 19 (low) -# see nice(1) for description -#NICE=0 - -# See start-stop-daemon(8) for possible settings -#IONICE=2 - -# If defined, --verbose gets passed to S-S-D -#DEBUG=1 - -# Depending on your usage of MySQL, you may also wish to start it after some -# other services are up. Uncomment the lines below as needed. If these aren't -# enough for you, we encourage you to file a bug, and help us understand how -# you are using MySQL. - -# Do your MySQL ACLs refer to hostnames not in your /etc/hosts? -# If so, you need DNS before you can accept connections. -# Avoid dependency circular loops if you use MySQL to power a local DNS server. -#rc_use="dns" -#rc_after="dns" - -# Does your MySQL bind to an IP on an interface other than net.lo? -# Alternatively you might wish to specify the exact interface here. -#rc_use="net" -#rc_after="net" - -# Do you store your MySQL files on a SAN or other network filesystem, that is -# provided by the netmount init script? -#rc_need="netmount" - -# Or from NFS? P.S. This is not a good idea in most cases, but does have some -# valid usage cases, so we provide the option. -#rc_need="nfsmount" - -# Should any one of the instances satisfy the requirement for MySQL coming up? -# By default, we say no. -[ "${SVCNAME}" != mysql ] && rc_provide="!mysql" -# But uncomment this next instead if you think it should. -#rc_provide="mysql" - -# The conditional above has a false-positive "failure" return value as a -# side-effect, and since it's the last statement, without the next line, this -# script returns failure. -return 0 -# vim: ft=gentoo-conf-d et ts=4 sw=4: diff --git a/dev-db/mysql-init-scripts/files/init.d-2.0 b/dev-db/mysql-init-scripts/files/init.d-2.0 deleted file mode 100644 index 0402789..0000000 --- a/dev-db/mysql-init-scripts/files/init.d-2.0 +++ /dev/null @@ -1,160 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2014 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -extra_commands="checkconfig" - -depend() { - use net.lo - # localmount needed for $basedir - need localmount -} - -get_config() { - my_print_defaults --config-file="$1" mysqld | - sed -n -e "s/^--$2=//p" -} - -mysql_svcname() { - local ebextra= - case "${SVCNAME}" in - mysql*) ;; - *) ebextra=" (mysql)" ;; - esac - echo "${SVCNAME}${ebextra}" -} - -start() { - # Check for old conf.d variables that mean migration was not yet done. - set | egrep -sq '^(mysql_slot_|MYSQL_BLOG_PID_FILE|STOPTIMEOUT)' - rc=$? - # Yes, MYSQL_INIT_I_KNOW_WHAT_I_AM_DOING is a hidden variable. - # It does have a use in testing, as it is possible to build a config file - # that works with both the old and new init scripts simulateously. - if [ "${rc}" = 0 -a -z "${MYSQL_INIT_I_KNOW_WHAT_I_AM_DOING}" ]; then - eerror "You have not updated your conf.d for the new mysql-init-scripts-2 revamp." - eerror "Not proceeding because it may be dangerous." - return 1 - fi - - # Check the config or die - checkconfig || return 1 - - # Now we can startup - ebegin "Starting $(mysql_svcname)" - - MY_CNF="${MY_CNF:-/etc/${SVCNAME}/my.cnf}" - - if [ ! -r "${MY_CNF}" ] ; then - eerror "Cannot read the configuration file \`${MY_CNF}'" - return 1 - fi - - # tail -n1 is critical as these we only want the last instance of the option - local basedir=$(get_config "${MY_CNF}" basedir | tail -n1) - local datadir=$(get_config "${MY_CNF}" datadir | tail -n1) - local pidfile=$(get_config "${MY_CNF}" pid-file | tail -n1) - local socket=$(get_config "${MY_CNF}" socket | tail -n1) - local chroot=$(get_config "${MY_CNF}" chroot | tail -n1) - - if [ -n "${chroot}" ] ; then - socket="${chroot}/${socket}" - pidfile="${chroot}/${pidfile}" - fi - - if [ ! -d "${datadir}" ] ; then - eerror "MySQL datadir \`${datadir}' is empty or invalid" - eerror "Please check your config file \`${MY_CNF}'" - return 1 - fi - - if [ ! -d "${datadir}"/mysql ] ; then - # find which package is installed to report an error - local EROOT=$(portageq envvar EROOT) - local DBPKG_P=$(portageq match ${EROOT} $(portageq expand_virtual ${EROOT} virtual/mysql)) - if [ -z ${DBPKG_P} ] ; then - eerror "You don't appear to have a server package installed yet." - else - eerror "You don't appear to have the mysql database installed yet." - eerror "Please run \`emerge --config =${DBPKG_P}\` to have this done..." - fi - return 1 - fi - - local piddir="${pidfile%/*}" - checkpath -d --owner mysql:mysql --mode 0755 "$piddir" - rc=$? - if [ $rc -ne 0 ]; then - eerror "Directory $piddir for pidfile does not exist and cannot be created" - return 1 - fi - - local startup_timeout=${STARTUP_TIMEOUT:-900} - local startup_early_timeout=${STARTUP_EARLY_TIMEOUT:-1000} - local tmpnice="${NICE:+"--nicelevel "}${NICE}" - local tmpionice="${IONICE:+"--ionice "}${IONICE}" - start-stop-daemon \ - ${DEBUG:+"--verbose"} \ - --start \ - --exec "${basedir}"/sbin/mysqld \ - --pidfile "${pidfile}" \ - --background \ - --wait ${startup_early_timeout} \ - ${tmpnice} \ - ${tmpionice} \ - -- --defaults-file="${MY_CNF}" ${MY_ARGS} - local ret=$? - if [ ${ret} -ne 0 ] ; then - eend ${ret} - return ${ret} - fi - - ewaitfile ${startup_timeout} "${socket}" - eend $? || return 1 - - save_options pidfile "${pidfile}" - save_options basedir "${basedir}" -} - -stop() { - ebegin "Stopping $(mysql_svcname)" - - local pidfile="$(get_options pidfile)" - local basedir="$(get_options basedir)" - local stop_timeout=${STOP_TIMEOUT:-120} - - start-stop-daemon \ - ${DEBUG:+"--verbose"} \ - --stop \ - --exec "${basedir}"/sbin/mysqld \ - --pidfile "${pidfile}" \ - --retry ${stop_timeout} - eend $? -} - -checkconfig() { - local my_cnf="${MY_CNF:-/etc/${SVCNAME}/my.cnf}" - local basedir=$(get_config "${my_cnf}" basedir | tail -n1) - local svc_name=$(mysql_svcname) - ebegin "Checking mysqld configuration for ${svc_name}" - - if [ ${RC_CMD} = "checkconfig" ] ; then - # We are calling checkconfig specifically. Print warnings regardless. - "${basedir}"/sbin/mysqld --defaults-file="${my_cnf}" --help --verbose > /dev/null - else - # Suppress output to check the return value - "${basedir}"/sbin/mysqld --defaults-file="${my_cnf}" --help --verbose > /dev/null 2>&1 - - # If the above command does not return 0, - # then there is an error to echo to the user - if [ $? -ne 0 ] ; then - "${basedir}"/sbin/mysqld --defaults-file="${my_cnf}" --help --verbose > /dev/null - fi - fi - - eend $? "${svc_name} config check failed" -} - -# vim: filetype=gentoo-init-d sw=2 ts=2 sts=2 noet: - diff --git a/dev-db/mysql-init-scripts/files/init.d-s6 b/dev-db/mysql-init-scripts/files/init.d-s6 deleted file mode 100644 index a9a0a34..0000000 --- a/dev-db/mysql-init-scripts/files/init.d-s6 +++ /dev/null @@ -1,129 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -depend() { - use net.lo - # localmount needed for $basedir - need localmount s6-svscan -} - -get_config() { - my_print_defaults --config-file="$1" mysqld | - sed -n -e "s/^--$2=//p" -} - -mysql_svcname() { - local ebextra= - case "${svc_name}" in - mysql*) ;; - *) ebextra=" (mysql)" ;; - esac - echo "${svc_name}${ebextra}" -} - -extra_commands="checkconfig" -supervisor=s6 -name=$(mysql_svcname) -s6_service_timeout_stop="$((1000*${STOP_TIMEOUT:-120}))" -#s6_svwait_options_start="-U -t $((1000*${STARTUP_EARLY_TIMEOUT:-1000}))" -svc_name=${RC_SVCNAME%-s6} -s6_service_path=/var/svc.d/${svc_name} - -start_pre() { - # Check the config or die - checkconfig || return 1 - - MY_CNF="${MY_CNF:-/etc/${svc_name}/my.cnf}" - - if [ ! -r "${MY_CNF}" ] ; then - eerror "Cannot read the configuration file \`${MY_CNF}'" - return 1 - fi - - # tail -n1 is critical as these we only want the last instance of the option - local basedir=$(get_config "${MY_CNF}" basedir | tail -n1) - local datadir=$(get_config "${MY_CNF}" datadir | tail -n1) - local pidfile=$(get_config "${MY_CNF}" pid-file | tail -n1) - local socket=$(get_config "${MY_CNF}" socket | tail -n1) - local chroot=$(get_config "${MY_CNF}" chroot | tail -n1) - - if [ -n "${chroot}" ] ; then - socket="${chroot}/${socket}" - pidfile="${chroot}/${pidfile}" - fi - - if [ ! -d "${datadir}" ] ; then - eerror "MySQL datadir \`${datadir}' is empty or invalid" - eerror "Please check your config file \`${MY_CNF}'" - return 1 - fi - - if [ ! -d "${datadir}"/mysql ] ; then - # find which package is installed to report an error - local EROOT=$(portageq envvar EROOT) - local DBPKG_P=$(portageq match ${EROOT} $(portageq expand_virtual ${EROOT} virtual/mysql)) - if [ -z ${DBPKG_P} ] ; then - eerror "You don't appear to have a server package installed yet." - else - eerror "You don't appear to have the mysql database installed yet." - eerror "Please run \`emerge --config =${DBPKG_P}\` to have this done..." - fi - return 1 - fi - - local piddir="${pidfile%/*}" - checkpath -d --owner mysql:mysql --mode 0755 "$piddir" - rc=$? - if [ $rc -ne 0 ]; then - eerror "Directory $piddir for pidfile does not exist and cannot be created" - return 1 - fi - - # Prepare env files to source - mkdir -p "/var/svc.d/${svc_name}" - echo "MY_CNF=\"${MY_CNF}\"" > "/var/svc.d/${svc_name}/env" - echo "MY_ARGS=\"${MY_ARGS}\"" >> "/var/svc.d/${svc_name}/env" - echo "basedir=\"${basedir}\"" >> "/var/svc.d/${svc_name}/env" - mkdir -p "/var/svc.d/${svc_name}/log" - echo "SVCNAME=\"${SVCNAME}\"" > "/var/svc.d/${svc_name}/log/env" - echo "S6_LOG_OPTIONS=\"${S6_LOG_OPTIONS}\"" > "/var/svc.d/${svc_name}/log/env" -} - -start_post() { - local socket=$(get_config "${MY_CNF}" socket | tail -n1) - local chroot=$(get_config "${MY_CNF}" chroot | tail -n1) - local startup_timeout=${STARTUP_TIMEOUT:-900} - - if [ -n "${chroot}" ] ; then - socket="${chroot}/${socket}" - fi - ewaitfile ${startup_timeout} "${socket}" -} - -checkconfig() { - local my_cnf="${MY_CNF:-/etc/${svc_name}/my.cnf}" - local basedir=$(get_config "${my_cnf}" basedir | tail -n1) - local svc_name=$(mysql_svcname) - ebegin "Checking mysqld configuration for ${svc_name}" - - if [ ${RC_CMD} = "checkconfig" ] ; then - # We are calling checkconfig specifically. Print warnings regardless. - "${basedir}"/sbin/mysqld --defaults-file="${my_cnf}" --help --verbose > /dev/null - else - # Suppress output to check the return value - "${basedir}"/sbin/mysqld --defaults-file="${my_cnf}" --help --verbose > /dev/null 2>&1 - - # If the above command does not return 0, - # then there is an error to echo to the user - if [ $? -ne 0 ] ; then - "${basedir}"/sbin/mysqld --defaults-file="${my_cnf}" --help --verbose > /dev/null - fi - fi - - eend $? "${svc_name} config check failed" -} - -# vim: filetype=gentoo-init-d sw=2 ts=2 sts=2 noet: - diff --git a/dev-db/mysql-init-scripts/files/log-s6 b/dev-db/mysql-init-scripts/files/log-s6 deleted file mode 100644 index 15be384..0000000 --- a/dev-db/mysql-init-scripts/files/log-s6 +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -if [ -e ./env ] ; then source ./env ; else echo "failed to source env" ; fi -mkdir -p "/var/log/mysql/${SVCNAME}" -if [ ${S6_LOG_OPTIONS} ] ; then - exec s6-log ${S6_LOG_OPTIONS} -else - exec s6-log -b n20 S15000000 !"gzip -nq9" "/var/log/mysql/${SVCNAME}" -fi diff --git a/dev-db/mysql-init-scripts/files/logrotate.mysql b/dev-db/mysql-init-scripts/files/logrotate.mysql deleted file mode 100644 index 2367d93..0000000 --- a/dev-db/mysql-init-scripts/files/logrotate.mysql +++ /dev/null @@ -1,15 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -/var/log/mysql/mysql.err /var/log/mysql/mysql.log /var/log/mysql/mysqld.err { -monthly -create 660 mysql mysql -notifempty -size 5M -sharedscripts -missingok -postrotate -[ -f /var/run/mysqld/mysqld.pid ] && /bin/kill -HUP `cat /var/run/mysqld/mysqld.pid` -endscript -} diff --git a/dev-db/mysql-init-scripts/files/mysql-5.1.53-conf.d b/dev-db/mysql-init-scripts/files/mysql-5.1.53-conf.d deleted file mode 100644 index 142995e..0000000 --- a/dev-db/mysql-init-scripts/files/mysql-5.1.53-conf.d +++ /dev/null @@ -1,79 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -# If you want a non-stock location for the config file, uncomment or update -# either of these as needed. If you do use it, you must make sure that none of -# your socket, pidfile, datadir, logfiles, binary logs, relay logs or InnoDB -# files collide with each other. -MY_CNF="/etc/mysql/my.cnf" -#MY_CNF="${MY_CNF:-/etc/${SVCNAME}/my.cnf}" -#MY_CNF="${MY_CNF:-/etc/mysql/my-${SVCNAME/mysql.}.cnf}" - -# Place any additional arguments here that you might need -# Common/useful options: -# --skip-slave-start=1 - For bringing up replication initially -# --server-id=NNN - Server ID for replication -# --skip-networking - lock it down to UNIX sockets only -MY_ARGS="" - -# This setting (in seconds) should be high enough to allow InnoDB to do a full -# checkpoint recovery. 900 is the default used in the upstream RPM startup -# scripts. 30 seconds should be sufficent if you just have a tiny <1GiB -# database. After the core startup is done, we wait this long for the UNIX -# socket to appear. -STARTUP_TIMEOUT="900" - -# This is how long, in milliseconds, we wait for pidfile to be created, early -# in the startup. -STARTUP_EARLY_TIMEOUT="1000" - -# How long (in seconds) should we wait for shutdown? -STOP_TIMEOUT=120 - -# integer [-20 .. 19 ] default 0 -# change the priority of the server -20 (high) to 19 (low) -# see nice(1) for description -#NICE=0 - -# See start-stop-daemon(8) for possible settings -#IONICE=2 - -# If defined, --verbose gets passed to S-S-D -#DEBUG=1 - -# Depending on your usage of MySQL, you may also wish to start it after some -# other services are up. Uncomment the lines below as needed. If these aren't -# enough for you, we encourage you to file a bug, and help us understand how -# you are using MySQL. - -# Do your MySQL ACLs refer to hostnames not in your /etc/hosts? -# If so, you need DNS before you can accept connections. -# Avoid dependency circular loops if you use MySQL to power a local DNS server. -#rc_use="dns" -#rc_after="dns" - -# Does your MySQL bind to an IP on an interface other than net.lo? -# Alternatively you might wish to specify the exact interface here. -#rc_use="net" -#rc_after="net" - -# Do you store your MySQL files on a SAN or other network filesystem, that is -# provided by the netmount init script? -#rc_need="netmount" - -# Or from NFS? P.S. This is not a good idea in most cases, but does have some -# valid usage cases, so we provide the option. -#rc_need="nfsmount" - -# Should any one of the instances satisfy the requirement for MySQL coming up? -# By default, we say no. -[ "${SVCNAME}" != mysql ] && rc_provide="!mysql" -# But uncomment this next instead if you think it should. -#rc_provide="mysql" - -# The conditional above has a false-positive "failure" return value as a -# side-effect, and since it's the last statement, without the next line, this -# script returns failure. -return 0 -# vim: ft=gentoo-conf-d et ts=4 sw=4: diff --git a/dev-db/mysql-init-scripts/files/mysql-5.1.53-init.d b/dev-db/mysql-init-scripts/files/mysql-5.1.53-init.d deleted file mode 100644 index afa9918..0000000 --- a/dev-db/mysql-init-scripts/files/mysql-5.1.53-init.d +++ /dev/null @@ -1,110 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -depend() { - use net.lo - # localmount needed for $basedir - need localmount -} - -get_config() { - my_print_defaults --config-file="$1" mysqld | - sed -n -e "s/^--$2=//p" -} - -mysql_svcname() { - local ebextra= - case "${SVCNAME}" in - mysql*) ;; - *) ebextra=" (mysql)" ;; - esac - echo "${SVCNAME}${ebextra}" -} - -start() { - # Check for old conf.d variables that mean migration was not yet done. - local varlist="${!mysql_slot_*} ${!MYSQL_BLOG_PID_FILE*} ${!STOPTIMEOUT*}" - varlist="${varlist// /}" - # Yes, MYSQL_INIT_I_KNOW_WHAT_I_AM_DOING is a hidden variable. - # It does have a use in testing, as it is possible to build a config file - # that works with both the old and new init scripts simulateously. - if [ -n "${varlist}" -a -z "${MYSQL_INIT_I_KNOW_WHAT_I_AM_DOING}" ]; then - eerror "You have not updated your conf.d for the new mysql-init-scripts-2 revamp." - eerror "Not proceeding because it may be dangerous." - return 1 - fi - - # Now we can startup - ebegin "Starting $(mysql_svcname)" - - MY_CNF="${MY_CNF:-/etc/${SVCNAME}/my.cnf}" - - if [ ! -r "${MY_CNF}" ] ; then - eerror "Cannot read the configuration file \`${MY_CNF}'" - return 1 - fi - - # tail -n1 is critical as these we only want the last instance of the option - local basedir=$(get_config "${MY_CNF}" basedir | tail -n1) - local datadir=$(get_config "${MY_CNF}" datadir | tail -n1) - local pidfile=$(get_config "${MY_CNF}" pid-file | tail -n1) - local socket=$(get_config "${MY_CNF}" socket | tail -n1) - - if [ ! -d "${datadir}" ] ; then - eerror "MySQL datadir \`${datadir}' is empty or invalid" - eerror "Please check your config file \`${MY_CNF}'" - return 1 - fi - - if [ ! -d "${datadir}"/mysql ] ; then - eerror "You don't appear to have the mysql database installed yet." - eerror "Please run /usr/bin/mysql_install_db to have this done..." - return 1 - fi - - local startup_timeout=${STARTUP_TIMEOUT:-900} - local startup_early_timeout=${STARTUP_EARLY_TIMEOUT:-1000} - local tmpnice="${NICE:+"--nicelevel "}${NICE}" - local tmpionice="${IONICE:+"--ionice "}${IONICE}" - start-stop-daemon \ - ${DEBUG/*/"--verbose"} \ - --start \ - --exec "${basedir}"/sbin/mysqld \ - --pidfile "${pidfile}" \ - --background \ - --wait ${startup_early_timeout} \ - ${tmpnice} \ - ${tmpionice} \ - -- --defaults-file="${MY_CNF}" ${MY_ARGS} - local ret=$? - if [ ${ret} -ne 0 ] ; then - eend ${ret} - return ${ret} - fi - - ewaitfile ${startup_timeout} "${socket}" - eend $? || return 1 - - save_options pidfile "${pidfile}" - save_options basedir "${basedir}" -} - -stop() { - ebegin "Stopping $(mysql_svcname)" - - local pidfile="$(get_options pidfile)" - local basedir="$(get_options basedir)" - local stop_timeout=${STOP_TIMEOUT:-120} - - start-stop-daemon \ - ${DEBUG/*/"--verbose"} \ - --stop \ - --exec "${basedir}"/sbin/mysqld \ - --pidfile "${pidfile}" \ - --retry ${stop_timeout} - eend $? -} -# vim: filetype=gentoo-init-d sw=2 ts=2 sts=2 noet: - diff --git a/dev-db/mysql-init-scripts/files/mysql-5.1.67-init.d b/dev-db/mysql-init-scripts/files/mysql-5.1.67-init.d deleted file mode 100644 index 1a78103..0000000 --- a/dev-db/mysql-init-scripts/files/mysql-5.1.67-init.d +++ /dev/null @@ -1,118 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -depend() { - use net.lo - # localmount needed for $basedir - need localmount -} - -get_config() { - my_print_defaults --config-file="$1" mysqld | - sed -n -e "s/^--$2=//p" -} - -mysql_svcname() { - local ebextra= - case "${SVCNAME}" in - mysql*) ;; - *) ebextra=" (mysql)" ;; - esac - echo "${SVCNAME}${ebextra}" -} - -start() { - # Check for old conf.d variables that mean migration was not yet done. - set | egrep -sq '^(mysql_slot_|MYSQL_BLOG_PID_FILE|STOPTIMEOUT)' - rc=$? - # Yes, MYSQL_INIT_I_KNOW_WHAT_I_AM_DOING is a hidden variable. - # It does have a use in testing, as it is possible to build a config file - # that works with both the old and new init scripts simulateously. - if [ "${rc}" = 0 -a -z "${MYSQL_INIT_I_KNOW_WHAT_I_AM_DOING}" ]; then - eerror "You have not updated your conf.d for the new mysql-init-scripts-2 revamp." - eerror "Not proceeding because it may be dangerous." - return 1 - fi - - # Now we can startup - ebegin "Starting $(mysql_svcname)" - - MY_CNF="${MY_CNF:-/etc/${SVCNAME}/my.cnf}" - - if [ ! -r "${MY_CNF}" ] ; then - eerror "Cannot read the configuration file \`${MY_CNF}'" - return 1 - fi - - # tail -n1 is critical as these we only want the last instance of the option - local basedir=$(get_config "${MY_CNF}" basedir | tail -n1) - local datadir=$(get_config "${MY_CNF}" datadir | tail -n1) - local pidfile=$(get_config "${MY_CNF}" pid-file | tail -n1) - local socket=$(get_config "${MY_CNF}" socket | tail -n1) - - if [ ! -d "${datadir}" ] ; then - eerror "MySQL datadir \`${datadir}' is empty or invalid" - eerror "Please check your config file \`${MY_CNF}'" - return 1 - fi - - if [ ! -d "${datadir}"/mysql ] ; then - eerror "You don't appear to have the mysql database installed yet." - eerror "Please run /usr/bin/mysql_install_db to have this done..." - return 1 - fi - - local piddir="${pidfile%/*}" - checkpath -d --owner mysql:mysql --mode 0755 "$piddir" - rc=$? - if [ $rc -ne 0 ]; then - eerror "Directory $piddir for pidfile does not exist and cannot be created" - return 1 - fi - - local startup_timeout=${STARTUP_TIMEOUT:-900} - local startup_early_timeout=${STARTUP_EARLY_TIMEOUT:-1000} - local tmpnice="${NICE:+"--nicelevel "}${NICE}" - local tmpionice="${IONICE:+"--ionice "}${IONICE}" - start-stop-daemon \ - ${DEBUG:+"--verbose"} \ - --start \ - --exec "${basedir}"/sbin/mysqld \ - --pidfile "${pidfile}" \ - --background \ - --wait ${startup_early_timeout} \ - ${tmpnice} \ - ${tmpionice} \ - -- --defaults-file="${MY_CNF}" ${MY_ARGS} - local ret=$? - if [ ${ret} -ne 0 ] ; then - eend ${ret} - return ${ret} - fi - - ewaitfile ${startup_timeout} "${socket}" - eend $? || return 1 - - save_options pidfile "${pidfile}" - save_options basedir "${basedir}" -} - -stop() { - ebegin "Stopping $(mysql_svcname)" - - local pidfile="$(get_options pidfile)" - local basedir="$(get_options basedir)" - local stop_timeout=${STOP_TIMEOUT:-120} - - start-stop-daemon \ - ${DEBUG:+"--verbose"} \ - --stop \ - --exec "${basedir}"/sbin/mysqld \ - --pidfile "${pidfile}" \ - --retry ${stop_timeout} - eend $? -} -# vim: filetype=gentoo-init-d sw=2 ts=2 sts=2 noet: - diff --git a/dev-db/mysql-init-scripts/files/mysql.conf b/dev-db/mysql-init-scripts/files/mysql.conf deleted file mode 100644 index 74cd5f8..0000000 --- a/dev-db/mysql-init-scripts/files/mysql.conf +++ /dev/null @@ -1 +0,0 @@ -d /var/run/mysqld 0755 mysql mysql - diff --git a/dev-db/mysql-init-scripts/files/mysql.conf.d b/dev-db/mysql-init-scripts/files/mysql.conf.d deleted file mode 100644 index 15ff170..0000000 --- a/dev-db/mysql-init-scripts/files/mysql.conf.d +++ /dev/null @@ -1,80 +0,0 @@ -# Here is where we define which server(s) to start. -# Additional parameters to be passed to mysqld at startup may be added here, -# which will override the ones in "my.cnf". -# -# Below are described some suggested parameters to use. -# The parameters not recognized will be passed through to the mysqld daemon -# directly! -# To avoid starting a server just comment it's definition. -# -# Last but not least, SPACES are NOT allowed inside the parameters! -# -# Parameter : description -# ----------------+----------------------------------------------------------- -# nice : integer [-20 .. 19 ] default 0 -# : change the priority of the server -20 (high) to 19 (low) -# : see "man nice 1" for description -# ----------------+----------------------------------------------------------- -# mycnf : string [full path to my.cnf] -# : specify the path to my.cnf file to be used -# ----------------+----------------------------------------------------------- -# startup_timeout : integer [seconds] default 15 -# : time to wait for mysqld up and running, after this it's -# : marked as failed -# ----------------+----------------------------------------------------------- -# -# Additional parameters -# Parameter : description -# ----------------+----------------------------------------------------------- -# server-id : integer [1 .. 255] -# : Uniquely identifies the server instance in the community -# : of replication partners. -# ----------------+----------------------------------------------------------- -# port : integer [1025 .. 65535] default 3306 -# : Port number to use for connection. -# : Looses any meaning if skip-networking is set. -# ----------------+----------------------------------------------------------- -# skip-networking : NULL -# : Don't allow connection through TCP/IP. -# ----------------+----------------------------------------------------------- -# log-bin : string [name of the binlog files] -# : Log update queries in binary format. Optional (but -# : strongly recommended to avoid replication problems if -# : server's hostname changes) argument should be the chosen -# : location for the binary log files. -# ----------------+----------------------------------------------------------- -# Additionally the following variables are recognized: -# -# Be more verbose, accepts values from 1 to 4 -#DEBUG=4 -# -# The default location for the "master" pid file -#MYSQL_GLOB_PID_FILE="/var/run/svc-started-mysqld" -# -# The timeout for a failed attempt to stop a server -#STOPTIMEOUT=120 -# - -# The parameters are passed in a bash array variable, -# the variable name is mysql_slot_0_[server-num] -# "server-num" is an optional number used to start multiple servers -# -# Examples: -# -# start a default server with default options: -#mysql_slot_0=() -# -# start MySQL reniced, overriding some start parameters -#mysql_slot_0=( -# "nice=-5" -# "server-id=123" -# "log-bin="myhost" -# "port=3307" -#) -# -# start another server, different my.cnf -#mysql_slot_0_1=( -# "mycnf=/home/test/my.cnf" -# "server-id=124" -#) -# diff --git a/dev-db/mysql-init-scripts/files/mysql.rc6 b/dev-db/mysql-init-scripts/files/mysql.rc6 deleted file mode 100644 index 141750c..0000000 --- a/dev-db/mysql-init-scripts/files/mysql.rc6 +++ /dev/null @@ -1,358 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2014 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -# external binaries used: which, sed, tac - -# int in_list(char * elem, char * list) -function in_list() { - local elem=${1:-"none"} - local list=${2:-","} - - [[ "${list}" == "${list/,${elem},/}" ]] \ - && return 1 \ - || return 0 -} - -function wdebug() { - if [[ "${DEBUG}" -ge "${1}" ]] ; then - shift - echo "dbg: ${@}" - fi -} - -depend() { - use dns net localmount netmount nfsmount -} - -do_escape() { - # Ihatethisreallyverymuch - #echo "$1" | sed -e "s|'| |" -e "s|=|='|" -e "s|$|'|" - echo "$1" -} - -# int get_slot_config(srv_slot=0, srv_num) -get_slot_config() { - wdebug 4 ">>> get_slot_config()" - - local srv srv_slot srv_num - srv_slot="${1:-"0"}" - srv_num="${2}" - MY_SUFFIX="-${srv_slot}" - # srv=array(0 => [srv_slot], 1 => [srv_num] ) - srv=( ${srv_slot} ${srv_num} ) - - local tmp_eval="mysql_slot_${srv_slot}${srv_num:+"_"}${srv_num}[@]" - local conf_d_parameters="${!tmp_eval}" - if [[ "${srv_slot}" == "0" ]] ; then - MY_SUFFIX='' - # try some other default for the default server - [[ -z "${conf_d_parameters[@]}" ]] && conf_d_parameters=${mysql_slot[@]} - fi - [[ -z "${conf_d_parameters[@]}" ]] && conf_d_parameters=( ) - basedir="" datadir="" pidfile="" socket="" - CHROOT="" NICE="" STARTUPTIMEOUT=5 STOPTIMEOUT=120 - - wdebug 3 "srv ${srv[@]}" - wdebug 3 "srv_slot ${srv_slot}" - wdebug 3 "srv_num ${srv_num}" - wdebug 3 "tmp_eval ${tmp_eval}" - wdebug 3 "conf_d_parameters ${conf_d_parameters[@]}" - wdebug 3 "MY_SUFFIX ${MY_SUFFIX}" - - local tmp_eval="mysql_slot_${srv_slot}${srv_num:+"_"}${srv_num}[@]" - local conf_d_parameters="${!tmp_eval}" - # collations need to be defined *after* the character sets, - # so we will duplicate them - local collations="" - [[ ${conf_d_parameters[*]} == '()' ]] && conf_d_parameters='' - - MY_CNF="/etc/mysql${MY_SUFFIX}/my.cnf" - # summa of unmanaged parameters - # some parameters may be present multiple times - unmanagedparams="" - - # grab the parameters from conf.d/mysql definition - for my_default in ${conf_d_parameters[*]} ; do - case "${my_default}" in - nice=*) - NICE="${my_default#nice=}" - nice -n $NICE ls /tmp &>/dev/null || NICE="" - ;; - mycnf=*) MY_CNF="${my_default#mycnf=}" ;; - startup_timeout=*) - STARTUPTIMEOUT="${my_default#startup_timeout=}" ;; - basedir=*) basedir="${my_default#basedir=}" ;; - datadir=*) datadir="${my_default#datadir=}" ;; - pid-file=*) pidfile="${my_default#pid-file=}" ;; - socket=*) socket="${my_default#socket=}" ;; - *collation*=) - collations="${collations} --$( do_escape "${my_default}" )" - ;; - *=*) - # list of parameters we already have - # prepend "--" because my_print_defaults do it - unmanagedparams="${unmanagedparams} --$( do_escape "${my_default}" )" - ;; - *) - unmanagedparams="${unmanagedparams} --${my_default}" - ;; - esac - done - - if [[ ! -r "${MY_CNF}" ]] ; then - ewarn "Cannot access ${MY_CNF} !" - MY_CNF="" - my_defaults="" - else - local my_print_defaults="$(which my_print_defaults${MY_SUFFIX} 2>/dev/null)" - if [[ ! -x "${my_print_defaults}" ]] ; then - eerror "my_print_defaults NOT found or not executable" - my_defaults="" - else - my_defaults=$( ${my_print_defaults} \ - --loose-verbose \ - --config-file="${MY_CNF}" \ - mysqld server ) - fi - fi - - # grab needed parameters from my.cnf, don't override the ones from - # conf.d/mysql - for my_default in ${my_defaults} ; do - case "${my_default}" in - --basedir=*) - [[ -z "${basedir}" ]] && basedir="${my_default#--basedir=}" ;; - --datadir=*) - [[ -z "${datadir}" ]] && datadir="${my_default#--datadir=}" ;; - --pid-file=*) - [[ -z "${pidfile}" ]] && pidfile="${my_default#--pid-file=}" ;; - --socket=*) - [[ -z "${socket}" ]] && socket="${my_default#--socket=}" ;; - --*collation*=) - # the order is inversed because we want the conf.d ones overriden - collations="$( do_escape "${my_default}" ) ${collations}" - ;; - esac - done - - # some parameters - basedir="${basedir:-"/usr"}" - datadir="${datadir:-"/var/lib/mysql${MY_SUFFIX}"}" - pidfile="${pidfile:-"/var/run/mysqld/mysqld${MY_SUFFIX}.pid"}" - socket="${socket:-"/var/run/mysqld/mysqld${MY_SUFFIX}.sock"}" - unmanagedparams="${unmanagedparams} ${collations}" - - wdebug 3 "chroot dir => ${CHROOT}" - wdebug 3 "niceness => ${NICE}" - wdebug 3 "basedir => ${basedir}" - wdebug 3 "datadir => ${datadir}" - wdebug 3 "pidfile => ${pidfile}" - wdebug 3 "socket => ${socket}" - wdebug 3 "Unamanged => ${unmanagedparams}" - - # extension for sleep tenth of seconds, not very portable so check it before - if sleep 0.01 ; then - STARTUPTIMEOUT=$(( STARTUPTIMEOUT * 10 )) - STOPTIMEOUT=$(( STOPTIMEOUT * 10 )) - TIMEUNIT=0.1 - else - TIMEUNIT=1 - fi - - # push these out to the script - export MY_SUFFIX NICE MY_CNF pidfile datadir basedir socket CHROOT - export unmanagedparams STARTUPTIMEOUT STOPTIMEOUT TIMEUNIT - wdebug 4 "<<< get_slot_config() ok" - return 0 -} - -checkconfig() { - wdebug 4 ">>> checkconfig(\"${1}\")" - local datadir="${1}" pidfile="${2}" socket="${3}" - - if [[ -n "${NOCHECK}" ]] ; then - rm -f "${pidfile}" "${socket}" - return 0 - fi - - if [[ ! -d "${datadir}" ]] ; then - eerror "MySQL datadir is empty or invalid" - eerror "Please check your my.cnf : ${MY_CNF}" - wdebug 4 "<<< checkconfig() KO" - return 1 - fi - - if [[ ! -d "${datadir}/mysql" ]] ; then - eerror "You don't appear to have the mysql database installed yet." - eerror "Please run /usr/bin/mysql_install_db to have this done..." - wdebug 4 "<<< checkconfig() KO" - return 1 - fi - - if [[ -f "${pidfile}" ]] ; then - kill -15 $(< ${pidfile}) 2>/dev/null - if [[ $? -eq 0 ]] ; then - # the process exist, we have a problem - eerror "\"${pidfile}\" is still present and the process is running." - eerror "Please stop it \"kill $(< ${pidfile})\" maybe ?" - wdebug 4 "<<< checkconfig() KO" - return 1 - else - rm -f "${pidfile}" - fi - fi - - if [[ -S "${socket}" ]] ; then - ewarn "Strange, the socket file already exist in \"${socket}\"" - ewarn "it will be removed now and re-created by the MySQL server" - ewarn "BUT please make your checks." - rm -f "${socket}" - fi - - wdebug 4 "<<< checkconfig() ok" - return 0 -} - -start() { - wdebug 4 ">>> start()" - - MYSQL_GLOB_PID_FILE=${MYSQL_GLOB_PID_FILE:-"/var/run/svc-started-${SVCNAME/mysql/mysqld}"} - # servers are defined in /etc/conf.d/mysql - local serverlist=${!mysql_slot_*} - # provide default for empty conf.d/mysql - if [[ -z "${serverlist}" ]] ; then - serverlist=0 - export mysql_slot_0=( ) - fi - local retstatus timeout - local globretstatus=1 - local srv_slot srv_num - # server MUST NOT share same location for these - local pidfilelist=',' datadirlist=',' socketlist=',' - local ssd_thing=1 - local mysqld_thing tmpnice - - ebegin "Starting ${myservice}" - # try to start each server - for srv in ${serverlist[*]} ; do - - srv_slot="${srv#mysql_slot_}" - if [[ "${srv_slot}" == "${srv_slot#*_}" ]] ; then - srv_num='' - else - srv_num="${srv_slot#*_}" - fi - srv_slot="${srv_slot%%_*}" - - retstatus=0 - get_slot_config "${srv_slot}" "${srv_num}" || retstatus=1 - - # checks - if ! checkconfig "${datadir}" "${pidfile}" "${socket}" ; then - retstatus=2 ; continue - fi - if in_list "${pidfile}" "${pidfilelist}" ; then - eerror "Sorry, won't start with same pid-file: ${pidfile}" - retstatus=3 ; continue - fi - if in_list "${datadir}" "${datadirlist}" ; then - eerror "Sorry, won't start with same datadir: ${datadir}" - retstatus=4 ; continue - fi - if in_list "${socket}" "${socketlist}" ; then - eerror "Sorry, won't start with same socket: ${socket}" - retstatus=5 ; continue - fi - - einfo "Starting ${myservice} (${MY_CNF})" - - mysqld_thing="${MY_CNF:+"--defaults-file="}${MY_CNF}" - mysqld_thing="${mysqld_thing} ${unmanagedparams}" - mysqld_thing="${mysqld_thing} --basedir=${basedir}" - mysqld_thing="${mysqld_thing} --datadir=${datadir}" - mysqld_thing="${mysqld_thing} --pid-file=${pidfile}" - mysqld_thing="${mysqld_thing} --socket=${socket}" - - wdebug 2 "starting mysqld with: ${mysqld_thing}" - - if [[ ${ssd_thing} -eq 1 ]] ; then - tmpnice="${NICE:+"--nicelevel "}${NICE}" - start-stop-daemon --quiet ${DEBUG/*/"--verbose"} --start \ - --background ${tmpnice} --pidfile ${pidfile} \ - --exec ${basedir}/sbin/mysqld${MY_SUFFIX} -- ${mysqld_thing} \ - && sleep ${TIMEUNIT} - retstatus=$? - else - tmpnice="${NICE:+"nice -n "}${NICE}" - ${tmpnice} ${basedir}/sbin/mysqld${MY_SUFFIX} ${mysqld_thing} & - retstatus=0 - fi - - # only the first run is done by start-stop-daemon - ssd_thing="" - - # wait for socket creation - wdebug 1 - while ! [[ -S "${socket}" || "${STARTUPTIMEOUT}" -lt 1 || "${retstatus}" -ne 0 ]] ; do - STARTUPTIMEOUT=$(( STARTUPTIMEOUT - 1 )) - [[ ${DEBUG} -ge 1 ]] && echo -n "${STARTUPTIMEOUT}," - sleep ${TIMEUNIT} - done - wdebug 1 "" - if [[ ! -S "${socket}" ]] ; then - eerror "MySQL${MY_SUFFIX} NOT started (${retstatus})" - retstatus=1 - else - globretstatus=0 - pidfilelist="${pidfilelist}${pidfile}," - datadirlist="${datadirlist}${datadir}," - socketlist="${socketlist}${socket}," - echo "${srv_slot}${srv_num:+"_"}${srv_num}=${pidfile}" >> "${MYSQL_GLOB_PID_FILE}" - fi - done - # successfull if at least one mysqld started - wdebug 4 "<<< start()" - eend $globretstatus -} - -stop() { - get_slot_config &> /dev/null - MYSQL_GLOB_PID_FILE=${MYSQL_GLOB_PID_FILE:-"/var/run/svc-started-${SVCNAME/mysql/mysqld}"} - local runwhat pidfile shutdown_elem - local PID cnt timeout=${STOPTIMEOUT:-"120"} - local retstatus=0 - local shutdown_list="$(< "${MYSQL_GLOB_PID_FILE}" )" - - ebegin "Stopping ${myservice}" - wdebug 5 "MYSQL_GLOB_PID_FILE: ${MYSQL_GLOB_PID_FILE}" - wdebug 5 "shutdown_list: ${shutdown_list}" - for shutdown_elem in ${shutdown_list} ; do - runwhat=${shutdown_elem%%=*} - pidfile=${shutdown_elem#*=} - timeout=${STOPTIMEOUT:-"120"} - PID=$(< "${pidfile}" ) - wdebug 3 "runwhat ${runwhat}" - wdebug 3 "pidfile ${pidfile}" - wdebug 3 "timeout ${timeout}" - wdebug 3 "PID ${PID}" - - einfo "Stopping mysqld (${runwhat})" - - start-stop-daemon --quiet ${DEBUG/*/"--verbose"} --stop --pidfile "${pidfile}" & - wdebug 1 "" - while [[ -n "$PID" ]] \ - && $( ps -Ao pid | grep -q "^ *$PID$" ) \ - && [[ "${timeout}" -ge 1 ]] - do - timeout=$(($timeout - 1)) - [[ ${DEBUG} -ge 1 ]] && echo -n "$(( $STOPTIMEOUT - $timeout ))," - sleep ${TIMEUNIT} - done - [[ "${timeout}" -lt 1 ]] && retstatus=1 - done - sleep ${TIMEUNIT} - [[ "$retstatus" -eq 0 ]] && rm -f "$MYSQL_GLOB_PID_FILE" - eend ${retstatus} -} diff --git a/dev-db/mysql-init-scripts/files/mysqld-wait-ready b/dev-db/mysql-init-scripts/files/mysqld-wait-ready deleted file mode 100644 index 9e5d3e4..0000000 --- a/dev-db/mysql-init-scripts/files/mysqld-wait-ready +++ /dev/null @@ -1,56 +0,0 @@ -#!/bin/sh - -# This script waits for mysqld to be ready to accept connections -# (which can be many seconds or even minutes after launch, if there's -# a lot of crash-recovery work to do). -# Running this as ExecStartPost is useful so that services declared as -# "After mysqld" won't be started until the database is really ready. - -# Service file passes us the daemon's PID (actually, mysqld_safe's PID) -daemon_pid="$1" - -# extract value of a MySQL option from config files -# Usage: get_mysql_option SECTION VARNAME DEFAULT -# result is returned in $result -# We use my_print_defaults which prints all options from multiple files, -# with the more specific ones later; hence take the last match. -get_mysql_option(){ - result=`/usr/bin/my_print_defaults "$1" | sed -n "s/^--$2=//p" | tail -n 1` - if [ -z "$result" ]; then - # not found, use default - result="$3" - fi -} - -# Defaults here had better match what mysqld_safe will default to -get_mysql_option mysqld datadir "/var/lib/mysql" -datadir="$result" -get_mysql_option mysqld socket "/var/lib/mysql/mysql.sock" -socketfile="$result" - -# Wait for the server to come up or for the mysqld process to disappear -ret=0 -while /bin/true; do - RESPONSE=`/usr/bin/mysqladmin --no-defaults --socket="$socketfile" --user=UNKNOWN_MYSQL_USER ping 2>&1` - mret=$? - if [ $mret -eq 0 ]; then - break - fi - # exit codes 1, 11 (EXIT_CANNOT_CONNECT_TO_SERVICE) are expected, - # anything else suggests a configuration error - if [ $mret -ne 1 -a $mret -ne 11 ]; then - ret=1 - break - fi - # "Access denied" also means the server is alive - echo "$RESPONSE" | grep -q "Access denied for user" && break - - # Check process still exists - if ! /bin/kill -0 $daemon_pid 2>/dev/null; then - ret=1 - break - fi - sleep 1 -done - -exit $ret diff --git a/dev-db/mysql-init-scripts/files/mysqld.service b/dev-db/mysql-init-scripts/files/mysqld.service deleted file mode 100644 index de9ea2f..0000000 --- a/dev-db/mysql-init-scripts/files/mysqld.service +++ /dev/null @@ -1,26 +0,0 @@ -[Unit] -Description=MySQL database server -After=syslog.target -After=network.target - -[Service] -Type=simple -User=mysql -Group=mysql - -# Note: we set --basedir to prevent probes that might trigger SELinux alarms, -# https://bugzilla.redhat.com/show_bug.cgi?id=547485 -ExecStart=/usr/bin/mysqld_safe --basedir=/usr -ExecStartPost=/usr/libexec/mysqld-wait-ready $MAINPID - -# Give a reasonable amount of time for the server to start up/shut down -TimeoutSec=300 - -# We rely on systemd, not mysqld_safe, to restart mysqld if it dies -Restart=always - -# Place temp files in a secure directory, not /tmp -PrivateTmp=true - -[Install] -WantedBy=multi-user.target diff --git a/dev-db/mysql-init-scripts/files/mysqld_at.service b/dev-db/mysql-init-scripts/files/mysqld_at.service deleted file mode 100644 index f46cf9e..0000000 --- a/dev-db/mysql-init-scripts/files/mysqld_at.service +++ /dev/null @@ -1,26 +0,0 @@ -[Unit] -Description=MySQL database server -ConditionPathExists=/etc/mysql/my%I.cnf -After=network.target - -[Service] -Type=simple -User=mysql -Group=mysql - -# Note: we set --basedir to prevent probes that might trigger SELinux alarms, -# https://bugzilla.redhat.com/show_bug.cgi?id=547485 -ExecStart=/usr/bin/mysqld_safe --defaults-file=/etc/mysql/my%I.cnf --basedir=/usr -ExecStartPost=/usr/libexec/mysqld-wait-ready $MAINPID - -# Give a reasonable amount of time for the server to start up/shut down -TimeoutSec=300 - -# We rely on systemd, not mysqld_safe, to restart mysqld if it dies -Restart=always - -# Place temp files in a secure directory, not /tmp -PrivateTmp=true - -[Install] -WantedBy=multi-user.target diff --git a/dev-db/mysql-init-scripts/files/mysqlmanager.conf.d b/dev-db/mysql-init-scripts/files/mysqlmanager.conf.d deleted file mode 100644 index 8666f71..0000000 --- a/dev-db/mysql-init-scripts/files/mysqlmanager.conf.d +++ /dev/null @@ -1,28 +0,0 @@ -# Here is where we define which server(s) to start. -# Additional parameters to be passed to mysqlmanager at startup may be added here, -# which will override the ones in "my.cnf". -# -# To avoid starting a server just comment it's definition -# here or it will rant (no default start). -# Last but not least, spaces are NOT allowed inside the parameters! -# -# Below are described some suggested parameters to use. -# The parameters not recognized will be passed through to the mysqlmanager directly. -# -# Parameter : description - -# ----------------+----------------------------------------------------------- -# mycnf : string [full path to my.cnf] -# : specify the path to my.cnf file to be used -# : may contain a [manager] section -# ----------------+----------------------------------------------------------- -# -# Basic default -# -#mysqlmanager_slot_0=() -# -# Start MySQL 5.0.X overriding the my.cnf path -#mysqlmanager_slot_500=( -# "mycnf=/home/test/my.cnf" -#) -# diff --git a/dev-db/mysql-init-scripts/files/mysqlmanager.rc6 b/dev-db/mysql-init-scripts/files/mysqlmanager.rc6 deleted file mode 100644 index 4462a8a..0000000 --- a/dev-db/mysql-init-scripts/files/mysqlmanager.rc6 +++ /dev/null @@ -1,230 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2014 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -# external binaries used: which, sed, tac - -depend() { - use dns net localmount netmount nfsmount - #provide mysql -} - -# int in_list(char * elem, char * list) -function in_list() { - local elem=${1:-"none"} - local list=${2:-","} - - [[ "${list}" == "${list/,${elem},/}" ]] \ - && return 1 \ - || return 0 -} - -do_escape() { - # Ihatethisreallyverymuch - #echo "$1" | sed -e "s|'| |" -e "s|=|='|" -e "s|$|'|" - echo "$1" -} - -# int get_slot_config(srv_slot=0, srv_num) -get_slot_config() { - [[ ${DEBUG} -ge 4 ]] && einfo ">>> get_slot_config(\"${1}\", \"${2}\")" - - srv_slot="${1:-"0"}" - srv_num="${2}" - MY_SUFFIX="-${srv_slot}" - [[ "${MY_SUFFIX}" == '-0' ]] && MY_SUFFIX='' - - basedir="" pidfile="" socket="" - - local tmp_eval="mysqlmanager_slot_${srv_slot}${srv_num:+"_"}${srv_num}[@]" - local conf_d_parameters="${!tmp_eval}" - [[ ${conf_d_parameters[*]} == '()' ]] && conf_d_parameters='' - - MY_CNF="/etc/mysql${MY_SUFFIX}/my.cnf" - # summa of unmanaged parameters - # some parameters may be present multiple times - unmanagedparams="" - - # grab the parameters from conf.d/mysql definition - for my_default in ${conf_d_parameters[*]} ; do - case "${my_default}" in - mycnf=*) MY_CNF="${my_default#mycnf=}" ;; - basedir=*) basedir="${my_default#basedir=}" ;; - pid-file=*) pidfile="${my_default#pid-file=}" ;; - socket=*) socket="${my_default#socket=}" ;; - *=*) - # list of parameters we already have - # prepend "--" because my_print_defaults do it - unmanagedparams="${unmanagedparams} --$( do_escape "${my_default}" )" - ;; - *) - unmanagedparams="${unmanagedparams} --${my_default}" - ;; - esac - done - - if [[ ! -r "${MY_CNF}" ]] ; then - ewarn "Cannot access ${MY_CNF} !" - MY_CNF="" - my_defaults="" - else - local my_print_defaults="$(which my_print_defaults${MY_SUFFIX} 2>/dev/null)" - if [[ ! -x "${my_print_defaults}" ]] ; then - eerror "my_print_defaults NOT found or not executable" - my_defaults="" - else - my_defaults=$( ${my_print_defaults} \ - --loose-verbose \ - --config-file="${MY_CNF}" \ - manager ) - fi - fi - - # grab needed parameters from my.cnf, don't override the ones from - # conf.d/mysql - for my_default in ${my_defaults} ; do - case "${my_default}" in - --pid-file=*) - [[ -z "${pidfile}" ]] && pidfile="${my_default#--pid-file=}" ;; - --socket=*) - [[ -z "${socket}" ]] && socket="${my_default#--socket=}" ;; - esac - done - - # still empty, I'm in doubt if assign a default or break, will see - basedir="${basedir:-"/usr"}" - pidfile="${pidfile:-"/var/run/mysqld/mysqlmanager${MY_SUFFIX}.pid"}" - socket="${socket:-"/var/run/mysqld/mysqlmanager${MY_SUFFIX}.sock"}" - - if [[ ${DEBUG} -ge 3 ]] ; then - einfo "basedir => ${basedir}" - einfo "pidfile => ${pidfile}" - einfo "socket => ${socket}" - einfo "Unamanged => ${unmanagedparams}" - fi - - # push these out to the script - export MY_SUFFIX MY_CNF pidfile basedir socket - export unmanagedparams - [[ ${DEBUG} -ge 4 ]] && einfo "<<< get_slot_config() ok" - return 0 -} - -start() { - [[ ${DEBUG} -ge 4 ]] && einfo ">>> start()" - MYSQL_GLOB_PID_FILE=${MYSQL_GLOB_PID_FILE:-"/var/run/svc-started-${SVCNAME}"} - # servers are defined in /etc/conf.d/mysql - local serverlist=${!mysqlmanager_slot_*} - # provide default for empty conf.d/mysql - if [[ -z "${serverlist}" ]] ; then - serverlist=0 - export mysqlmanager_slot_0=() - fi - local retstatus timeout - local globretstatus=1 - local srv_slot srv_num - # server MUST NOT share same location for these - local pidfilelist=',' socketlist=',' - - # additional security - rm -f "${MYSQL_GLOB_PID_FILE}" ; touch "${MYSQL_GLOB_PID_FILE}" - if [[ $? -ne 0 ]] ; then - eerror "cannot create MYSQL_GLOB_PID_FILE: ${MYSQL_GLOB_PID_FILE}" - [[ ${DEBUG} -ge 4 ]] && einfo "<<< start() KO" - return 1 - fi - - ebegin - # try to start each server - for srv in ${serverlist[*]} ; do - einfo "working on ${srv}" - - srv_slot="${srv#mysqlmanager_slot_}" - if [[ "${srv_slot}" == "${srv_slot#*_}" ]] ; then - srv_num='' - else - srv_num="${srv_slot#*_}" - fi - srv_slot="${srv_slot%%_*}" - - retstatus=0 - get_slot_config "${srv_slot}" "${srv_num}" || retstatus=1 - - # timeout (seconds) before declaring the startup failed - - # pre_run checks - if [[ "$retstatus" -eq 0 ]] ; then - if in_list "${pidfile}" "${pidfilelist}" ; then - retstatus=3 - eerror "Sorry, won't start with same pid-file: ${pidfile}" - fi - if in_list "${socket}" "${socketlist}" ; then - retstatus=5 - eerror "Sorry, won't start with same socket: ${socket}" - fi - fi - - if [[ $retstatus -eq 0 ]] ; then - # additional security - rm -f ${pidfile} ${socket} - einfo "Starting mysqlmanager${MY_SUFFIX:+"_"}${srv_slot}${srv_num:+"_"}${srv_num} (${MY_CNF})" - - [[ ${DEBUG} -ge 2 ]] && echo "starting mysqlmanager with: "${basedir}/sbin/mysqlmanager${MY_SUFFIX} ${unmanagedparams} --pid-file=${pidfile} --socket=${socket} - - start-stop-daemon --quiet --start --background \ - --pidfile "${pidfile}" \ - --exec ${basedir}/sbin/mysqlmanager${MY_SUFFIX} \ - -- \ - ${MY_CNF:+"--defaults-file="}${MY_CNF} \ - ${unmanagedparams} \ - --pid-file=${pidfile} \ - --socket=${socket} - - retstatus=$? - - if [[ "${retstatus}" -eq 0 ]] ; then - pidfilelist="${pidfilelist}${pidfile}," - socketlist="${socketlist}${socket}," - globretstatus=0 - echo "${srv_slot}${srv_num:+"_"}${srv_num}=${pidfile}" >> "${MYSQL_GLOB_PID_FILE}" - fi - fi - done - # successfull if at least one mysqlmanager started - [[ ${DEBUG} -ge 4 ]] && einfo "<<< start()" - eend $globretstatus -} - -stop () { - MYSQL_GLOB_PID_FILE=${MYSQL_GLOB_PID_FILE:-"/var/run/svc-started-${SVCNAME}"} - local runwhat pidfile shutdown_elem - local PID cnt timeout - local retstatus=0 - local shutdown_list="$(< "${MYSQL_GLOB_PID_FILE}" )" - - # shutdown in reverse order - ebegin - for shutdown_elem in $shutdown_list; do - runwhat=${shutdown_elem%%=*} - pidfile=${shutdown_elem#*=} - timeout=${STOPTIMEOUT:-"10"} - - einfo "Stopping mysqlmanager (${runwhat})" - - PID=$(cat "${pidfile}" 2>/dev/null) - start-stop-daemon --stop --quiet --pidfile="${pidfile}" - [[ ${DEBUG} -ge 1 ]] && echo "" - while [[ -n "$PID" && $( kill -0 $PID 2>/dev/null ) && "${timeout}" -ge 1 ]] ; do - timeout=$(($timeout - 1)) - [[ ${DEBUG} -ge 1 ]] && echo -n $(( $STOPTIMEOUT - $timeout )) - sleep 1 - done - if [[ "${timeout}" -lt 1 ]] ; then - retstatus=$(( $retstatus + 1 )) - fi - done - - [[ "$retstatus" -eq 0 ]] && rm -f "$MYSQL_GLOB_PID_FILE" - eend $retstatus -} diff --git a/dev-db/mysql-init-scripts/files/run-s6 b/dev-db/mysql-init-scripts/files/run-s6 deleted file mode 100644 index e493a7b..0000000 --- a/dev-db/mysql-init-scripts/files/run-s6 +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -if [ -e ./env ] ; then source ./env ; else echo "failed to source env" ; fi -exec "${basedir}/sbin/mysqld" --defaults-file="${MY_CNF}" ${MY_ARGS} 2>&1 diff --git a/dev-db/mysql-init-scripts/metadata.xml b/dev-db/mysql-init-scripts/metadata.xml deleted file mode 100644 index 357d7d0..0000000 --- a/dev-db/mysql-init-scripts/metadata.xml +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> -<pkgmetadata> - <maintainer type="project"> - <email>mysql-bugs@gentoo.org</email> - <name>MySQL</name> - </maintainer> -</pkgmetadata> diff --git a/dev-db/mysql-init-scripts/mysql-init-scripts-1.2.ebuild b/dev-db/mysql-init-scripts/mysql-init-scripts-1.2.ebuild deleted file mode 100644 index 16d06a4..0000000 --- a/dev-db/mysql-init-scripts/mysql-init-scripts-1.2.ebuild +++ /dev/null @@ -1,25 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -DESCRIPTION="Gentoo MySQL init scripts." -HOMEPAGE="https://www.gentoo.org/" -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd" -IUSE="" - -DEPEND="" -RDEPEND="" - -src_install() { - newconfd "${FILESDIR}/mysql.conf.d" "mysql" - newconfd "${FILESDIR}/mysqlmanager.conf.d" "mysqlmanager" - - newinitd "${FILESDIR}/mysql.rc6" "mysql" - newinitd "${FILESDIR}/mysqlmanager.rc6" "mysqlmanager" - - insinto /etc/logrotate.d - newins "${FILESDIR}/logrotate.mysql" "mysql" -} diff --git a/dev-db/mysql-init-scripts/mysql-init-scripts-2.0.ebuild b/dev-db/mysql-init-scripts/mysql-init-scripts-2.0.ebuild deleted file mode 100644 index b00c4a2..0000000 --- a/dev-db/mysql-init-scripts/mysql-init-scripts-2.0.ebuild +++ /dev/null @@ -1,67 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 - -inherit systemd - -DESCRIPTION="Gentoo MySQL init scripts." -HOMEPAGE="https://www.gentoo.org/" -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd" -IUSE="" - -DEPEND="" -# This _will_ break with MySQL 5.0, 4.x, 3.x -# It also NEEDS openrc for the save_options/get_options builtins. -RDEPEND="!<dev-db/mysql-5.1" -# Need to set S due to PMS saying we need it existing, but no SRC_URI -S=${WORKDIR} - -src_install() { - newconfd "${FILESDIR}/conf.d-${PV}" "mysql" - newinitd "${FILESDIR}/init.d-${PV}" "mysql" - - # systemd unit installation - exeinto /usr/libexec - doexe "${FILESDIR}"/mysqld-wait-ready - systemd_dounit "${FILESDIR}/mysqld.service" - systemd_newunit "${FILESDIR}/mysqld_at.service" "mysqld@.service" - systemd_dotmpfilesd "${FILESDIR}/mysql.conf" - - insinto /etc/logrotate.d - newins "${FILESDIR}/logrotate.mysql" "mysql" -} - -pkg_postinst() { - grep -sq mysql_slot "${ROOT}"/etc/conf.d/mysql - old_conf_present=$? - grep -sq get_slot_config "${ROOT}"/etc/init.d/mysql - old_init_present=$? - - egrep -sq 'MY_CNF|MY_ARGS|(STARTUP|STOP)_TIMEOUT' "${ROOT}"/etc/conf.d/mysql - new_conf_present=$? - egrep -sq 'MY_ARGS|STOP_TIMEOUT' "${ROOT}"/etc/init.d/mysql - new_init_present=$? - - einfo "Please note that if you are using multiple internal 'slots' in the" - einfo "old conf.d file, you should use multiple init files now." - echo old $old_conf_present $old_init_present - echo new $new_conf_present $new_init_present - - # new scripts present - if [ $new_conf_present -eq 0 -a $new_init_present -eq 0 -a \ - $old_conf_present -eq 1 -a $old_init_present -eq 1 ]; then - : - elif [ $old_conf_present -eq 0 -a $old_init_present -eq 0 -a \ - $new_conf_present -eq 1 -a $new_init_present -eq 1 ]; then - ewarn "Old /etc/init.d/mysql and /etc/conf.d/mysql still present!" - ewarn "Update both of those files to the new versions!" - else - eerror "DANGER, mixed update of /etc/init.d/mysql and /etc/conf.d/mysql" - eerror "detected! You must update BOTH to the new versions" - fi -} diff --git a/dev-db/mysql-init-scripts/mysql-init-scripts-2.0_pre1.ebuild b/dev-db/mysql-init-scripts/mysql-init-scripts-2.0_pre1.ebuild deleted file mode 100644 index 6cb7d8f..0000000 --- a/dev-db/mysql-init-scripts/mysql-init-scripts-2.0_pre1.ebuild +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -DESCRIPTION="Gentoo MySQL init scripts." -HOMEPAGE="https://www.gentoo.org/" -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd" -IUSE="" - -DEPEND="" -# This _will_ break with MySQL 5.0, 4.x, 3.x -# It also NEEDS openrc. -RDEPEND="!<dev-db/mysql-5.1 sys-apps/openrc" - -src_install() { - newconfd "${FILESDIR}/mysql-5.1.53-conf.d" "mysql" - newinitd "${FILESDIR}/mysql-5.1.53-init.d" "mysql" - - insinto /etc/logrotate.d - newins "${FILESDIR}/logrotate.mysql" "mysql" -} diff --git a/dev-db/mysql-init-scripts/mysql-init-scripts-2.1_alpha4.ebuild b/dev-db/mysql-init-scripts/mysql-init-scripts-2.1_alpha4.ebuild deleted file mode 100644 index e2761b1..0000000 --- a/dev-db/mysql-init-scripts/mysql-init-scripts-2.1_alpha4.ebuild +++ /dev/null @@ -1,57 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 - -inherit systemd s6 - -DESCRIPTION="Gentoo MySQL init scripts." -HOMEPAGE="https://www.gentoo.org/" -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd" -IUSE="" - -DEPEND="" -# This _will_ break with MySQL 5.0, 4.x, 3.x -# It also NEEDS openrc for the save_options/get_options builtins. -# The s6 support was added after openrc 0.16.2 -RDEPEND=" - !<dev-db/mysql-5.1 - !<sys-apps/openrc-0.16.2 - " -# Need to set S due to PMS saying we need it existing, but no SRC_URI -S=${WORKDIR} - -src_install() { - newconfd "${FILESDIR}/conf.d-2.0" "mysql" - - # s6 init scripts - if use amd64 || use x86 ; then - newconfd "${FILESDIR}/conf.d-2.0" "mysql-s6" - newinitd "${FILESDIR}/init.d-s6" "mysql-s6" - s6_install_service mysql "${FILESDIR}/run-s6" - s6_install_service mysql/log "${FILESDIR}/log-s6" - fi - - newinitd "${FILESDIR}/init.d-2.0" "mysql" - - # systemd unit installation - exeinto /usr/libexec - doexe "${FILESDIR}"/mysqld-wait-ready - systemd_dounit "${FILESDIR}/mysqld.service" - systemd_newunit "${FILESDIR}/mysqld_at.service" "mysqld@.service" - systemd_dotmpfilesd "${FILESDIR}/mysql.conf" - - insinto /etc/logrotate.d - newins "${FILESDIR}/logrotate.mysql" "mysql" -} - -pkg_postinst() { - if use amd64 || use x86 ; then - elog "To use the mysql-s6 script, you need to install the optional sys-apps/s6 package." - elog "If you wish to use s6 logging support, comment out the log-error setting in your my.cnf" - fi -} diff --git a/dev-db/mysql-utilities/ChangeLog b/dev-db/mysql-utilities/ChangeLog deleted file mode 100644 index 7b097de..0000000 --- a/dev-db/mysql-utilities/ChangeLog +++ /dev/null @@ -1,11 +0,0 @@ -*mysql-utilities-1.5.6 (24 Feb 2016) - - 24 Feb 2016; Brian Evans <grknight@gentoo.org> +mysql-utilities-1.5.6.ebuild, - mysql-utilities-1.5.4.ebuild: - dev-db/mysql-utilities: Version bump with new EAPI - -*mysql-utilities-1.5.4 (01 Apr 2015) - - 01 Apr 2015; Brian Evans <grknight@gentoo.org> +metadata.xml, - +mysql-utilities-1.5.4.ebuild: - Initial commit of mysql-utilities to test modifications diff --git a/dev-db/mysql-utilities/Manifest b/dev-db/mysql-utilities/Manifest deleted file mode 100644 index de93ea8..0000000 --- a/dev-db/mysql-utilities/Manifest +++ /dev/null @@ -1,24 +0,0 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA256 - -DIST mysql-utilities-1.5.4.tar.gz 760812 SHA256 4e50251c3f08920112420f209418accf55a376df4dac619f3054a25f97bbbf41 SHA512 c8069cd7e3fe77a7c1ddc85e2438665ab6b3da0add7384d36e317f04b9fe973d16495f474d8ab66ceb185cf73eb396351c7fcb934fba9bd0297ac58727437482 WHIRLPOOL 69729753b83305e13ef91cac45d56ced1b25cef9d0d1d6342242bfd566f135546dc303ef3addb6138963472dcbf1ae49c629aca43d13a4226c837153b32dde9b -DIST mysql-utilities-1.5.6.tar.gz 781556 SHA256 578a993b5d878b7df30cf81ec0be1b9551322ed7e42fcdc3d08ab2b12dfdf2d2 SHA512 e079f769b598351d60bd1dc8d6422e31d9d4b7c1f381532ea0ed8d3beeea3c7027a716da6c2da96032636b2b19caaeaa5d55a128616ec1462039b9c890a4b636 WHIRLPOOL 6c0fd3772bde01684f738f2e92d61765c720789a3dee30d721b3d3f4d98d71579981646cec0e250f64f9b365f3ebe2fdab86e1941530d89760b946f935699f59 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v2.1 - -iQJ8BAEBCABmBQJWzgc4XxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w -ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ2NkMyRTQ0RUQ5MEUzMjc1OEU3RDU1QzBE -MUY3ODFFRkY5RjRBM0I2AAoJENH3ge/59KO26j8P/jb5iKy01fyBXzh6I5bCF72V -3NHdnU9DCPjIHsHVrISJrfH/Sxg7Sm36/jwIeMm9X1dGxNi/oBA46mgE1VRUleY5 -YB0qKeRXydcOFKyf44h1KxO3bjhYiEqpiMHs5GMaqku+budvBAhsyJn61f5XDvv2 -X8kooGefCfohpfHV25seD3kRVuJNCK2ZARzRNDuHSkVuZRQ1XrIIlyQLmDSFNGcQ -LIdOOTUVRKoC9uF0Pl/6jW3ByOx9/9C9jyDo3OCM98aXkWcYUnmVKYS5zF7Zx8GM -ekPRSD8BLvaAVIQ+zypn+OQ747o2o6lG2bMZPJnL2DD3I2gy0JwvNGV0jaGXcTUc -f0ZUxdmXVMwsk9hw8t/JKrTvc884RMNiGxdYivOK4Lb5WH+IZWh6nbjExXF/TItF -6SBQ2indb9pCvUlE8LXjDyPiF7TXrsLfOhuMpxBZXt8FxRQusKE8xrlZHjdRmQRe -FXnlEX4xvYTeBRFEWpQBEfQjDPQDN0gXPwzUge6T3OTk9ou9ZCi6mfSM5PNY5ZNE -zowQiHxvQWxDECnz1/FzyWHna5bq9ZFtlPd/8bPs60a20fokSjQfhrQcPF56si2Q -7vnHhZSkpRGgAvXlj2d8yWVTXUWp5LS83+km7sexhfc9t2l88DDp44iX4CkhkE7p -ya+mmws+iYM8y6hv4vAG -=RQd1 ------END PGP SIGNATURE----- diff --git a/dev-db/mysql-utilities/metadata.xml b/dev-db/mysql-utilities/metadata.xml deleted file mode 100644 index 41ea3d1..0000000 --- a/dev-db/mysql-utilities/metadata.xml +++ /dev/null @@ -1,12 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> -<pkgmetadata> -<maintainer type="person"> - <email>grknight@gentoo.org</email> - <name>Brian Evans</name> -</maintainer> -<maintainer type="project"> - <email>mysql-bugs@gentoo.org</email> - <name>MySQL</name> -</maintainer> -</pkgmetadata> diff --git a/dev-db/mysql-utilities/mysql-utilities-1.5.4.ebuild b/dev-db/mysql-utilities/mysql-utilities-1.5.4.ebuild deleted file mode 100644 index 905a343..0000000 --- a/dev-db/mysql-utilities/mysql-utilities-1.5.4.ebuild +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 - -PYTHON_COMPAT=( python2_7 ) -inherit eutils distutils-r1 multilib - -DESCRIPTION="Set of command-line utilities for common MySQL tasks" -HOMEPAGE="http://dev.mysql.com/doc/mysql-utilities/" -SRC_URI="mirror://mysql/Downloads/MySQLGUITools/${P}.tar.gz" -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~x86" - -IUSE="" - -DEPEND="dev-python/mysql-connector-python[${PYTHON_USEDEP}]" -RDEPEND="${DEPEND}" - -src_prepare() { - # conflicts with dev-python/mysql-connector-python - rm -r "${S}/mysql/connector" || die -} - -python_install() { - distutils-r1_python_install - # Remove another collision - rm "${D}usr/$(get_libdir)/${EPYTHON}/site-packages/mysql/__init__.py" || die -} diff --git a/dev-db/mysql-utilities/mysql-utilities-1.5.6.ebuild b/dev-db/mysql-utilities/mysql-utilities-1.5.6.ebuild deleted file mode 100644 index 71eed64..0000000 --- a/dev-db/mysql-utilities/mysql-utilities-1.5.6.ebuild +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -PYTHON_COMPAT=( python2_7 ) -inherit distutils-r1 - -DESCRIPTION="Set of command-line utilities for common MySQL tasks" -HOMEPAGE="http://dev.mysql.com/doc/mysql-utilities/" -SRC_URI="mirror://mysql/Downloads/MySQLGUITools/${P}.tar.gz" -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~x86" - -IUSE="" - -DEPEND=">=dev-python/mysql-connector-python-2.1.2[${PYTHON_USEDEP}]" -RDEPEND="${DEPEND}" - -src_prepare() { - # conflicts with dev-python/mysql-connector-python - rm -r "${S}/mysql/connector" || die - default -} - -python_install() { - distutils-r1_python_install - # Remove another collision - rm "${D}usr/$(get_libdir)/${EPYTHON}/site-packages/mysql/__init__.py" || die -} diff --git a/dev-db/mysql/ChangeLog b/dev-db/mysql/ChangeLog deleted file mode 100644 index fe767e8..0000000 --- a/dev-db/mysql/ChangeLog +++ /dev/null @@ -1,481 +0,0 @@ -# ChangeLog for dev-db/mysql -# Copyright 1999-2017 Gentoo Foundation; Distributed under the GPL v2 -# $Id$ - - 02 Mar 2017; Brian Evans <grknight@gentoo.org> mysql-4.0.27-r1.ebuild, - mysql-4.1.22-r1.ebuild, mysql-5.0.96.ebuild, mysql-5.1.73-r1.ebuild, - mysql-5.6.30.ebuild, mysql-5.7.10.ebuild, mysql-5.7.11.ebuild, - mysql-5.7.12.ebuild, mysql-5.7.17.ebuild: - dev-db/mysql: Drop $Id$ headers - - 02 Mar 2017; Brian Evans <grknight@gentoo.org> -mysql-5.5.49.ebuild, - mysql-4.0.27-r1.ebuild, mysql-4.1.22-r1.ebuild, mysql-5.0.96.ebuild, - mysql-5.1.73-r1.ebuild, mysql-5.6.30.ebuild, mysql-5.7.10.ebuild, - mysql-5.7.11.ebuild, mysql-5.7.12.ebuild, mysql-5.7.17.ebuild: - dev-db/mysql: Drop defunct x86-freebsd arch - - 09 Jan 2017; Brian Evans <grknight@gentoo.org> mysql-5.7.17.ebuild: - dev-db/mysql: Add Protobuf DEPEND - -*mysql-5.7.17 (03 Jan 2017) - - 03 Jan 2017; Brian Evans <grknight@gentoo.org> +mysql-5.7.17.ebuild: - dev-db/mysql: Version bump in 5.7 series. Just about done but needs major - tree work to be included - - 29 Apr 2016; Brian Evans <grknight@gentoo.org> mysql-5.7.12.ebuild: - dev-db/mysql: Force a download of boost-1.59 and use it in the build. Only a - portion is actually used - -*mysql-5.7.12 (27 Apr 2016) - - 27 Apr 2016; Brian Evans <grknight@gentoo.org> +files/5.7.12-boost.cmake, - +mysql-5.7.12.ebuild: - dev-db/mysql: Version bump for 5.7.12 - -*mysql-5.5.49 (12 Apr 2016) -*mysql-5.6.30 (12 Apr 2016) - - 12 Apr 2016; Brian Evans <grknight@gentoo.org> +mysql-5.5.49.ebuild, - +mysql-5.6.30.ebuild, -mysql-5.5.48.ebuild, -mysql-5.6.29.ebuild: - dev-db/mysql: Version bump for 5.5.49 and 5.6.30 - - 12 Feb 2016; Brian Evans <grknight@gentoo.org> metadata.xml: - dev-db/mysql: Remove old USE flag descriptions for client-libs and tools - - 12 Feb 2016; Brian Evans <grknight@gentoo.org> -mysql-5.5.46.ebuild, - -mysql-5.6.27-r1.ebuild, -mysql-5.6.27.ebuild, -mysql-5.6.28.ebuild, - -mysql-5.7.7_rc.ebuild, -mysql-5.7.8_rc.ebuild: - dev-db/mysql: Drop old version - -*mysql-5.5.48 (12 Feb 2016) - - 12 Feb 2016; Brian Evans <grknight@gentoo.org> +mysql-5.5.48.ebuild: - dev-db/mysql: Version bump for 5.5.48 - -*mysql-5.7.10 (21 Jan 2016) - - 21 Jan 2016; Brian Evans <grknight@gentoo.org> +mysql-5.7.10.ebuild: - dev-db/mysql: Add new 5.7 version. Needs more testing - - 19 Aug 2015; Brian Evans <grknight@gentoo.org> mysql-5.7.7_rc.ebuild, - mysql-5.7.8_rc.ebuild: - dev-db/mysql: Drop keywords ~hppa ~ppc ~sparc ~sparc-fbsd MySQL 5.7 requires - native GCC atomics and these platforms do not provide it. Need to patch or - leave unkeyworded. - -*mysql-5.7.8_rc (13 Aug 2015) - - 13 Aug 2015; Brian Evans <grknight@gentoo.org> +mysql-5.7.8_rc.ebuild, - -mysql-5.7.6_alpha_pre16.ebuild: - dev-db/mysql: Version bump - -*mysql-5.7.7_rc (14 Apr 2015) -*mysql-5.6.24 (14 Apr 2015) -*mysql-5.5.43 (14 Apr 2015) - - 14 Apr 2015; <grknight@gentoo.org> +mysql-5.5.43.ebuild, - +mysql-5.6.24.ebuild, -mysql-5.7.4_alpha_pre14.ebuild, - -mysql-5.7.5_alpha_pre15.ebuild, +mysql-5.7.7_rc.ebuild: - Version bump - -*mysql-5.7.6_alpha_pre16 (10 Mar 2015) - - 10 Mar 2015; Brian Evans <grknight@gentoo.org> - +mysql-5.7.6_alpha_pre16.ebuild: - [dev-db/mysql] Version bump for 5.7.6; Needs more testing - - 03 Aug 2014; Robin H. Johnson <robbat2@gentoo.org> mysql-5.6.20.ebuild: - Sync. - - 03 Aug 2014; Robin H. Johnson <robbat2@gentoo.org> mysql-5.6.20.ebuild: - Missed test while merging. - - 29 Jul 2014; Robin H. Johnson <robbat2@gentoo.org> mysql-4.0.27-r1.ebuild, - mysql-4.1.22-r1.ebuild, mysql-5.1.73-r1.ebuild, mysql-5.5.38-r1.ebuild: - Sync ebuilds from tree. - -*mysql-5.1.73 (12 Dec 2013) - - 12 Dec 2013; Brian Evans <grknight@tuffmail.com> +mysql-5.1.73.ebuild: - [mysql] Bump 5.1 series - -*mysql-5.5.35 (10 Dec 2013) -*mysql-5.6.15 (10 Dec 2013) - - 10 Dec 2013; Brian Evans <grknight@tuffmail.com> +mysql-5.5.35.ebuild, - +mysql-5.6.15.ebuild, -mysql-5.6.10.ebuild: - [mysql] Version bumps for 5.5 and 5.6 series - - 29 Aug 2013; Brian Evans <grknight@tuffmail.com> -mysql-5.1.66-r1.ebuild, - -mysql-5.1.66.ebuild, -mysql-5.1.67-r1.ebuild, -mysql-5.1.67.ebuild, - -mysql-5.1.68.ebuild, -mysql-5.1.69.ebuild, -mysql-5.5.29-r1.ebuild, - -mysql-5.5.29.ebuild, -mysql-5.5.30.ebuild, -mysql-5.5.31.ebuild, - -mysql-5.6.7_rc.ebuild, -mysql-5.6.9_rc.ebuild: - [dev-db/mysql] Trim old - -*mysql-5.6.13 (26 Aug 2013) - - 26 Aug 2013; Brian Evans <grknight@tuffmail.com> +mysql-5.6.13.ebuild: - [dev-db/mysql] Version bump to 5.6.13. Failing test(s): - rpl.rpl_spec_variables similar to bug 473002 - -*mysql-5.5.33 (16 Aug 2013) - - 16 Aug 2013; Brian Evans <grknight@tuffmail.com> +mysql-5.5.33.ebuild: - Version bump w/ failing tests Failing test(s): rpl.rpl_deadlock_innodb - main.plugin_auth main.mysqladmin main.mysqlhotcopy_archive - main.mysqlhotcopy_myisam - -*mysql-5.6.12 (06 Jun 2013) - - 06 Jun 2013; Robin H. Johnson <robbat2@gentoo.org> +mysql-5.6.12.ebuild, - mysql-5.6.10.ebuild, mysql-5.6.7_rc.ebuild, mysql-5.6.9_rc.ebuild, - mysql-5.7.1_alpha_pre11.ebuild: - Bump. Fails tests: rpl.rpl_spec_variables (mix,stmt), - binlog.binlog_mysqlbinlog_filter (stmt), perfschema.binlog_edge_mix, - perfschema.binlog_edge_stmt, funcs_1.is_columns_mysql, - funcs_1.is_tables_mysql, funcs_1.is_triggers, - sys_vars.table_definition_cache_basic, sys_vars.table_open_cache_basic. - -*mysql-4.0.27-r1 (06 Jun 2013) -*mysql-4.1.22-r1 (06 Jun 2013) -*mysql-5.1.68 (06 Jun 2013) -*mysql-5.5.32 (06 Jun 2013) - - 06 Jun 2013; Robin H. Johnson <robbat2@gentoo.org> +mysql-4.0.27-r1.ebuild, - +mysql-4.1.22-r1.ebuild, +mysql-5.1.68.ebuild, +mysql-5.5.32.ebuild, - mysql-5.1.66.ebuild, mysql-5.1.69.ebuild, mysql-5.5.30.ebuild, - mysql-5.5.31.ebuild: - Bump. - -*mysql-5.5.31 (03 Jun 2013) - - 03 Jun 2013; Robin H. Johnson <robbat2@gentoo.org> +mysql-5.5.31.ebuild, - mysql-5.1.69.ebuild: - Bump. - -*mysql-5.1.69 (28 May 2013) - - 28 May 2013; Robin H. Johnson <robbat2@gentoo.org> +mysql-5.1.69.ebuild: - Bump, please see bug #471632 for test failures. - -*mysql-5.5.30 (08 Mar 2013) - - 08 Mar 2013; Robin H. Johnson <robbat2@gentoo.org> +mysql-5.5.30.ebuild: - Bump. - - 04 Mar 2013; Robin H. Johnson <robbat2@gentoo.org> mysql-5.1.66.ebuild, - mysql-5.1.67.ebuild: - Update headers and keywords. - -*mysql-5.6.9_rc (28 Jan 2013) - - 28 Jan 2013; Robin H. Johnson <robbat2@gentoo.org> +mysql-5.6.9_rc.ebuild: - Add still-broken 5.6 for development. As a problem with as-needed link order - still. - - 28 Jan 2013; Robin H. Johnson <robbat2@gentoo.org> files/my.cnf-4.0, - files/my.cnf-5.1, files/my.cnf-5.5, mysql-5.1.66-r1.ebuild, - mysql-5.1.66.ebuild, mysql-5.1.67-r1.ebuild: - Sync with gentoo-x86 for prefix changes & headers. - - 28 Jan 2013; Robin H. Johnson <robbat2@gentoo.org> -mysql-5.5.19.ebuild, - -mysql-5.5.20.ebuild, -mysql-5.5.21.ebuild, -mysql-5.5.22.ebuild, - -mysql-5.5.25a.ebuild, -mysql-5.5.27.ebuild, -mysql-5.5.28.ebuild, - -mysql-5.6.2_alpha_pre5.ebuild: - Trim. - -*mysql-5.1.66-r1 (28 Jan 2013) -*mysql-5.1.67-r1 (28 Jan 2013) - - 28 Jan 2013; Robin H. Johnson <robbat2@gentoo.org> +mysql-5.1.66-r1.ebuild, - +mysql-5.1.67-r1.ebuild, mysql-5.1.66.ebuild, mysql-5.1.67.ebuild: - Actually move PBXT fix to revbump. - - 28 Jan 2013; Robin H. Johnson <robbat2@gentoo.org> mysql-5.1.66.ebuild, - mysql-5.1.67.ebuild: - Include PBXT nice fix per bug #374349. - - 28 Jan 2013; Robin H. Johnson <robbat2@gentoo.org> metadata.xml, - mysql-5.1.66.ebuild, mysql-5.1.67.ebuild, mysql-5.5.19.ebuild, - mysql-5.5.20.ebuild, mysql-5.5.21.ebuild, mysql-5.5.22.ebuild, - mysql-5.5.28.ebuild, mysql-5.5.29.ebuild: - Sync from gentoo-x86. - - 20 Jan 2013; Robin H. Johnson <robbat2@gentoo.org> mysql-5.0.96.ebuild: - Copy keywords from gentoo-x86. - -*mysql-5.1.65 (14 Aug 2012) - - 14 Aug 2012; <atlantis@gentoo.org> +mysql-5.1.65.ebuild: - [dev-db/mysql] Bump to the 5.1.65 release. - -*mysql-5.5.25a (07 Jul 2012) - - 07 Jul 2012; <atlantis@gentoo.org> +mysql-5.5.25a.ebuild: - [dev-db/mysql-5.5.25a] Version bump. - - 22 May 2012; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mysql-5.0.92.ebuild, mysql-5.0.96.ebuild: - Move EAPI assignment to the top. - Whitespace. - - 15 Feb 2012; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - files/my.cnf-5.1: - Update table_cache to table_open_cache variable for mysql-5.1 my.cnf file. - Fixes bug 403425 - thanks to Alex Efros <powerman-asdf@yandex.ru> for the - report. - -*mysql-5.1.61 (31 Jan 2012) -*mysql-5.5.20 (31 Jan 2012) - - 31 Jan 2012; Robin H. Johnson <robbat2@gentoo.org> +mysql-5.1.61.ebuild, - +mysql-5.5.20.ebuild: - Version bump, passes all tests. - - 20 Dec 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mysql-5.1.58-r1.ebuild, mysql-5.5.10.ebuild, mysql-5.5.12.ebuild, - mysql-5.5.14.ebuild, mysql-5.5.15.ebuild: - [dev-db/mysql] Bump EAPI to 4 on old mysql versions. - -*mysql-5.5.18 (20 Nov 2011) - - 20 Nov 2011; Robin H. Johnson <robbat2@gentoo.org> +mysql-5.5.18.ebuild: - Version bump. - -*mysql-5.1.60 (19 Nov 2011) - - 19 Nov 2011; Robin H. Johnson <robbat2@gentoo.org> +mysql-5.1.60.ebuild: - Version bump. - -*mysql-5.5.17 (26 Oct 2011) - - 26 Oct 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - +mysql-5.5.17.ebuild: - [dev-db/mysql] Bumped to the 5.5.17 version. - - 25 Oct 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mysql-5.1.59.ebuild, mysql-5.5.16.ebuild, mysql-5.6.2_alpha_pre5.ebuild: - [dev-db/mysql] Use EAPI-4 to support the new Prefix support of the eclasses. - -*mysql-5.5.16 (22 Sep 2011) - - 22 Sep 2011; <atlantis@gentoo.org> +mysql-5.5.16.ebuild: - Bumped mysql to the 5.5.16 release. - -*mysql-5.1.59 (22 Sep 2011) - - 22 Sep 2011; <atlantis@gentoo.org> +mysql-5.1.59.ebuild: - Bumped mysql to the 5.1.59 release. - -*mysql-5.5.15 (30 Jul 2011) - - 30 Jul 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - +mysql-5.5.15.ebuild: - [dev-db/mysql] 5.5.15 release version bump. - - 21 Jul 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - -mysql-5.1.58.ebuild: - Dropped broken mysql-5.1.58 ebuild. - -*mysql-5.1.58-r1 (21 Jul 2011) - - 21 Jul 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - +mysql-5.1.58-r1.ebuild: - [dev-db/mysql-5.1.58-r1] Bumped mysql-5.1.58 to fix all the issues related to - the ebuild and the mysql-v2 eclass. Fixes bug 375063. - - 14 Jul 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mysql-5.1.58.ebuild: - [dev-db/mysql-5.5.14] Don't use live version of mysql_extras. - [dev-db/mysql-5.1.58] Don't use live version of mysql_extras. - Synced from the tree. - - 13 Jul 2011; Robin H. Johnson <robbat2@gentoo.org> -mysql-5.5.13.ebuild: - 5.5.13 removed from uptream mirrors, unable to verify digest. - - 13 Jul 2011; Robin H. Johnson <robbat2@gentoo.org> -mysql-5.1.56.ebuild, - -mysql-5.1.56-r1.ebuild, -mysql-5.1.57.ebuild: - Old versions moved to tree. - - 13 Jul 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mysql-5.1.57.ebuild, mysql-5.1.58.ebuild, mysql-5.5.13.ebuild, - mysql-5.5.14.ebuild: - Replace mysql_disable_test calls with mysql-v2_disable_test. - Should finally disable the remaining failing tests. - - 18 May 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mysql-5.1.57.ebuild: - Update mysql-v2 eclass to use the git-2 eclass. - Update the mysql-5.1.57 ebuild to use the mysql-v2 eclass. - - 16 May 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mysql-5.5.10.ebuild, mysql-5.5.12.ebuild: - Really disable binlog.binlog_statement_insert_delayed test. - - 16 May 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mysql-5.5.10.ebuild, mysql-5.5.12.ebuild: - Disable tests that fail for mysql-5.5.*: - 3 tests fail for latin/utf-8 charsets and 1 causes segmentation faults. - - 15 May 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - -mysql-5.0.91.ebuild, -mysql-5.1.50-r2.ebuild, -mysql-5.1.50-r3.ebuild, - -mysql-5.1.51.ebuild, -mysql-5.1.51-r1.ebuild, -mysql-5.1.52-r2.ebuild, - -mysql-5.1.53-r1.ebuild, -mysql-5.5.4_alpha_pre3.ebuild: - Dropping old versions. - -*mysql-5.5.12 (11 May 2011) -*mysql-5.1.57 (11 May 2011) - - 11 May 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - +mysql-5.1.57.ebuild, +mysql-5.5.12.ebuild: - Bumped mysql to the 5.1.57 and 5.5.12 releases. - -*mysql-5.1.56-r1 (18 Apr 2011) - - 18 Apr 2011; Robin H. Johnson <robbat2@gentoo.org> mysql-5.1.56.ebuild, - +mysql-5.1.56-r1.ebuild: - Make a release of 5.1.56 using the old eclass. - -*mysql-5.1.56 (28 Mar 2011) - - 28 Mar 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - +mysql-5.1.56.ebuild, mysql-5.5.10.ebuild, metadata.xml: - Bumped mysql to the 5.1.56 release. - More updates to the 5.5.10 ebuild. - - 26 Mar 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mysql-5.5.10.ebuild: - Applied a few more fixes to mysql-5.5.10. - - 21 Mar 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mysql-5.5.10.ebuild: - A few more updates for mysql-5.5.10 including a reworked patch from upstream - ( http://lists.mysql.com/commits/102373 ) to build a shared libmysqld. - -*mysql-5.5.10 (17 Mar 2011) - - 17 Mar 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - +mysql-5.5.10.ebuild: - Introduce new eclasses and update mysql_fx.eclass to support the cmake based - mysql-5.5 ebuilds. - Add initial support for mysql-5.5.10 - this is still a work in progress. - -*mysql-5.0.92 (17 Feb 2011) - - 17 Feb 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - +mysql-5.0.92.ebuild: - Bumped mysql to the 5.0.92 release. - This version is still breaking on a missing #endif at sql/sql_parse.cc. - - 28 Nov 2010; Robin H. Johnson <robbat2@gentoo.org> mysql-5.1.53-r1.ebuild: - Add ~mips per main tree. - - 28 Nov 2010; Robin H. Johnson <robbat2@gentoo.org> mysql-5.1.51-r1.ebuild, - mysql-5.1.52-r2.ebuild, mysql-5.1.53-r1.ebuild: - Update libtool changes from main tree. - -*mysql-5.1.53-r1 (28 Nov 2010) -*mysql-5.1.52-r2 (28 Nov 2010) - - 28 Nov 2010; Robin H. Johnson <robbat2@gentoo.org> -mysql-5.1.52.ebuild, - +mysql-5.1.52-r2.ebuild, +mysql-5.1.53-r1.ebuild: - Add 5.1.53 ebuild and bump 5.1.52 to be ahead of main tree versions. - -*mysql-5.1.52 (03 Nov 2010) - - 03 Nov 2010; Robin H. Johnson <robbat2@gentoo.org> +mysql-5.1.52.ebuild: - Add 5.1.52 release, just need to integrate MIPS and federated fixes - -*mysql-5.1.51-r1 (06 Oct 2010) - - 06 Oct 2010; Robin H. Johnson <robbat2@gentoo.org> mysql-5.1.51.ebuild, - +mysql-5.1.51-r1.ebuild: - Release ready for tree now. - - 06 Oct 2010; Robin H. Johnson <robbat2@gentoo.org> mysql-5.1.50-r2.ebuild, - mysql-5.1.50-r3.ebuild, mysql-5.1.51.ebuild: - Ready for release. - -*mysql-5.1.51 (04 Oct 2010) - - 04 Oct 2010; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - +mysql-5.1.51.ebuild: - Bumped to mysql-5.1.51. - - 27 Sep 2010; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mysql-5.1.50-r3.ebuild: - Dropped the block on amarok[embedded]. - - 24 Sep 2010; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - mysql-5.1.50-r3.ebuild: - Drop the EGIT_REPO_URI used to test locally. - -*mysql-5.1.50-r3 (24 Sep 2010) - - 24 Sep 2010; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - +mysql-5.1.50-r3.ebuild: - Bumped mysql to 5.1.50-r3 to add the embedded patch. - - 07 Sep 2010; Robin H. Johnson <robbat2@gentoo.org> -mysql-5.1.49.ebuild, - -mysql-5.5.1_alpha_pre2-r1.ebuild: - cleanup. - - 07 Sep 2010; Robin H. Johnson <robbat2@gentoo.org> mysql-5.1.50-r2.ebuild: - Hello again bug #332565. - - 05 Sep 2010; Robin H. Johnson <robbat2@gentoo.org> mysql-5.1.50-r2.ebuild: - Refix bug #332565. - - 01 Sep 2010; Robin H. Johnson <robbat2@gentoo.org> mysql-5.1.50-r2.ebuild: - Block the new sharedlib patch since it doesn't work fully yet. - -*mysql-5.1.50-r2 (01 Sep 2010) - - 01 Sep 2010; Robin H. Johnson <robbat2@gentoo.org> -mysql-5.1.50.ebuild, - +mysql-5.1.50-r2.ebuild: - Rename to avoid conflict. - - 21 Aug 2010; Robin H. Johnson <robbat2@gentoo.org> mysql-5.1.50.ebuild: - Some tests false-positive with XtraDB. - -*mysql-5.1.50 (20 Aug 2010) - - 20 Aug 2010; Robin H. Johnson <robbat2@gentoo.org> +mysql-5.1.50.ebuild: - Verbump. - - 09 Aug 2010; Robin H. Johnson <robbat2@gentoo.org> - -mysql-5.0.90-r3.ebuild, -mysql-5.1.44-r4.ebuild, -mysql-5.1.45-r2.ebuild, - -mysql-5.1.46.ebuild: - Cleanup. - - 09 Aug 2010; Robin H. Johnson <robbat2@gentoo.org> mysql-5.0.90-r3.ebuild, - mysql-5.0.91.ebuild: - Add prefix keywords. - - 09 Aug 2010; Robin H. Johnson <robbat2@gentoo.org> mysql-5.0.91.ebuild: - Clean up 5.0.91 for release. - -*mysql-5.1.49 (27 Jul 2010) - - 27 Jul 2010; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - +mysql-5.1.49.ebuild: - Added mysql-5.1.49 release. - -*mysql-5.0.91 (22 May 2010) - - 22 May 2010; Robin H. Johnson <robbat2@gentoo.org> +mysql-5.0.91.ebuild: - Bug #319489: new version for GLSA, but critically broken. - -*mysql-5.1.42 (02 Jan 2010) - - 02 Jan 2010; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - +mysql-5.1.42.ebuild: - Bumped mysql to 5.1.42. - -*mysql-5.1.41 (29 Nov 2009) - - 29 Nov 2009; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> - +mysql-5.1.41.ebuild: - Initial bump to mysql-5.1.41. diff --git a/dev-db/mysql/Manifest b/dev-db/mysql/Manifest deleted file mode 100644 index 4ab2b64..0000000 --- a/dev-db/mysql/Manifest +++ /dev/null @@ -1,36 +0,0 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA256 - -DIST mysql-4.0.27.tar.gz 11152643 SHA256 c79f83bed7c1ea98e018b8829375b55c1de838d21a526d7f679becc75de00d0f SHA512 188283133e99e1c0b52ac8650aff325d7c9762fbad526c2c67b26dd614f2a86afb247a3f55ff071be1d44cd13060b9d7cca08ba1d758a04d2369381fa104454e WHIRLPOOL d3964468635eae0caf7fc8fb7b3576da12d49264bd9b797bb2191da8c6b91ca46321fb090e994df2b93b43f50686dcc4f735bdff03b49a3176fa746d5c4a60ab -DIST mysql-4.1.22.tar.gz 17761101 SHA256 6bd2436fd0f233bb1518e15975cb4e9fa4434acb53c3c3cd7d4648219abf58e9 SHA512 9de1c2b27cf428a10f67a6217fc2783b638beb6345e2127a4163ceb286073886d223de861c40be0ab36ea78ec5f33ccd5ee457d1e35e67b081d629118b68d390 WHIRLPOOL b40ca2e0d07fc0bd504e57b7eb005d36cf842bb668e93722c723bcc5a797dc9b456ee8971ea99bfc2b9119a2e19ee599f8441eb4601709eb4238196a27319257 -DIST mysql-5.0.96.tar.gz 22686667 SHA256 43853814775158aa1650f483530a7dde153957579e3349e3ec780b89d741fc84 SHA512 2e3b4ac221c1c1c11618dc79067a7feff680380fcea435813287b02cb0dff45fb5a32a4393c53cf13165f6efc99dbf347a9388ad364cfdf2e392760a310aa5a9 WHIRLPOOL 3e167e4ff4c56095fbdee55b7e619c9b7ad2120eb72c9a58fe77a023ab6e7498c74e2053876e61687d7812f9ff7022303728ddda49732e7569035684263d2517 -DIST mysql-5.1.73.tar.gz 24023347 SHA256 05ebe21305408b24407d14b77607a3e5ffa3c300e03f1359d3066f301989dcb5 SHA512 2e3651ebc1370dad7e01158cdd99133ed3f90c985114766b6282d58b743ae7bce16db797e82819fa5bbc2fa53d89811fd76b278c7459338288e7957634a8c3ff WHIRLPOOL f47c3fe1cd98b8ca2163646c760bd9763c65eab0591b31fe30a8c55c72c8b10d7b549b394493695cf98f50999364409ef8158661141277e6d99b011835aef942 -DIST mysql-5.5.62.tar.gz 21111902 SHA256 b1e7853bc1f04aabf6771e0ad947f35ac8d237f4b35d0706d1095c9526ff99d7 SHA512 1080a3989c20bbbfe98739f99dacd183f2087ceee5147845852144240386808568af4c908ecdbccdcb6114000ab760ed7257492834d50018eff9520260fd91ce WHIRLPOOL f55b30e0839025180945d9d8244613b46f0b635bb75d4a409a82bdda0262374f2df1e9124f3abdad58e0a603fc8c3b2b34e235037f6613923385a903bfb9945b -DIST mysql-boost-5.7.21.tar.gz 48931457 SHA256 ad29ecb6fb3c3571394fe231633a2d1d188d49e9eb749daa4e8799b7630daa09 SHA512 29a1bfa1f5d5e354b66ca8c9fdaf7ee88de3d57bee3c6368861b46ab6d992affb7604577c06f241df542b96ab088c055473fd76584376dd149956ae1dd8726f3 WHIRLPOOL 0a86c9e088c870e5e8bf90b15ba53cd61e126143c5147adcbf5273c5dd8018bfe23fbbfd1b5055b9e9ece0a2b1fab21409eaa9bd939ec248410a92d4fe0052ab -DIST mysql-extras-20070105.tar.bz2 50005 SHA256 17697bf70acffd0eeefd976b5ef06dd36080273bf7e805b51a31d72f5f2c5172 SHA512 65e8fd1f9cc71083dbcfaffc331171e0d7deedbd784e416a4b629139f71cc102a84fa62c2d9e48310a18571ef7f06153911ee75c5d7bb6ba88807c287e7cbf34 WHIRLPOOL 3f858fbed6f57ffac863c29bef09a658e3d9f57cf4c6b5c62537973ae44f217344a8592ad311b14b1e7e8d475434b3c69339a8d2873c498ba712ff6f5e128cec -DIST mysql-extras-20090228-2228Z.tar.bz2 254048 SHA256 03a986a5c5ae57f1436553565239613e978ae11e12834fcb275ec6457b12b6fb SHA512 b347c0894d45cff2c10e26c12d7586c335811b607cd760b48e51743e74c55ace820d2d50fac2ce72543c14b9b4d15afce336bd956ea8a820df4a651f23e3b79f WHIRLPOOL 4d89a44791ec7e95baa3822bb62a3638c86d24bcfc777b9ff5a8d26020e7401159a3c03ebda9907fcbf02589b80726f2daa5bf2498d8e6e6e33540edf9b1d551 -DIST mysql-extras-20120401-2131Z.tar.bz2 1835097 SHA256 95e531799ed267c566da8b0759da78d0351d6004c7c8a45018054e287a989495 SHA512 0625e1f06e04c7841256955950dd7766a5f03d4ade2aee3c13335f08acff374933ed1fd7ddea214eaaa3531d7373ef094734f5c00530555347f058f5ec4d9d36 WHIRLPOOL f2c6e9387b38b609d3bfea83c6983c456d30a9dcf95c256a44402d4c63fa22543d55d6afa9b8dbf4238dcadf32fac3daec5031d50c8a4acf7a074d04fbede213 -DIST mysql-extras-20140514-0124Z.tar.bz2 1493742 SHA256 0cdda9f8587532375274510a8a1f8fe5e80f10cfdf851a01074109803f7ee4cf SHA512 7a798809809b35a515a3475be5f1a96547d495592c83c4cf5c79fb07ceb45a04000da8922d051004c0f2d944f92ca47b75ad08d06a8dccca2ae9f94778d31a7e WHIRLPOOL 371446d80cd9fa22a28eeecde8d18c9c3ca76db9bc57a4ab2073ed0fc1d19a70a06a33cb92257a671849e4bad8bfb9f235272ee1221c7c21ce5f45bc900a59cc -DIST mysql-extras-20180312-2011Z.tar.bz2 319047 SHA256 5d83747593b2276ecaf253b193814df2bfe170de57ceb7565e3d9f215df92254 SHA512 b0aa9fc8fbc050451ef147cee99b00cf10d34a71641837821e78655241f7d79a94fe2efb4cef9a23fe9741e08ada2fc0b58ef3b3663752bc567babfbcaa547c8 WHIRLPOOL 29085d38c285e62fa5925e70e01fda98ce5582e660b84fa09992049b5c222d1c14e73b94c63cb754bd94df00ce154b24ea5d4ee472de1766b6941cb05503c493 -DIST mysql-extras-20180804-2323Z.tar.bz2 322215 SHA256 fa962215d2dba8f781f25351a1f8f70c79d4ab92eef438ec14824aadf12a9b34 SHA512 efd9d416f394cc61b977ab76f05ab3acc5803ff8bdee8e1dbc65cc5b3f07e4f9742140d9586c028908b10fcc44f21c98ebffdebcc5c3578acbe05b07526bcb3d WHIRLPOOL 175407174870609128c502a9843d2c3f3f40acdd24d3263bbe98b30d6b0586821f642ba57c0519ae5e795a883bf7eb736a4da6de5a6590407a3db560105d5140 -DIST pbxt-1.0.11-6-pre-ga.tar.gz 3156307 SHA256 71ff3d86e9e5691f3efe541bf31f55a7ec2a88af27df6ad853b65902e00e6d12 SHA512 fa238303f06e0a9adfb10bd5a2e1d2e4850d2c17a350af3874cbff099d6e47b7c555d750c584d06a3ca87c1eb1e9301a9619d8d9a4cffb7fd0169b2b3a63c80c WHIRLPOOL 05cdd39f6f5dafff2def0062a00a24eff6cf6d8754f622b133365cef47cd6b828df5500ac407359d0793a75dd239ec1e49a13d2400a01ddf8b4cef7466e86962 -DIST percona-xtradb-1.0.6-10.tar.gz 1676716 SHA256 e3aa818f13cf669412e59ad194eae8eada7a857bf7a4260e4bb41cab4d7ae39c SHA512 72e4b656b22a0420e6f5935dc28060e5c50fbeb48c6d1ae430579d9ccef8042fdd4dde128cc977b903de6221f7021e8c87ea29fe6a8a8c74edb84bf54ab889f3 WHIRLPOOL a916879be315498da27c60992efa4d19e91305b81242925e161547f3fb97a820256e1d07863e9e007ef843af54cd087ce5ac47d5ed1b70862da6cd5a9d81eccf ------BEGIN PGP SIGNATURE----- -Version: GnuPG v2 - -iQKTBAEBCAB9FiEEZsLkTtkOMnWOfVXA0feB7/n0o7YFAl1BniZfFIAAAAAALgAo -aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDY2 -QzJFNDRFRDkwRTMyNzU4RTdENTVDMEQxRjc4MUVGRjlGNEEzQjYACgkQ0feB7/n0 -o7ahww//auRw72e8YFZr47EKU5QgBPF09Sno4320t9rtSpRPoAVLdfkhnsmwxiA7 -sqV/5hT0NkWtNVee5RsxzVkW4s45I8Q0gGjqD+WGc5qP4iNKYflUgSiXXLlQ1MY8 -IsIkofRPit6XmjG1QAdjftwiZREZH8c1hlHPZB0UHwOMoZMH0GWUljhS02kK4gK6 -8WK5WUYCN29i8SvTGE7rCQOp3hdIcwRApM4fciERbNK3bqUsmLb8R7qRj1CvqrXL -B971GLypt1PNFuBMQPd/iU/sasrZY2ncU3rO0wOcvAoUSmc3qIx/SjUA/e9CdJNN -uXw4tCXRptC+a8Z0hvTGtlN9SWHr5hxSlv9au3GgfGPSFnVDXiZuKbObRzvkzeLs -YuWhULl6IZMOd5hhhyjI3Ct7M14+yIvxj4DsU+sXni3qrHT82/9hWVZrBydRF0tJ -5wp0B4vaf78cekw+NKmevxa3BXAGAlpRRfRnu4Cx4TDv2O9kLzG7/oPEIWHhStYw -sDyaxH6qM1CTroIcYOT9NQfdtZU4RjdL5Lcf15zB+ZcYHzmupZbd6JIczXqggl4g -MGwr+O8axkwzRoiHr0q2WQNHUIMrtFrbunkxzvhNKkSsBE361SLO6r+9Qp57Sy3w -mb/ulSHGYEGmICbh03Z/oHalpw7BE78xCB/7IhA8s1MR9NR1xcA= -=Jr+Z ------END PGP SIGNATURE----- diff --git a/dev-db/mysql/files/5.7.12-boost.cmake b/dev-db/mysql/files/5.7.12-boost.cmake deleted file mode 100644 index 5a341e1..0000000 --- a/dev-db/mysql/files/5.7.12-boost.cmake +++ /dev/null @@ -1,67 +0,0 @@ -# Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; version 2 of the License. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - -# We want boost 1.59.0 in order to build our boost/geometry code. -# The boost tarball is fairly big, and takes several minutes -# to download. So we recommend downloading/unpacking it -# only once, in a place visible from any bzr sandbox. -# We use only header files, so there should be no binary dependencies. - -# Downloading the tarball takes about 5 minutes here at the office. -# Here are some size/time data for unpacking the tarball on my desktop: -# size tarball-name -# 67M boost_1_55_0.tar.gz unzipping headers ~2 seconds 117M -# unzipping everything ~3 seconds 485M -# 8,8M boost_headers.tar.gz unzipping everything <1 second - -# Invoke with -DWITH_BOOST=<directory> or set WITH_BOOST in environment. -# If WITH_BOOST is *not* set, or is set to the special value "system", -# we assume that the correct version (see below) -# is installed on the compile host in the standard location. - -UNSET(WITH_BOOST) -UNSET(WITH_BOOST CACHE) - -# Update the cache, to make it visible in cmake-gui. -SET(WITH_BOOST ${WITH_BOOST} CACHE PATH - "Path to boost sources: a directory, or a tarball to be unzipped.") - -# Search for the version file, first in LOCAL_BOOST_DIR or WITH_BOOST -FIND_PATH(BOOST_INCLUDE_DIR - NAMES boost/version.hpp - NO_DEFAULT_PATH - PATHS ${LOCAL_BOOST_DIR} - ${LOCAL_BOOST_DIR}/${BOOST_PACKAGE_NAME} - ${WITH_BOOST} -) -# Then search in standard places (if not found above). -FIND_PATH(BOOST_INCLUDE_DIR - NAMES boost/version.hpp -) - -IF(NOT BOOST_INCLUDE_DIR) - MESSAGE(FATAL_ERROR "Could not find (the correct version of) boost.") -ELSE() - MESSAGE(STATUS "Found ${BOOST_INCLUDE_DIR}/boost/version.hpp ") -ENDIF() - -MESSAGE(STATUS "BOOST_INCLUDE_DIR ${BOOST_INCLUDE_DIR}") - -# Bug in sqrt(NaN) on 32bit platforms -IF(SIZEOF_VOIDP EQUAL 4) - ADD_DEFINITIONS(-DBOOST_GEOMETRY_SQRT_CHECK_FINITENESS) -ENDIF() - -SET(USING_SYSTEM_BOOST 1) diff --git a/dev-db/mysql/files/my.cnf b/dev-db/mysql/files/my.cnf deleted file mode 100644 index 1236111..0000000 --- a/dev-db/mysql/files/my.cnf +++ /dev/null @@ -1,48 +0,0 @@ -# /etc/mysql/my.cnf: The global mysql configuration file. -# $Id$ -# -# This file can be simultaneously placed in three places: -# 1. /etc/mysql/my.cnf to set global options. -# 2. /var/lib/mysql/my.cnf to set server-specific options. -# 3. ~/.my.cnf to set user-specific options. -# -# One can use all long options that the program supports. -# Run the program with --help to get a list of them. -# -# The following values assume you have at least 32M RAM! - -[client] -#password = my_password -port = 3306 -socket = /var/run/mysqld/mysqld.sock - -[safe_mysqld] -err-log = /var/log/mysql/mysql.err - -[mysqld] -#skip-networking -skip-innodb -innodb_file_per_table -user = mysql -pid-file = /var/run/mysqld/mysqld.pid -socket = /var/run/mysqld/mysqld.sock -port = 3306 -log = /var/log/mysql/mysql.log -basedir = /usr -datadir = /var/lib/mysql -tmpdir = /tmp -language = /usr/share/mysql/english -skip-locking -set-variable = key_buffer=16M -set-variable = max_allowed_packet=1M -set-variable = thread_stack=128K - -[mysqldump] -quick -set-variable = max_allowed_packet=1M - -[mysql] -#no-auto-rehash # faster start of mysql but no tab completition - -[isamchk] -set-variable = key_buffer=16M diff --git a/dev-db/mysql/files/my.cnf-4.0 b/dev-db/mysql/files/my.cnf-4.0 deleted file mode 100644 index e6666a7..0000000 --- a/dev-db/mysql/files/my.cnf-4.0 +++ /dev/null @@ -1,113 +0,0 @@ -# /etc/mysql/my.cnf: The global mysql configuration file. -# $Id$ -# -# This file can be simultaneously placed in three places: -# 1. /etc/mysql/my.cnf to set global options. -# 2. /var/lib/mysql/my.cnf to set server-specific options. -# 3. ~/.my.cnf to set user-specific options. -# -# One can use all long options that the program supports. -# Run the program with --help to get a list of them. -# -# The following values assume you have at least 64M RAM! - -[client] -#password = my_password -port = 3306 -socket = /var/run/mysqld/mysqld.sock - -[safe_mysqld] -err-log = /var/log/mysql/mysql.err - -[mysqld] -user = mysql -pid-file = /var/run/mysqld/mysqld.pid -socket = /var/run/mysqld/mysqld.sock -log-error = /var/log/mysql/mysqld.err -# If set, mysql logs all queries (general query log). This will be deprecated in -# MySQL 5.0. This logs all queries, even error queries and is slow. -# log = /var/log/mysql/mysql.log -# -# If you really need logging, you'd rather use binary logging. Especially when doing -# replication. Read file:/usr/share/doc/mysql-*/manual.html.gz#Replication for info. -# You can use PURGE MASTER LOGS TO '$hostname-bin.010' to get rid of old logs -# from $hostname-bin.01 up to $hostname-bin.09 while the slave server is -# running. -# Before doing that, check which logfile slave curently uses by running -# mysql> SHOW SLAVE STATUS -# To list logfiles on master do: -# mysql> SHOW MASTER LOGS -# Then use PURGE for those not needed anymore only! Never remove the files -# manually! -# -# Also consult RESET MASTER and RESET SLAVE commands before doing any changes -# mysql> RESET MASTER - Deletes all binary logs listed in the index -# file, resetting the binlog index file to be empty. -# mysql> RESET SLAVE - Makes the slave forget its replication position in -# the master logs. -# mysql> SET SQL_LOG_BIN=0 - this turns off logging (execute on MASTER only) -# mysql> SET SQL_LOG_BIN=1 - this turns on logging (execute on MASTER only) -# -# log-bin -# set-variable = binlog-do-db=non_existant -# set-variable = binlog-ignore-db=database_name -# -# server-id has to unique for each master or slave in your network, -# lets use the last number from IP address -# server-id = 207 -basedir = /usr -datadir = /var/lib/mysql -tmpdir = /tmp -language = /usr/share/mysql/english -skip-locking -set-variable = key_buffer=16M -set-variable = max_allowed_packet=1M -set-variable = thread_stack=128K -# be secure by default! -bind-address = 127.0.0.1 -port = 3306 -# this can make it even more secure: -#skip-networking -# -# the following is the InnoDB configuration -# if you wish to disable innodb instead -# uncomment just the next line -#skip-innodb -# -# the rest of the innodb config follows: -# don't eat too much memory, we're trying to be safe on 64Mb boxes -# you might want to bump this up a bit on boxes with more RAM -set-variable = innodb_buffer_pool_size=32M -# this is the default, increase it if you have lots of tables -set-variable = innodb_additional_mem_pool_size=1M -# -# i'd like to use /var/lib/mysql/innodb, but that is seen as a database :-( -# and upstream wants things to be under /var/lib/mysql/, so that's the route -# we have to take for the moment -innodb_data_home_dir = /var/lib/mysql/ -innodb_log_arch_dir = /var/lib/mysql/ -innodb_log_group_home_dir = /var/lib/mysql/ -# you may wish to change this size to be more suitable for your system -# the max is there to avoid run-away growth on your machine -innodb_data_file_path = ibdata1:10M:autoextend:max:128M -# we keep this at around 25% of of innodb_buffer_pool_size -# sensible values range from 1MB to (1/innodb_log_files_in_group*innodb_buffer_pool_size) -set-variable = innodb_log_file_size=8M -# this is the default, increase it if you have very large transactions going on -set-variable = innodb_log_buffer_size=1M -# this is the default and won't hurt you -# you shouldn't need to tweak it -set-variable = innodb_log_files_in_group=2 -# see the innodb config docs, the other options are not always safe -innodb_flush_log_at_trx_commit = 1 -loose-innodb_file_per_table=1 - -[mysqldump] -quick -set-variable = max_allowed_packet=16M - -[mysql] -#no-auto-rehash # faster start of mysql but no tab completion - -[isamchk] -set-variable = key_buffer=16M diff --git a/dev-db/mysql/files/my.cnf-4.1 b/dev-db/mysql/files/my.cnf-4.1 deleted file mode 100644 index 617c9e6..0000000 --- a/dev-db/mysql/files/my.cnf-4.1 +++ /dev/null @@ -1,147 +0,0 @@ -# /etc/mysql/my.cnf: The global mysql configuration file. -# $Id$ - -# The following options will be passed to all MySQL clients -[client] -#password = your_password -port = 3306 -socket = /var/run/mysqld/mysqld.sock - -[mysql] -character-sets-dir=/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqladmin] -character-sets-dir=/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlcheck] -character-sets-dir=/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqldump] -character-sets-dir=/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlimport] -character-sets-dir=/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlshow] -character-sets-dir=/usr/share/mysql/charsets -default-character-set=utf8 - -[myisamchk] -character-sets-dir=/usr/share/mysql/charsets - -[myisampack] -character-sets-dir=/usr/share/mysql/charsets - -# use [safe_mysqld] with mysql-3 -[mysqld_safe] -err-log = /var/log/mysql/mysql.err - -# add a section [mysqld-4.1] or [mysqld-5.0] for specific configurations -[mysqld] -character-set-server = utf8 -default-character-set = utf8 -user = mysql -port = 3306 -socket = /var/run/mysqld/mysqld.sock -pid-file = /var/run/mysqld/mysqld.pid -log-error = /var/log/mysql/mysqld.err -basedir = /usr -datadir = @DATADIR@ -skip-locking -key_buffer = 16M -max_allowed_packet = 1M -table_cache = 64 -sort_buffer_size = 512K -net_buffer_length = 8K -read_buffer_size = 256K -read_rnd_buffer_size = 512K -myisam_sort_buffer_size = 8M -language = /usr/share/mysql/english - -# security: -# using "localhost" in connects uses sockets by default -# skip-networking -bind-address = 127.0.0.1 - -log-bin -server-id = 1 - -# point the following paths to different dedicated disks -tmpdir = /tmp/ -#log-update = /path-to-dedicated-directory/hostname - -# you need the debug USE flag enabled to use the following directives, -# if needed, uncomment them, start the server and issue -# #tail -f /tmp/mysqld.sql /tmp/mysqld.trace -# this will show you *exactly* what's happening in your server ;) - -#log = /tmp/mysqld.sql -#gdb -#debug = d:t:i:o,/tmp/mysqld.trace -#one-thread - -# uncomment the following directives if you are using BDB tables -#bdb_cache_size = 4M -#bdb_max_lock = 10000 - -# the following is the InnoDB configuration -# if you wish to disable innodb instead -# uncomment just the next line -#skip-innodb -# -# the rest of the innodb config follows: -# don't eat too much memory, we're trying to be safe on 64Mb boxes -# you might want to bump this up a bit on boxes with more RAM -innodb_buffer_pool_size = 16M -# this is the default, increase it if you have lots of tables -innodb_additional_mem_pool_size = 2M -# -# i'd like to use /var/lib/mysql/innodb, but that is seen as a database :-( -# and upstream wants things to be under /var/lib/mysql/, so that's the route -# we have to take for the moment -#innodb_data_home_dir = /var/lib/mysql/ -#innodb_log_arch_dir = /var/lib/mysql/ -#innodb_log_group_home_dir = /var/lib/mysql/ -# you may wish to change this size to be more suitable for your system -# the max is there to avoid run-away growth on your machine -innodb_data_file_path = ibdata1:10M:autoextend:max:128M -# we keep this at around 25% of of innodb_buffer_pool_size -# sensible values range from 1MB to (1/innodb_log_files_in_group*innodb_buffer_pool_size) -innodb_log_file_size = 5M -# this is the default, increase it if you have very large transactions going on -innodb_log_buffer_size = 8M -# this is the default and won't hurt you -# you shouldn't need to tweak it -set-variable = innodb_log_files_in_group=2 -# see the innodb config docs, the other options are not always safe -innodb_flush_log_at_trx_commit = 1 -innodb_lock_wait_timeout = 50 -innodb_file_per_table - -[mysqldump] -quick -max_allowed_packet = 16M - -[mysql] -# uncomment the next directive if you are not familiar with SQL -#safe-updates - -[isamchk] -key_buffer = 20M -sort_buffer_size = 20M -read_buffer = 2M -write_buffer = 2M - -[myisamchk] -key_buffer = 20M -sort_buffer_size = 20M -read_buffer = 2M -write_buffer = 2M - -[mysqlhotcopy] -interactive-timeout diff --git a/dev-db/mysql/files/my.cnf-5.1 b/dev-db/mysql/files/my.cnf-5.1 deleted file mode 100644 index cd8721b..0000000 --- a/dev-db/mysql/files/my.cnf-5.1 +++ /dev/null @@ -1,145 +0,0 @@ -# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/my.cnf: The global mysql configuration file. -# $Id$ - -# The following options will be passed to all MySQL clients -[client] -#password = your_password -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock - -[mysql] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqladmin] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlcheck] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqldump] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlimport] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlshow] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[myisamchk] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -[myisampack] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -# use [safe_mysqld] with mysql-3 -[mysqld_safe] -err-log = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysql.err - -# add a section [mysqld-4.1] or [mysqld-5.0] for specific configurations -[mysqld] -character-set-server = utf8 -user = mysql -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock -pid-file = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.pid -log-error = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysqld.err -basedir = @GENTOO_PORTAGE_EPREFIX@/usr -datadir = @DATADIR@ -skip-external-locking -key_buffer = 16M -max_allowed_packet = 1M -table_open_cache = 64 -sort_buffer_size = 512K -net_buffer_length = 8K -read_buffer_size = 256K -read_rnd_buffer_size = 512K -myisam_sort_buffer_size = 8M -language = @GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/english - -# security: -# using "localhost" in connects uses sockets by default -# skip-networking -bind-address = 127.0.0.1 - -log-bin -server-id = 1 - -# point the following paths to different dedicated disks -tmpdir = @GENTOO_PORTAGE_EPREFIX@/tmp/ -#log-update = @GENTOO_PORTAGE_EPREFIX@/path-to-dedicated-directory/hostname - -# you need the debug USE flag enabled to use the following directives, -# if needed, uncomment them, start the server and issue -# #tail -f @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.trace -# this will show you *exactly* what's happening in your server ;) - -#log = @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql -#gdb -#debug = d:t:i:o,/tmp/mysqld.trace -#one-thread - -# uncomment the following directives if you are using BDB tables -#bdb_cache_size = 4M -#bdb_max_lock = 10000 - -# the following is the InnoDB configuration -# if you wish to disable innodb instead -# uncomment just the next line -#skip-innodb -# -# the rest of the innodb config follows: -# don't eat too much memory, we're trying to be safe on 64Mb boxes -# you might want to bump this up a bit on boxes with more RAM -innodb_buffer_pool_size = 16M -# this is the default, increase it if you have lots of tables -innodb_additional_mem_pool_size = 2M -# -# i'd like to use @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/innodb, but that is seen as a database :-( -# and upstream wants things to be under @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/, so that's the route -# we have to take for the moment -#innodb_data_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -#innodb_log_group_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -# you may wish to change this size to be more suitable for your system -# the max is there to avoid run-away growth on your machine -innodb_data_file_path = ibdata1:10M:autoextend:max:128M -# we keep this at around 25% of of innodb_buffer_pool_size -# sensible values range from 1MB to (1/innodb_log_files_in_group*innodb_buffer_pool_size) -innodb_log_file_size = 5M -# this is the default, increase it if you have very large transactions going on -innodb_log_buffer_size = 8M -# this is the default and won't hurt you -# you shouldn't need to tweak it -innodb_log_files_in_group=2 -# see the innodb config docs, the other options are not always safe -innodb_flush_log_at_trx_commit = 1 -innodb_lock_wait_timeout = 50 -innodb_file_per_table - -[mysqldump] -quick -max_allowed_packet = 16M - -[mysql] -# uncomment the next directive if you are not familiar with SQL -#safe-updates - -[isamchk] -key_buffer = 20M -sort_buffer_size = 20M -read_buffer = 2M -write_buffer = 2M - -[myisamchk] -key_buffer = 20M -sort_buffer_size = 20M -read_buffer = 2M -write_buffer = 2M - -[mysqlhotcopy] -interactive-timeout diff --git a/dev-db/mysql/files/my.cnf-5.5 b/dev-db/mysql/files/my.cnf-5.5 deleted file mode 100644 index 24d6deb..0000000 --- a/dev-db/mysql/files/my.cnf-5.5 +++ /dev/null @@ -1,148 +0,0 @@ -# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/my.cnf: The global mysql configuration file. -# $Id$ - -# The following options will be passed to all MySQL clients -[client] -#password = your_password -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock - -[mysql] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqladmin] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlcheck] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqldump] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlimport] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlshow] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[myisamchk] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -[myisampack] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -# use [safe_mysqld] with mysql-3 -[mysqld_safe] -err-log = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysql.err - -# add a section [mysqld-4.1] or [mysqld-5.0] for specific configurations -[mysqld] -character-set-server = utf8 -user = mysql -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock -pid-file = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.pid -log-error = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysqld.err -basedir = @GENTOO_PORTAGE_EPREFIX@/usr -datadir = @DATADIR@ -skip-external-locking -key_buffer_size = 16M -max_allowed_packet = 1M -table_open_cache = 64 -sort_buffer_size = 512K -net_buffer_length = 8K -read_buffer_size = 256K -read_rnd_buffer_size = 512K -myisam_sort_buffer_size = 8M -lc_messages_dir = @GENTOO_PORTAGE_EPREFIX@/usr/share/mysql -#Set this to your desired error message language -lc_messages = en_US - -# security: -# using "localhost" in connects uses sockets by default -# skip-networking -bind-address = 127.0.0.1 - -log-bin -server-id = 1 - -# point the following paths to different dedicated disks -tmpdir = @GENTOO_PORTAGE_EPREFIX@/tmp/ -#log-update = @GENTOO_PORTAGE_EPREFIX@/path-to-dedicated-directory/hostname - -# you need the debug USE flag enabled to use the following directives, -# if needed, uncomment them, start the server and issue -# #tail -f @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.trace -# this will show you *exactly* what's happening in your server ;) - -#log = @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql -#gdb -#debug = d:t:i:o,/tmp/mysqld.trace -#one-thread - -# the following is the InnoDB configuration -# if you wish to disable innodb instead -# uncomment just the next line -#skip-innodb -# -# the rest of the innodb config follows: -# don't eat too much memory, we're trying to be safe on 64Mb boxes -# you might want to bump this up a bit on boxes with more RAM -innodb_buffer_pool_size = 16M -# this is the default, increase it if you have lots of tables -innodb_additional_mem_pool_size = 2M -# -# i'd like to use @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/innodb, but that is seen as a database :-( -# and upstream wants things to be under @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/, so that's the route -# we have to take for the moment -#innodb_data_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -#innodb_log_group_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -# you may wish to change this size to be more suitable for your system -# the max is there to avoid run-away growth on your machine -innodb_data_file_path = ibdata1:10M:autoextend:max:128M -# we keep this at around 25% of of innodb_buffer_pool_size -# sensible values range from 1MB to (1/innodb_log_files_in_group*innodb_buffer_pool_size) -innodb_log_file_size = 5M -# this is the default, increase it if you have very large transactions going on -innodb_log_buffer_size = 8M -# this is the default and won't hurt you -# you shouldn't need to tweak it -innodb_log_files_in_group=2 -# see the innodb config docs, the other options are not always safe -innodb_flush_log_at_trx_commit = 1 -innodb_lock_wait_timeout = 50 -innodb_file_per_table - -# Uncomment this to get FEDERATED engine support -#plugin-load=federated=ha_federated.so -#loose-federated - -[mysqldump] -quick -max_allowed_packet = 16M - -[mysql] -# uncomment the next directive if you are not familiar with SQL -#safe-updates - -[isamchk] -key_buffer_size = 20M -sort_buffer_size = 20M -read_buffer = 2M -write_buffer = 2M - -[myisamchk] -key_buffer_size = 20M -sort_buffer_size = 20M -read_buffer_size = 2M -write_buffer_size = 2M - -[mysqlhotcopy] -interactive-timeout - diff --git a/dev-db/mysql/files/my.cnf-5.6 b/dev-db/mysql/files/my.cnf-5.6 deleted file mode 100644 index ee85e99..0000000 --- a/dev-db/mysql/files/my.cnf-5.6 +++ /dev/null @@ -1,140 +0,0 @@ -# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/my.cnf: The global mysql configuration file. -# $Id$ - -# The following options will be passed to all MySQL clients -[client] -#password = your_password -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock - -[mysql] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqladmin] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlcheck] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqldump] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlimport] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlshow] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[myisamchk] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -[myisampack] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -# use [safe_mysqld] with mysql-3 -[mysqld_safe] -err-log = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysql.err - -# add a section [mysqld-4.1] or [mysqld-5.0] for specific configurations -[mysqld] -character-set-server = utf8 -user = mysql -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock -pid-file = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.pid -log-error = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysqld.err -basedir = @GENTOO_PORTAGE_EPREFIX@/usr -datadir = @DATADIR@ -skip-external-locking -key_buffer_size = 16M -max_allowed_packet = 4M -table_open_cache = 400 -sort_buffer_size = 512K -net_buffer_length = 16K -read_buffer_size = 256K -read_rnd_buffer_size = 512K -myisam_sort_buffer_size = 8M -lc_messages_dir = @GENTOO_PORTAGE_EPREFIX@/usr/share/mysql -#Set this to your desired error message language -lc_messages = en_US - -# security: -# using "localhost" in connects uses sockets by default -# skip-networking -bind-address = 127.0.0.1 - -log-bin -server-id = 1 - -# point the following paths to different dedicated disks -tmpdir = @GENTOO_PORTAGE_EPREFIX@/tmp/ -#log-update = @GENTOO_PORTAGE_EPREFIX@/path-to-dedicated-directory/hostname - -# you need the debug USE flag enabled to use the following directives, -# if needed, uncomment them, start the server and issue -# #tail -f @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.trace -# this will show you *exactly* what's happening in your server ;) - -#log = @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql -#gdb -#debug = d:t:i:o,/tmp/mysqld.trace -#one-thread - -# the rest of the innodb config follows: -# don't eat too much memory, we're trying to be safe on 64Mb boxes -# you might want to bump this up a bit on boxes with more RAM -innodb_buffer_pool_size = 128M -# -# i'd like to use @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/innodb, but that is seen as a database :-( -# and upstream wants things to be under @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/, so that's the route -# we have to take for the moment -#innodb_data_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -#innodb_log_group_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -# you may wish to change this size to be more suitable for your system -# the max is there to avoid run-away growth on your machine -innodb_data_file_path = ibdata1:10M:autoextend:max:128M -# we keep this at around 25% of of innodb_buffer_pool_size -# sensible values range from 1MB to (1/innodb_log_files_in_group*innodb_buffer_pool_size) -innodb_log_file_size = 48M -# this is the default, increase it if you have very large transactions going on -innodb_log_buffer_size = 8M -# this is the default and won't hurt you -# you shouldn't need to tweak it -innodb_log_files_in_group=2 -# see the innodb config docs, the other options are not always safe -innodb_flush_log_at_trx_commit = 1 -innodb_lock_wait_timeout = 50 -innodb_file_per_table - -# Uncomment this to get FEDERATED engine support -#plugin-load=federated=ha_federated.so -loose-federated - -[mysqldump] -quick -max_allowed_packet = 16M - -[mysql] -# uncomment the next directive if you are not familiar with SQL -#safe-updates - -[isamchk] -key_buffer_size = 20M -sort_buffer_size = 20M -read_buffer = 2M -write_buffer = 2M - -[myisamchk] -key_buffer_size = 20M -sort_buffer_size = 20M -read_buffer_size = 2M -write_buffer_size = 2M - -[mysqlhotcopy] -interactive-timeout diff --git a/dev-db/mysql/files/my.cnf-5.7 b/dev-db/mysql/files/my.cnf-5.7 deleted file mode 100644 index 571ebf0..0000000 --- a/dev-db/mysql/files/my.cnf-5.7 +++ /dev/null @@ -1,3 +0,0 @@ -# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/my.cnf: The global mysql configuration file. - -!includedir @GENTOO_PORTAGE_EPREFIX@/etc/mysql/mysql.d diff --git a/dev-db/mysql/files/my.cnf.distro-client b/dev-db/mysql/files/my.cnf.distro-client deleted file mode 100644 index 8bf1836..0000000 --- a/dev-db/mysql/files/my.cnf.distro-client +++ /dev/null @@ -1,21 +0,0 @@ -# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/50-distro-client.cnf: The global mysql configuration file. - -# The following options will be passed to all MySQL clients -[client] -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock -character-sets-dir = @GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysql] -# uncomment the next directive if you are not familiar with SQL -#safe-updates - -[mysqldump] -quick -max_allowed_packet = 16M - -[myisamchk] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -[myisampack] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets diff --git a/dev-db/mysql/files/my.cnf.distro-server b/dev-db/mysql/files/my.cnf.distro-server deleted file mode 100644 index d4ed30c..0000000 --- a/dev-db/mysql/files/my.cnf.distro-server +++ /dev/null @@ -1,28 +0,0 @@ -# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/50-distro-server.cnf: The global mysql configuration file. - -# add a section [mysqld-4.1] or [mysqld-5.0] for specific configurations -[mysqld] -character-set-server = utf8 -user = mysql -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock -pid-file = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysql.pid -log-error = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysqld.err -basedir = @GENTOO_PORTAGE_EPREFIX@/usr -datadir = @DATADIR@ -skip-external-locking -lc_messages_dir = @GENTOO_PORTAGE_EPREFIX@/usr/share/mysql -#Set this to your desired error message language -lc_messages = en_US - -# security: -# using "localhost" in connects uses sockets by default -# skip-networking -bind-address = 127.0.0.1 - -log-bin -server-id = 1 - -# point the following paths to different dedicated disks -tmpdir = @GENTOO_PORTAGE_EPREFIX@/tmp/ -#log-update = @GENTOO_PORTAGE_EPREFIX@/path-to-dedicated-directory/hostname diff --git a/dev-db/mysql/files/mysql.init b/dev-db/mysql/files/mysql.init deleted file mode 100644 index 04f8027..0000000 --- a/dev-db/mysql/files/mysql.init +++ /dev/null @@ -1,37 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2004 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -depend() { - need net - use dns -} - -checkconfig() { - if [ ! -f /etc/mysql/my.cnf ] ; then - eerror "No /etc/mysql/my.cnf file exists!" - fi - - dir=`my_print_defaults mysqld | grep -- --datadir | sed -e "s|^.*=\(.*\)|\1|"` - - if [ ! -d $dir/mysql ] ; then - eerror "You dont appear to have the mysql database installed yet." - eerror "Please run /usr/bin/mysql_install_db to have this done..." - return 1 - fi -} - -start() { - checkconfig || return 1 - ebegin "Starting mysqld" - /usr/bin/safe_mysqld >/dev/null 2>&1 & - eend $? -} - -stop () { - ebegin "Stopping mysqld" - start-stop-daemon --stop --quiet \ - --pidfile=/var/run/mysqld/mysqld.pid --retry 20 - eend $? -} diff --git a/dev-db/mysql/metadata.xml b/dev-db/mysql/metadata.xml deleted file mode 100644 index 59b0429..0000000 --- a/dev-db/mysql/metadata.xml +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> -<pkgmetadata> - <maintainer type="project"> - <email>mysql-bugs@gentoo.org</email> - <name>MySQL</name> - </maintainer> -<use> - <flag name="big-tables">Make tables contain up to 1.844E+19 rows</flag> - <flag name="client-libs">Build the client libraries from the server package instead of the C Connector packages</flag> - <flag name="cluster">Add support for NDB clustering (deprecated)</flag> - <flag name="community">Enables the community features from upstream.</flag> - <flag name="embedded">Build embedded server (libmysqld)</flag> - <flag name="extraengine">Add support for alternative storage engines (Archive, CSV, Blackhole, Federated(X), Partition)</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="libressl">Enable SSL connections and crypto functions using <pkg>dev-libs/libressl</pkg></flag> - <flag name="max-idx-128">Raise the max index per table limit from 64 to 128</flag> - <flag name="minimal">Install client programs only, no server</flag> - <flag name="numa">Enable NUMA support using sys-process/numactl (NUMA kernel support is also required)</flag> - <flag name="pbxt">Add experimental support for PBXT storage engine</flag> - <flag name="profiling">Add support for statement profiling (requires USE=community).</flag> - <flag name="raid">Deprecated option, removed in the 5.0 series</flag> - <flag name="server">Build the server program</flag> - <flag name="systemtap">Build support for profiling and tracing using <pkg>dev-util/systemtap</pkg></flag> - <flag name="test">Install upstream testsuites for end use.</flag> - <flag name="xtradb">Add experimental support for Percona's InnoDB replacement: XtraDB</flag> - <flag name="yassl">Enable SSL connections and crypto functions using the bundled yaSSL</flag> -</use> -</pkgmetadata> diff --git a/dev-db/mysql/mysql-4.0.27-r1.ebuild b/dev-db/mysql/mysql-4.0.27-r1.ebuild deleted file mode 100644 index 0704dfc..0000000 --- a/dev-db/mysql/mysql-4.0.27-r1.ebuild +++ /dev/null @@ -1,34 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -MY_EXTRAS_VER="20070105" -SERVER_URI="mirror://mysql/Downloads/MySQL-${PV%.*}/mysql-${PV//_/-}.tar.gz" - -inherit mysql -# only to make repoman happy. it is really set in the eclass -IUSE="$IUSE" - -# REMEMBER: also update eclass/mysql*.eclass before committing! -KEYWORDS="amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86" - -src_test() { - einfo ">>> Test phase [check]: ${CATEGORY}/${PF}" - make check || die "make check failed" - if ! use "minimal" ; then - einfo ">>> Test phase [test]: ${CATEGORY}/${PF}" - local retstatus - addpredict /this-dir-does-not-exist/t9.MYI - - cd mysql-test - sed -i -e "s|PORT=3306|PORT=3307|g" mysql-test-run - ./mysql-test-run - retstatus=$? - - # Just to be sure ;) - pkill -9 -f "${S}/ndb" 2>/dev/null - pkill -9 -f "${S}/sql" 2>/dev/null - [[ $retstatus -eq 0 ]] || die "make test failed" - else - einfo "Skipping server tests due to minimal build." - fi -} diff --git a/dev-db/mysql/mysql-4.1.22-r1.ebuild b/dev-db/mysql/mysql-4.1.22-r1.ebuild deleted file mode 100644 index 6c1da2e..0000000 --- a/dev-db/mysql/mysql-4.1.22-r1.ebuild +++ /dev/null @@ -1,43 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -MY_EXTRAS_VER="20090228-2228Z" -SERVER_URI="mirror://mysql/Downloads/MySQL-${PV%.*}/mysql-${PV//_/-}.tar.gz" - -inherit mysql -# only to make repoman happy. it is really set in the eclass -IUSE="$IUSE" - -# REMEMBER: also update eclass/mysql*.eclass before committing! -KEYWORDS="amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd" - -src_test() { - einfo ">>> Test phase [check]: ${CATEGORY}/${PF}" - make check || die "make check failed" - if ! use "minimal" ; then - einfo ">>> Test phase [test]: ${CATEGORY}/${PF}" - local retstatus - local testopts="--force" - - # sandbox makes ndbd zombie - has "sandbox" ${FEATURES} && testopts="${testopts} --skip-ndb" - - addpredict /this-dir-does-not-exist/t9.MYI - - cd mysql-test - sed -i -e "s|3306|3307|g" mysql-test-run.pl - - # from Makefile.am: - retstatus=1 - ./mysql-test-run.pl ${testopts} \ - && ./mysql-test-run.pl ${testopts} --ps-protocol \ - && retstatus=0 - - # Just to be sure ;) - pkill -9 -f "${S}/ndb" 2>/dev/null - pkill -9 -f "${S}/sql" 2>/dev/null - [[ $retstatus -eq 0 ]] || die "test failed" - else - einfo "Skipping server tests due to minimal build." - fi -} diff --git a/dev-db/mysql/mysql-5.0.96.ebuild b/dev-db/mysql/mysql-5.0.96.ebuild deleted file mode 100644 index 744c13d..0000000 --- a/dev-db/mysql/mysql-5.0.96.ebuild +++ /dev/null @@ -1,212 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="4" -MY_EXTRAS_VER="20120401-2131Z" - -inherit toolchain-funcs mysql -# 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 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-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="" - -# 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 - -# Official test instructions: -# USE='berkdb -cluster embedded extraengine perl ssl community' \ -# FEATURES='test userpriv -usersandbox' \ -# ebuild mysql-X.X.XX.ebuild \ -# digest clean package -src_test() { - # 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" - - emake check || die "make check failed" - 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" - cd "${S}" - einfo ">>> Test phase [test]: ${CATEGORY}/${PF}" - local retstatus_ns - local retstatus_ps - local t - addpredict /this-dir-does-not-exist/t9.MYI - - # Ensure that parallel runs don't die - export MTR_BUILD_THREAD="$((${RANDOM} % 100))" - - # archive_gis really sucks a lot, but it's only relevant for the - # USE=extraengines case - case ${PV} in - 5.0.42) - mysql_disable_test "archive_gis" "Totally broken in 5.0.42" - ;; - - 5.0.4[3-9]|5.0.[56]*|5.0.70|5.0.87) - [ "$(tc-endian)" == "big" ] && \ - mysql_disable_test \ - "archive_gis" \ - "Broken in 5.0.43-70 and 5.0.87 on big-endian boxes only" - ;; - esac - - # This was a slight testcase breakage when the read_only security issue - # was fixed. - case ${PV} in - 5.0.54|5.0.51*) - mysql_disable_test \ - "read_only" \ - "Broken in 5.0.51-54, output in wrong order" - ;; - esac - - # Ditto to read_only - [ "${PV}" == "5.0.51a" ] && \ - mysql_disable_test \ - "view" \ - "Broken in 5.0.51, output in wrong order" - - # x86-specific, OOM issue with some subselects on low memory servers - [ "${PV}" == "5.0.54" ] && \ - [ "${ARCH/x86}" != "${ARCH}" ] && \ - mysql_disable_test \ - "subselect" \ - "Testcase needs tuning on x86 for oom condition" - - # Broke with the YaSSL security issue that didn't affect Gentoo. - [ "${PV}" == "5.0.56" ] && \ - for t in openssl_1 rpl_openssl rpl_ssl ssl \ - ssl_8k_key ssl_compress ssl_connect ; do \ - mysql_disable_test \ - "$t" \ - "OpenSSL tests broken on 5.0.56" - done - - # New test was broken in first time - # Upstream bug 41066 - # http://bugs.mysql.com/bug.php?id=41066 - [ "${PV}" == "5.0.72" ] && \ - mysql_disable_test \ - "status2" \ - "Broken in 5.0.72, new test is broken, upstream bug #41066" - - # The entire 5.0 series has pre-generated SSL certificates, they have - # mostly expired now. ${S}/mysql-tests/std-data/*.pem - # The certs really SHOULD be generated for the tests, so that they are - # not expiring like this. We cannot do so ourselves as the tests look - # closely as the cert path data, and we do not have the CA key to regen - # ourselves. Alternatively, upstream should generate them with at least - # 50-year validity. - # - # Known expiry points: - # 4.1.*, 5.0.0-5.0.22, 5.1.7: Expires 2013/09/09 - # 5.0.23-5.0.77, 5.1.7-5.1.22?: Expires 2009/01/27 - # 5.0.78-5.0.90, 5.1.??-5.1.42: Expires 2010/01/28 - # - # mysql-test/std_data/untrusted-cacert.pem is MEANT to be - # expired/invalid. - case ${PV} in - 5.0.*|5.1.*) - for t in openssl_1 rpl_openssl rpl.rpl_ssl rpl.rpl_ssl1 ssl ssl_8k_key \ - ssl_compress ssl_connect ; do \ - mysql_disable_test \ - "$t" \ - "These OpenSSL tests break due to expired certificates" - done - ;; - esac - - # These are also failing in MySQL 5.0 for now, and are believed to be - # false positives: - # - # main.mysql_comment, main.mysql_upgrade: - # fails due to USE=-latin1 / utf8 default - # - # main.mysql_client_test: - # segfaults at random under Portage only, suspect resource limits. - case ${PV} in - 5.0.*) - for t in main.mysql_client_test main.mysql_comments main.mysql_upgrade; do - mysql_disable_test "$t" "False positives in Gentoo" - done - ;; - esac - - use profiling && use community \ - || mysql_disable_test main.profiling \ - "Profiling test needs profiling support" - - if [ "${PN}" == "mariadb" ]; then - for t in \ - parts.part_supported_sql_func_ndb \ - parts.partition_auto_increment_ndb ; do - mysql_disable_test $t "ndb not supported in mariadb" - done - fi - - case $PV in - 5.0.91) - for t in archive archive_gis archive-big \ - federated_archive mysqldump-max \ - ; do - mysql_disable_test $t "Broken in $PV" - done - ;; - 5.0.96) - for t in \ - client_xml compress connect ctype_recoding drop \ - federated grant information_schema \ - information_schema_db innodb lowercase_table \ - lowercase_utf8 mysql-bug41486 mysql-bug45236 mysql \ - mysqlcheck mysqldump-max mysqldump mysqldump_restore \ - mysqlshow ps ps_1general rename rpl000009 rpl_ddl \ - rpl_delete_all rpl_drop_db rpl_dual_pos_advance \ - rpl_error_ignored_table rpl_filter_tables_not_exist \ - rpl_replicate_do rpl_trigger_not_windows select \ - show_check sp system_mysql_db system_mysql_db_fix30020 \ - system_mysql_db_fix40123 view \ - ; do - mysql_disable_test $t "Broken in $PV" - done - ;; - esac - - # create directories because mysqladmin might make out of order - mkdir -p "${S}"/mysql-test/var-{ps,ns}{,/log} - - # We run the test protocols seperately - emake test-ns force="--force --vardir=${S}/mysql-test/var-ns" - retstatus_ns=$? - [[ $retstatus_ns -eq 0 ]] || eerror "test-ns failed" - has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox" - - emake test-ps force="--force --vardir=${S}/mysql-test/var-ps" - retstatus_ps=$? - [[ $retstatus_ps -eq 0 ]] || eerror "test-ps failed" - has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox" - - # Cleanup is important for these testcases. - pkill -9 -f "${S}/ndb" 2>/dev/null - pkill -9 -f "${S}/sql" 2>/dev/null - failures="" - [[ $retstatus_ns -eq 0 ]] || failures="${failures} test-ns" - [[ $retstatus_ps -eq 0 ]] || failures="${failures} test-ps" - 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/mysql/mysql-5.1.73-r1.ebuild b/dev-db/mysql/mysql-5.1.73-r1.ebuild deleted file mode 100644 index 22b72ba..0000000 --- a/dev-db/mysql/mysql-5.1.73-r1.ebuild +++ /dev/null @@ -1,264 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="4" - -MY_EXTRAS_VER="20140514-0124Z" -# PBXT -PBXT_VERSION='1.0.11-6-pre-ga' -# XtraDB -PERCONA_VER='5.1.45-10' XTRADB_VER='1.0.6-10' - -# Build type -BUILD="autotools" - -inherit toolchain-funcs mysql-v2 - -# 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 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~ppc-macos ~x64-macos ~x86-solaris" - -# When MY_EXTRAS is bumped, the index should be revised to exclude these. -# This is often broken still -EPATCH_EXCLUDE='' - -# Most of these are in the eclass -DEPEND="|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 ) - >=sys-devel/libtool-2.2.10" -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() { - sed -i \ - -e '/^noinst_PROGRAMS/s/basic-t//g' \ - "${S}"/unittest/mytap/t/Makefile.am - mysql-v2_src_prepare -} - -# Official test instructions: -# USE='berkdb -cluster embedded extraengine perl ssl community' \ -# FEATURES='test userpriv -usersandbox' \ -# ebuild mysql-X.X.XX.ebuild \ -# digest clean package -src_test() { - # 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" - - emake check || die "make check failed" - 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" - cd "${S}" - einfo ">>> Test phase [test]: ${CATEGORY}/${PF}" - local retstatus_unit - local retstatus_ns - local retstatus_ps - local t - addpredict /this-dir-does-not-exist/t9.MYI - - # Ensure that parallel runs don't die - export MTR_BUILD_THREAD="$((${RANDOM} % 100))" - - # archive_gis really sucks a lot, but it's only relevant for the - # USE=extraengines case - case ${PV} in - 5.0.42) - mysql-v2_disable_test "archive_gis" "Totally broken in 5.0.42" - ;; - - 5.0.4[3-9]|5.0.[56]*|5.0.70|5.0.87) - [ "$(tc-endian)" == "big" ] && \ - mysql-v2_disable_test \ - "archive_gis" \ - "Broken in 5.0.43-70 and 5.0.87 on big-endian boxes only" - ;; - esac - - # This was a slight testcase breakage when the read_only security issue - # was fixed. - case ${PV} in - 5.0.54|5.0.51*) - mysql-v2_disable_test \ - "read_only" \ - "Broken in 5.0.51-54, output in wrong order" - ;; - esac - - # Ditto to read_only - [ "${PV}" == "5.0.51a" ] && \ - mysql-v2_disable_test \ - "view" \ - "Broken in 5.0.51, output in wrong order" - - # x86-specific, OOM issue with some subselects on low memory servers - [ "${PV}" == "5.0.54" ] && \ - [ "${ARCH/x86}" != "${ARCH}" ] && \ - mysql-v2_disable_test \ - "subselect" \ - "Testcase needs tuning on x86 for oom condition" - - # Broke with the YaSSL security issue that didn't affect Gentoo. - [ "${PV}" == "5.0.56" ] && \ - for t in openssl_1 rpl_openssl rpl_ssl ssl \ - ssl_8k_key ssl_compress ssl_connect ; do \ - mysql-v2_disable_test \ - "$t" \ - "OpenSSL tests broken on 5.0.56" - done - - # New test was broken in first time - # Upstream bug 41066 - # http://bugs.mysql.com/bug.php?id=41066 - [ "${PV}" == "5.0.72" ] && \ - mysql-v2_disable_test \ - "status2" \ - "Broken in 5.0.72, new test is broken, upstream bug #41066" - - # The entire 5.0 series has pre-generated SSL certificates, they have - # mostly expired now. ${S}/mysql-tests/std-data/*.pem - # The certs really SHOULD be generated for the tests, so that they are - # not expiring like this. We cannot do so ourselves as the tests look - # closely as the cert path data, and we do not have the CA key to regen - # ourselves. Alternatively, upstream should generate them with at least - # 50-year validity. - # - # Known expiry points: - # 4.1.*, 5.0.0-5.0.22, 5.1.7: Expires 2013/09/09 - # 5.0.23-5.0.77, 5.1.7-5.1.22?: Expires 2009/01/27 - # 5.0.78-5.0.90, 5.1.??-5.1.42: Expires 2010/01/28 - # - # mysql-test/std_data/untrusted-cacert.pem is MEANT to be - # expired/invalid. - case ${PV} in - 5.0.*|5.1.*|5.4.*|5.5.*) - for t in openssl_1 rpl_openssl rpl.rpl_ssl rpl.rpl_ssl1 ssl ssl_8k_key \ - ssl_compress ssl_connect rpl.rpl_heartbeat_ssl ; do \ - mysql-v2_disable_test \ - "$t" \ - "These OpenSSL tests break due to expired certificates" - done - ;; - esac - - # These are also failing in MySQL 5.1 for now, and are believed to be - # false positives: - # - # main.mysql_comment, main.mysql_upgrade, main.information_schema, - # funcs_1.is_columns_mysql funcs_1.is_tables_mysql funcs_1.is_triggers: - # fails due to USE=-latin1 / utf8 default - # - # main.mysql_client_test: - # segfaults at random under Portage only, suspect resource limits. - # - # main.not_partition: - # Failure reason unknown at this time, must resolve before package.mask - # removal FIXME - case ${PV} in - 5.1.*|5.4.*|5.5.*) - for t in main.mysql_client_test main.mysql_comments \ - main.mysql_upgrade \ - main.information_schema \ - main.not_partition funcs_1.is_columns_mysql \ - funcs_1.is_tables_mysql funcs_1.is_triggers; do - mysql-v2_disable_test "$t" "False positives in Gentoo" - done - ;; - esac - - # New failures in 5.1.50/5.1.51, reported by jmbsvicetto. - # These tests are picking up a 'connect-timeout' config from somewhere, - # which is not valid, and since it does not have 'loose-' in front of - # it, it's causing a failure - case ${PV} in - 5.1.5*|5.4.*|5.5.*|6*) - for t in rpl.rpl_mysql_upgrade main.log_tables_upgrade ; do - mysql-v2_disable_test "$t" \ - "False positives in Gentoo: connect-timeout" - done - ;; - esac - - use profiling && use community \ - || mysql-v2_disable_test main.profiling \ - "Profiling test needs profiling support" - - if [ "${PN}" == "mariadb" ]; then - for t in \ - parts.part_supported_sql_func_ndb \ - parts.partition_auto_increment_ndb ; do - mysql-v2_disable_test $t "ndb not supported in mariadb" - done - fi - - # This fail with XtraDB in place of normal InnoDB - # TODO: test if they are broken with the rest of the Percona patches - if xtradb_patch_available && use xtradb ; then - for t in main.innodb innodb.innodb_bug51378 \ - main.information_schema_db main.mysqlshow \ - main.innodb-autoinc main.innodb_bug21704 \ - main.innodb_bug44369 main.innodb_bug46000 \ - main.index_merge_innodb \ - innodb.innodb innodb.innodb_misc1 innodb.innodb_bug52663 \ - innodb.innodb-autoinc innodb.innodb-autoinc-44030 \ - innodb.innodb_bug21704 innodb.innodb_bug44369 \ - innodb.innodb_bug46000 innodb.innodb_bug48024 \ - innodb.innodb_bug49164 innodb.innodb_bug51920 \ - innodb.innodb_bug54044 \ - ; do - mysql-v2_disable_test $t "tests broken in xtradb" - done - fi - - if ! use extraengine ; then - # bug 332565 - for t in main.range ; do - mysql-v2_disable_test $t "Test $t requires USE=extraengine" - done - # bug 401673 - for t in federated.federated_plugin ; do - mysql-v2_disable_test $t "Test $t requires USE=extraengine (Need federated engine)" - done - fi - - # create directories because mysqladmin might make out of order - mkdir -p "${S}"/mysql-test/var-{ps,ns}{,/log} - - # We run the test protocols seperately - emake test-unit - retstatus_unit=$? - [[ $retstatus_unit -eq 0 ]] || eerror "test-unit failed" - - emake test-ns force="--force --vardir=${S}/mysql-test/var-ns" - retstatus_ns=$? - [[ $retstatus_ns -eq 0 ]] || eerror "test-ns failed" - has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox" - - emake test-ps force="--force --vardir=${S}/mysql-test/var-ps" - retstatus_ps=$? - [[ $retstatus_ps -eq 0 ]] || eerror "test-ps failed" - has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox" - - # TODO: - # When upstream enables the pr and nr testsuites, we need those as well. - - # 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_ns -eq 0 ]] || failures="${failures} test-ns" - [[ $retstatus_ps -eq 0 ]] || failures="${failures} test-ps" - 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/mysql/mysql-5.5.62.ebuild b/dev-db/mysql/mysql-5.5.62.ebuild deleted file mode 100644 index cb22969..0000000 --- a/dev-db/mysql/mysql-5.5.62.ebuild +++ /dev/null @@ -1,797 +0,0 @@ -# Copyright 1999-2018 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="6" -MY_EXTRAS_VER="20180804-2323Z" -SUBSLOT="18" - -# Keeping eutils in EAPI=6 for emktemp in pkg_config - -inherit eutils flag-o-matic prefix toolchain-funcs user cmake-utils multilib-build - -SRC_URI="https://cdn.mysql.com/Downloads/MySQL-5.5/${P}.tar.gz - https://downloads.mysql.com/archives/MySQL-5.5/${P}.tar.gz" -# Gentoo patches to MySQL -if [[ "${MY_EXTRAS_VER}" != "live" && "${MY_EXTRAS_VER}" != "none" ]]; then - SRC_URI="${SRC_URI} - mirror://gentoo/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://gitweb.gentoo.org/proj/mysql-extras.git/snapshot/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~grknight/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~robbat2/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~jmbsvicetto/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2" -fi - -HOMEPAGE="https://mysql.com/" -DESCRIPTION="An enhanced, drop-in replacement for MySQL" -LICENSE="GPL-2" -SLOT="0/${SUBSLOT:-0}" -IUSE="bindist client-libs debug extraengine jemalloc latin1 libressl - +perl profiling selinux +server static static-libs systemtap tcmalloc - test yassl" - -# Tests always fail when libressl is enabled due to hard-coded ciphers in the tests -RESTRICT="!bindist? ( bindist ) libressl? ( test )" - -REQUIRED_USE="?? ( tcmalloc jemalloc ) - static? ( yassl )" - -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris" - -# Shorten the path because the socket path length must be shorter than 107 chars -# and we will run a mysql server during test phase -S="${WORKDIR}/mysql" - -if [[ "${MY_EXTRAS_VER}" == "live" ]] ; then - MY_PATCH_DIR="${WORKDIR%/}/mysql-extras" - inherit git-r3 - EGIT_REPO_URI="git://anongit.gentoo.org/proj/mysql-extras.git" - EGIT_CHECKOUT_DIR="${WORKDIR%/}/mysql-extras" - EGIT_CLONE_TYPE=shallow -else - MY_PATCH_DIR="${WORKDIR%/}/mysql-extras-${MY_EXTRAS_VER}" -fi - -PATCHES=( - "${MY_PATCH_DIR}/01050_all_mysql_config_cleanup-5.5.patch" - "${MY_PATCH_DIR}/02040_all_embedded-library-shared-5.5.10.patch" - "${MY_PATCH_DIR}/20001_all_fix-minimal-build-cmake-mysql-5.5.41.patch" - "${MY_PATCH_DIR}/20002_all_mysql-va-list.patch" - "${MY_PATCH_DIR}/20006_all_cmake_elib-mysql-5.5.53.patch" - "${MY_PATCH_DIR}/20007_all_cmake-debug-werror-5.6.22.patch" - "${MY_PATCH_DIR}/20008_all_mysql-tzinfo-symlink-5.6.37.patch" - "${MY_PATCH_DIR}/20009_all_mysql_myodbc_symbol_fix-5.5.38.patch" - "${MY_PATCH_DIR}/20018_all_mysql-5.5.60-without-clientlibs-tools.patch" - "${MY_PATCH_DIR}/20027_all_mysql-5.5-perl5.26-includes.patch" -) - -# Be warned, *DEPEND are version-dependant -# These are used for both runtime and compiletime -COMMON_DEPEND=" - kernel_linux? ( - sys-process/procps:0= - dev-libs/libaio:0= - ) - >=sys-apps/sed-4 - >=sys-apps/texinfo-4.7-r1 - jemalloc? ( dev-libs/jemalloc:0= ) - tcmalloc? ( dev-util/google-perftools:0= ) - systemtap? ( >=dev-util/systemtap-1.3:0= ) - !yassl? ( - !libressl? ( dev-libs/openssl:0= !>=dev-libs/openssl-1.1 ) - libressl? ( dev-libs/libressl:0= ) - ) - >=sys-libs/zlib-1.2.3:0= - sys-libs/ncurses:0= - !bindist? ( - >=sys-libs/readline-4.1:0= - ) - !client-libs? ( dev-db/mysql-connector-c[${MULTILIB_USEDEP},static-libs?] ) -" -DEPEND="virtual/yacc - static? ( sys-libs/ncurses[static-libs] ) - || ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 ) - ${COMMON_DEPEND}" -RDEPEND="selinux? ( sec-policy/selinux-mysql ) - client-libs? ( !dev-db/mariadb-connector-c[mysqlcompat] !dev-db/mysql-connector-c ) - !dev-db/mariadb !dev-db/mariadb-galera !dev-db/percona-server !dev-db/mysql-cluster - server? ( !prefix? ( dev-db/mysql-init-scripts ) ) - ${COMMON_DEPEND} - perl? ( !dev-db/mytop - virtual/perl-Getopt-Long - dev-perl/TermReadKey - virtual/perl-Term-ANSIColor - virtual/perl-Time-HiRes ) -" -# For other stuff to bring us in -# dev-perl/DBD-mysql is needed by some scripts installed by MySQL -PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 )" - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - local GCC_MAJOR_SET=$(gcc-major-version) - local GCC_MINOR_SET=$(gcc-minor-version) - # Bug 565584. InnoDB now requires atomic functions introduced with gcc-4.7 on - # non x86{,_64} arches - if ! use amd64 && ! use x86 && [[ ${GCC_MAJOR_SET} -lt 4 || \ - ${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then - eerror "${PN} needs to be built with gcc-4.7 or later." - eerror "Please use gcc-config to switch to gcc-4.7 or later version." - die - fi - fi - if has test ${FEATURES} && \ - use server && ! has userpriv ${FEATURES} ; then - eerror "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root." - fi - - # This should come after all of the die statements - enewgroup mysql 60 || die "problem adding 'mysql' group" - enewuser mysql 60 -1 /dev/null mysql || die "problem adding 'mysql' user" -} - -pkg_postinst() { - # Make sure the vars are correctly initialized - mysql_init_vars - - # Create log directory securely if it does not exist - [[ -d "${ROOT}${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}${MY_LOGDIR}" - - if use server ; then - if [[ -z "${REPLACING_VERSIONS}" ]] ; then - einfo - elog "You might want to run:" - elog "\"emerge --config =${CATEGORY}/${PF}\"" - elog "if this is a new install." - elog - elog "If you are switching server implentations, you should run the" - elog "mysql_upgrade tool." - einfo - else - einfo - elog "If you are upgrading major versions, you should run the" - elog "mysql_upgrade tool." - einfo - fi - - einfo - elog "Be sure to edit the my.cnf file to activate your cluster settings." - elog "This should be done after running \"emerge --config =${CATEGORY}/${PF}\"" - elog "The first time the cluster is activated, you should add" - elog "--wsrep-new-cluster to the options in /etc/conf.d/mysql for one node." - elog "This option should then be removed for subsequent starts." - einfo - fi -} - -src_unpack() { - unpack ${A} - # Grab the patches - [[ "${MY_EXTRAS_VER}" == "live" ]] && S="${WORKDIR%/}/mysql-extras" git-r3_src_unpack - - mv -f "${WORKDIR%/}/${P}" "${S}" || die -} - -src_prepare() { - _disable_engine() { - echo > "${S%/}/storage/${1}/CMakeLists.txt" || die - } - - _disable_plugin() { - echo > "${S%/}/plugin/${1}/CMakeLists.txt" || die - } - - if use tcmalloc; then - echo "TARGET_LINK_LIBRARIES(mysqld tcmalloc)" >> "${S%/}/sql/CMakeLists.txt" || die - fi - - if use jemalloc; then - echo "TARGET_LINK_LIBRARIES(mysqld jemalloc)" >> "${S%/}/sql/CMakeLists.txt" || die - fi - - # Remove the centos and rhel selinux policies to support mysqld_safe under SELinux - if [[ -d "${S}/support-files/SELinux" ]] ; then - echo > "${S}/support-files/SELinux/CMakeLists.txt" || die - fi - - if use libressl ; then - sed -i 's/OPENSSL_MAJOR_VERSION STREQUAL "1"/OPENSSL_MAJOR_VERSION STREQUAL "2"/' \ - "${S}/cmake/ssl.cmake" || die - fi - - local plugin - local server_plugins=( semisync ) - local test_plugins=( audit_null daemon_example fulltext ) - if ! use server; then # These plugins are for the server - for plugin in "${server_plugins[@]}" ; do - _disable_plugin "${plugin}" - done - fi - - if ! use test; then # These plugins are only used during testing - for plugin in "${test_plugins[@]}" ; do - _disable_plugin "${plugin}" - done - fi - - # Don't build example - _disable_engine example - _disable_engine ndb - - cmake-utils_src_prepare -} - -src_configure(){ - # Bug #114895, bug #110149 - filter-flags "-O" "-O[01]" - - append-cxxflags -felide-constructors - - # bug #283926, with GCC4.4, this is required to get correct behavior. - append-flags -fno-strict-aliasing - - CMAKE_BUILD_TYPE="RelWithDebInfo" - - # debug hack wrt #497532 - mycmakeargs=( - -DCMAKE_C_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')" - -DCMAKE_CXX_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')" - -DCMAKE_INSTALL_PREFIX="${EPREFIX%/}/usr" - -DDEFAULT_SYSCONFDIR="${EPREFIX%/}/etc/mysql" - -DINSTALL_BINDIR=bin - -DINSTALL_DOCDIR=share/doc/${PF} - -DINSTALL_DOCREADMEDIR=share/doc/${PF} - -DINSTALL_INCLUDEDIR=include/mysql - -DINSTALL_INFODIR=share/info - -DINSTALL_LIBDIR=$(get_libdir) - -DINSTALL_MANDIR=share/man - -DINSTALL_MYSQLSHAREDIR=share/mysql - -DINSTALL_PLUGINDIR=$(get_libdir)/mysql/plugin - -DINSTALL_SCRIPTDIR=share/mysql/scripts - -DINSTALL_MYSQLDATADIR="${EPREFIX%/}/var/lib/mysql" - -DINSTALL_SBINDIR=sbin - -DINSTALL_SUPPORTFILESDIR="${EPREFIX%/}/usr/share/mysql" - -DCOMPILATION_COMMENT="Gentoo Linux ${PF}" - -DWITH_UNIT_TESTS=$(usex test ON OFF) - -DWITH_ZLIB=system - -DENABLED_LOCAL_INFILE=1 - -DMYSQL_UNIX_ADDR="${EPREFIX%/}/var/run/mysqld/mysqld.sock" - # The build forces this to be defined when cross-compiling. We pass it - # all the time for simplicity and to make sure it is actually correct. - -DSTACK_DIRECTION=$(tc-stack-grows-down && echo -1 || echo 1) - -DWITHOUT_CLIENTLIBS=YES - -DWITH_READLINE=$(usex bindist 1 0) - -DENABLE_DTRACE=$(usex systemtap) - ) - if use test ; then - mycmakeargs+=( -DINSTALL_MYSQLTESTDIR=share/mysql/mysql-test ) - else - mycmakeargs+=( -DINSTALL_MYSQLTESTDIR='' ) - fi - - if ! use yassl ; then - mycmakeargs+=( -DWITH_SSL=system ) - else - mycmakeargs+=( -DWITH_SSL=bundled ) - fi - - if use server ; then - - # Federated{,X} must be treated special otherwise they will not be built as plugins - if ! use extraengine ; then - mycmakeargs+=( - -DWITHOUT_FEDERATED_STORAGE_ENGINE=1 - -DWITHOUT_FEDERATEDX_STORAGE_ENGINE=1 ) - fi - - if [[ ( -n ${MYSQL_DEFAULT_CHARSET} ) && ( -n ${MYSQL_DEFAULT_COLLATION} ) ]]; then - ewarn "You are using a custom charset of ${MYSQL_DEFAULT_CHARSET}" - ewarn "and a collation of ${MYSQL_DEFAULT_COLLATION}." - ewarn "You MUST file bugs without these variables set." - - mycmakeargs+=( - -DDEFAULT_CHARSET=${MYSQL_DEFAULT_CHARSET} - -DDEFAULT_COLLATION=${MYSQL_DEFAULT_COLLATION} - ) - - elif ! use latin1 ; then - mycmakeargs+=( - -DDEFAULT_CHARSET=utf8 - -DDEFAULT_COLLATION=utf8_general_ci - ) - else - mycmakeargs+=( - -DDEFAULT_CHARSET=latin1 - -DDEFAULT_COLLATION=latin1_swedish_ci - ) - fi - mycmakeargs+=( - -DINSTALL_SQLBENCHDIR=share/mysql - -DEXTRA_CHARSETS=all - -DDISABLE_SHARED=$(usex static YES NO) - -DWITH_EMBEDDED_SERVER=OFF - ) - - if use profiling ; then - # Setting to OFF doesn't work: Once set, profiling options will be added - # to `mysqld --help` output via sql/sys_vars.cc causing - # "main.mysqld--help-notwin" test to fail - mycmakeargs+=( -DENABLED_PROFILING=ON ) - fi - - if use static; then - mycmakeargs+=( -DWITH_PIC=1 ) - fi - - # Storage engines - mycmakeargs+=( - -DWITH_ARCHIVE_STORAGE_ENGINE=1 - -DWITH_BLACKHOLE_STORAGE_ENGINE=1 - -DWITH_CSV_STORAGE_ENGINE=1 - -DWITH_HEAP_STORAGE_ENGINE=1 - -DWITH_INNOBASE_STORAGE_ENGINE=1 - -DWITH_MYISAMMRG_STORAGE_ENGINE=1 - -DWITH_MYISAM_STORAGE_ENGINE=1 - -DWITH_PARTITION_STORAGE_ENGINE=1 - ) - - else - mycmakeargs+=( - -DWITHOUT_SERVER=1 - -DEXTRA_CHARSETS=none - -DINSTALL_SQLBENCHDIR= - ) - fi - - cmake-utils_src_configure -} - -src_compile() { - cmake-utils_src_compile -} - -src_install() { - cmake-utils_src_install - - # Remove an unnecessary, private config header which will never match between ABIs and is not meant to be used - if [[ -f "${ED%/}/usr/include/mysql/server/private/config.h" ]] ; then - rm "${ED%/}/usr/include/mysql/server/private/config.h" || die - fi - - # Make sure the vars are correctly initialized - mysql_init_vars - - # Convenience links - einfo "Making Convenience links for mysqlcheck multi-call binary" - dosym "mysqlcheck" "/usr/bin/mysqlanalyze" - dosym "mysqlcheck" "/usr/bin/mysqlrepair" - dosym "mysqlcheck" "/usr/bin/mysqloptimize" - - # INSTALL_LAYOUT=STANDALONE causes cmake to create a /usr/data dir - if [[ -d "${ED%/}/usr/data" ]] ; then - rm -Rf "${ED%/}/usr/data" || die - fi - - # Unless they explicitly specific USE=test, then do not install the - # testsuite. It DOES have a use to be installed, esp. when you want to do a - # validation of your database configuration after tuning it. - if ! use test ; then - rm -rf "${D%/}/${MY_SHAREDSTATEDIR}/mysql-test" - fi - - # Configuration stuff - einfo "Building default configuration ..." - insinto "${MY_SYSCONFDIR#${EPREFIX}}" - [[ -f "${S%/}/scripts/mysqlaccess.conf" ]] && doins "${S%/}"/scripts/mysqlaccess.conf - local mycnf_src="my.cnf-5.5" - sed -e "s!@DATADIR@!${MY_DATADIR}!g" \ - "${FILESDIR%/}/${mycnf_src}" \ - > "${TMPDIR%/}/my.cnf.ok" || die - use prefix && sed -i -r -e '/^user[[:space:]]*=[[:space:]]*mysql$/d' "${TMPDIR%/}/my.cnf.ok" - if use latin1 ; then - sed -i \ - -e "/character-set/s|utf8|latin1|g" \ - "${TMPDIR%/}/my.cnf.ok" || die - fi - eprefixify "${TMPDIR%/}/my.cnf.ok" - newins "${TMPDIR}/my.cnf.ok" my.cnf - - if use server ; then - einfo "Including support files and sample configurations" - docinto "support-files" - local script - for script in \ - "${S%/}"/support-files/magic - do - [[ -f "$script" ]] && dodoc "${script}" - done - - docinto "scripts" - for script in "${S%/}"/scripts/mysql* ; do - [[ ( -f "$script" ) && ( "${script%.sh}" == "${script}" ) ]] && dodoc "${script}" - done - fi - - #Remove mytop if perl is not selected - [[ -e "${ED%/}/usr/bin/mytop" ]] && ! use perl && rm -f "${ED%/}/usr/bin/mytop" -} - -# Official test instructions: -# USE='extraengine perl server' \ -# FEATURES='test userpriv -usersandbox' \ -# ebuild mysql-X.X.XX.ebuild \ -# digest clean package -src_test() { - - _disable_test() { - local rawtestname reason - rawtestname="${1}" ; shift - reason="${@}" - ewarn "test '${rawtestname}' disabled: '${reason}'" - echo ${rawtestname} : ${reason} >> "${T}/disabled.def" - } - - local TESTDIR="${BUILD_DIR}/mysql-test" - local retstatus_unit - 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" - - 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} || die - - # Run mysql tests - pushd "${TESTDIR}" > /dev/null || die - - touch "${T}/disabled.def" - # These are failing in MySQL 5.5 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 federated.federated_plugin \ - main.mysql_client_test main.mysql_client_test_nonblock \ - main.mysql_client_test_comp rpl.rpl_extra_col_master_myisam \ - main.mysqlhotcopy_archive main.mysqlhotcopy_myisam main.openssl_1 \ - rpl.rpl_semi_sync_uninstall_plugin ; do - _disable_test "$t" "False positives in Gentoo" - done - - if ! use client-libs ; then - _disable_test main.plugin_auth "Needs client libraries built" - fi - - # run mysql-test tests - perl mysql-test-run.pl --force --vardir="${T}/var-tests" --reorder --skip-test=tokudb --skip-test-list="${T}/disabled.def" - retstatus_tests=$? - - popd > /dev/null || 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" ]] || die "Test failures: $failures" - einfo "Tests successfully completed" -} - -mysql_init_vars() { - MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX}/usr/share/mysql"} - MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX}/etc/mysql"} - MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX}/var/lib/mysql"} - MY_LOGDIR=${MY_LOGDIR="${EPREFIX}/var/log/mysql"} - - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR="" - if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then - MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \ - | sed -ne '/datadir/s|^--datadir=||p' \ - | tail -n1` - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR=`grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \ - | sed -e 's/.*=\s*//' \ - | tail -n1` - fi - fi - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR="${MY_LOCALSTATEDIR}" - einfo "Using default MY_DATADIR" - fi - elog "MySQL MY_DATADIR is ${MY_DATADIR}" - - if [[ -z "${PREVIOUS_DATADIR}" ]] ; then - if [[ -e "${MY_DATADIR}" ]] ; then - # If you get this and you're wondering about it, see bug #207636 - elog "MySQL datadir found in ${MY_DATADIR}" - elog "A new one will not be created." - PREVIOUS_DATADIR="yes" - else - PREVIOUS_DATADIR="no" - fi - export PREVIOUS_DATADIR - fi - else - if [[ ${EBUILD_PHASE} == "config" ]]; then - local new_MY_DATADIR - new_MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \ - | sed -ne '/datadir/s|^--datadir=||p' \ - | tail -n1` - - if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]]; then - ewarn "MySQL MY_DATADIR has changed" - ewarn "from ${MY_DATADIR}" - ewarn "to ${new_MY_DATADIR}" - MY_DATADIR="${new_MY_DATADIR}" - fi - fi - fi - - export MY_SHAREDSTATEDIR MY_SYSCONFDIR - export MY_LOCALSTATEDIR MY_LOGDIR - export MY_DATADIR -} - -pkg_config() { - _getoptval() { - local mypd="${EROOT}"/usr/bin/my_print_defaults - local section="$1" - local flag="--${2}=" - local extra_options="${3}" - "${mypd}" $extra_options $section | sed -n "/^${flag}/s,${flag},,gp" - } - local old_MY_DATADIR="${MY_DATADIR}" - local old_HOME="${HOME}" - # my_print_defaults needs to read stuff in $HOME/.my.cnf - export HOME=${EPREFIX}/root - - # Make sure the vars are correctly initialized - mysql_init_vars - - [[ -z "${MY_DATADIR}" ]] && die "Sorry, unable to find MY_DATADIR" - if [[ ! -x "${EROOT}/usr/sbin/mysqld" ]] ; then - die "Minimal builds do NOT include the MySQL server" - fi - - if [[ ( -n "${MY_DATADIR}" ) && ( "${MY_DATADIR}" != "${old_MY_DATADIR}" ) ]]; then - local MY_DATADIR_s="${ROOT}/${MY_DATADIR}" - MY_DATADIR_s="${MY_DATADIR_s%%/}" - local old_MY_DATADIR_s="${ROOT}/${old_MY_DATADIR}" - old_MY_DATADIR_s="${old_MY_DATADIR_s%%/}" - - if [[ ( -d "${old_MY_DATADIR_s}" ) && ( "${old_MY_DATADIR_s}" != / ) ]]; then - if [[ -d "${MY_DATADIR_s}" ]]; then - ewarn "Both ${old_MY_DATADIR_s} and ${MY_DATADIR_s} exist" - ewarn "Attempting to use ${MY_DATADIR_s} and preserving ${old_MY_DATADIR_s}" - else - elog "Moving MY_DATADIR from ${old_MY_DATADIR_s} to ${MY_DATADIR_s}" - mv --strip-trailing-slashes -T "${old_MY_DATADIR_s}" "${MY_DATADIR_s}" \ - || die "Moving MY_DATADIR failed" - fi - else - ewarn "Previous MY_DATADIR (${old_MY_DATADIR_s}) does not exist" - if [[ -d "${MY_DATADIR_s}" ]]; then - ewarn "Attempting to use ${MY_DATADIR_s}" - else - eerror "New MY_DATADIR (${MY_DATADIR_s}) does not exist" - die "Configuration Failed! Please reinstall ${CATEGORY}/${PN}" - fi - fi - fi - - local pwd1="a" - local pwd2="b" - local maxtry=15 - - if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then - local tmp_mysqld_password_source= - - for tmp_mysqld_password_source in mysql client; do - einfo "Trying to get password for mysql 'root' user from '${tmp_mysqld_password_source}' section ..." - MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password)" - if [[ -n "${MYSQL_ROOT_PASSWORD}" ]]; then - if [[ ${MYSQL_ROOT_PASSWORD} == *$'\n'* ]]; then - ewarn "Ignoring password from '${tmp_mysqld_password_source}' section due to newline character (do you have multiple password options set?)!" - MYSQL_ROOT_PASSWORD= - continue - fi - - einfo "Found password in '${tmp_mysqld_password_source}' section!" - break - fi - done - - # Sometimes --show is required to display passwords in some implementations of my_print_defaults - if [[ "${MYSQL_ROOT_PASSWORD}" == '*****' ]]; then - MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password --show)" - fi - - unset tmp_mysqld_password_source - fi - MYSQL_TMPDIR="$(_getoptval mysqld tmpdir)" - # These are dir+prefix - MYSQL_RELAY_LOG="$(_getoptval mysqld relay-log)" - MYSQL_RELAY_LOG=${MYSQL_RELAY_LOG%/*} - MYSQL_LOG_BIN="$(_getoptval mysqld log-bin)" - MYSQL_LOG_BIN=${MYSQL_LOG_BIN%/*} - - if [[ ! -d "${ROOT}/$MYSQL_TMPDIR" ]]; then - einfo "Creating MySQL tmpdir $MYSQL_TMPDIR" - install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_TMPDIR" - fi - if [[ ! -d "${ROOT}/$MYSQL_LOG_BIN" ]]; then - einfo "Creating MySQL log-bin directory $MYSQL_LOG_BIN" - install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_LOG_BIN" - fi - if [[ ! -d "${EROOT}/$MYSQL_RELAY_LOG" ]]; then - einfo "Creating MySQL relay-log directory $MYSQL_RELAY_LOG" - install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_RELAY_LOG" - fi - - if [[ -d "${ROOT}/${MY_DATADIR}/mysql" ]] ; then - ewarn "You have already a MySQL database in place." - ewarn "(${ROOT}/${MY_DATADIR}/*)" - ewarn "Please rename or delete it if you wish to replace it." - die "MySQL database already exists!" - 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" - - if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then - - einfo "Please provide a password for the mysql 'root' user now" - einfo "or through the ${HOME}/.my.cnf file." - ewarn "Avoid [\"'\\_%] characters in the password" - read -rsp " >" pwd1 ; echo - - einfo "Retype the password" - read -rsp " >" pwd2 ; echo - - if [[ "x$pwd1" != "x$pwd2" ]] ; then - die "Passwords are not the same" - fi - MYSQL_ROOT_PASSWORD="${pwd1}" - unset pwd1 pwd2 - fi - - local options - local sqltmp="$(emktemp)" - - # Fix bug 446200. Don't reference host my.cnf, needs to come first, - # see http://bugs.mysql.com/bug.php?id=31312 - use prefix && options="${options} '--defaults-file=${MY_SYSCONFDIR}/my.cnf'" - - # Figure out which options we need to disable to do the setup - local helpfile="${TMPDIR}/mysqld-help" - "${EROOT}/usr/sbin/mysqld" --verbose --help >"${helpfile}" 2>/dev/null - for opt in grant-tables host-cache name-resolve networking slave-start \ - federated ssl log-bin relay-log slow-query-log external-locking \ - log-slave-updates \ - ; do - optexp="--(skip-)?${opt}" optfull="--loose-skip-${opt}" - egrep -sq -- "${optexp}" "${helpfile}" && options="${options} ${optfull}" - done - - einfo "Creating the mysql database and setting proper permissions on it ..." - - # Now that /var/run is a tmpfs mount point, we need to ensure it exists before using it - PID_DIR="${EROOT}/var/run/mysqld" - if [[ ! -d "${PID_DIR}" ]]; then - install -d -m 755 -o mysql -g mysql "${PID_DIR}" || die "Could not create pid directory" - fi - - if [[ ! -d "${MY_DATADIR}" ]]; then - install -d -m 750 -o mysql -g mysql "${MY_DATADIR}" || die "Could not create data directory" - fi - - pushd "${TMPDIR}" &>/dev/null || die - - # Filling timezones, see - # http://dev.mysql.com/doc/mysql/en/time-zone-support.html - "${EROOT}/usr/bin/mysql_tzinfo_to_sql" "${EROOT}/usr/share/zoneinfo" > "${sqltmp}" 2>/dev/null - - local cmd=( "${EROOT}usr/share/mysql/scripts/mysql_install_db" ) - [[ -f "${cmd}" ]] || cmd=( "${EROOT}usr/bin/mysql_install_db" ) - cmd+=( "--basedir=${EPREFIX}/usr" ${options} "--datadir=${ROOT}/${MY_DATADIR}" "--tmpdir=${ROOT}/${MYSQL_TMPDIR}" ) - einfo "Command: ${cmd[*]}" - su -s /bin/sh -c "${cmd[*]}" mysql \ - >"${TMPDIR}"/mysql_install_db.log 2>&1 - if [ $? -ne 0 ]; then - grep -B5 -A999 -i "ERROR" "${TMPDIR}"/mysql_install_db.log 1>&2 - die "Failed to initialize mysqld. Please review ${EPREFIX}/var/log/mysql/mysqld.err AND ${TMPDIR}/mysql_install_db.log" - fi - popd &>/dev/null || die - [[ -f "${ROOT}/${MY_DATADIR}/mysql/user.frm" ]] \ - || die "MySQL databases not installed" - - use prefix || options="${options} --user=mysql" - - local socket="${EROOT}/var/run/mysqld/mysqld${RANDOM}.sock" - local pidfile="${EROOT}/var/run/mysqld/mysqld${RANDOM}.pid" - local mysqld="${EROOT}/usr/sbin/mysqld \ - ${options} \ - --log-warnings=0 \ - --basedir=${EROOT}/usr \ - --datadir=${ROOT}/${MY_DATADIR} \ - --max_allowed_packet=8M \ - --net_buffer_length=16K \ - --socket=${socket} \ - --pid-file=${pidfile} \ - --tmpdir=${ROOT}/${MYSQL_TMPDIR}" - #einfo "About to start mysqld: ${mysqld}" - ebegin "Starting mysqld" - einfo "Command ${mysqld}" - ${mysqld} & - rc=$? - while ! [[ -S "${socket}" || "${maxtry}" -lt 1 ]] ; do - maxtry=$((${maxtry}-1)) - echo -n "." - sleep 1 - done - eend $rc - - if ! [[ -S "${socket}" ]]; then - die "Completely failed to start up mysqld with: ${mysqld}" - fi - - ebegin "Setting root password" - # Do this from memory, as we don't want clear text passwords in temp files - local sql="UPDATE mysql.user SET Password = PASSWORD('${MYSQL_ROOT_PASSWORD}') WHERE USER='root'; FLUSH PRIVILEGES" - "${EROOT}/usr/bin/mysql" \ - "--socket=${socket}" \ - -hlocalhost \ - -e "${sql}" - eend $? - - if [[ -n "${sqltmp}" ]] ; then - ebegin "Loading \"zoneinfo\", this step may require a few seconds" - "${EROOT}/usr/bin/mysql" \ - "--socket=${socket}" \ - -hlocalhost \ - -uroot \ - --password="${MYSQL_ROOT_PASSWORD}" \ - mysql < "${sqltmp}" - rc=$? - eend $? - [[ $rc -ne 0 ]] && ewarn "Failed to load zoneinfo!" - fi - - # Stop the server and cleanup - einfo "Stopping the server ..." - kill $(< "${pidfile}" ) - rm -f "${sqltmp}" - wait %1 - einfo "Done" -} diff --git a/dev-db/mysql/mysql-5.7.21.ebuild b/dev-db/mysql/mysql-5.7.21.ebuild deleted file mode 100644 index 681748a..0000000 --- a/dev-db/mysql/mysql-5.7.21.ebuild +++ /dev/null @@ -1,855 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="6" -MY_EXTRAS_VER="20180312-2011Z" - -CMAKE_MAKEFILE_GENERATOR=emake - -# Keeping eutils in EAPI=6 for emktemp in pkg_config - -inherit eutils flag-o-matic prefix toolchain-funcs \ - user cmake-utils multilib-minimal - -SRC_URI="http://cdn.mysql.com/Downloads/MySQL-5.7/${PN}-boost-${PV}.tar.gz - https://cdn.mysql.com/archives/mysql-5.7/mysql-boost-${PV}.tar.gz - http://downloads.mysql.com/archives/MySQL-5.7/${PN}-boost-${PV}.tar.gz" - -# Gentoo patches to MySQL -if [[ "${MY_EXTRAS_VER}" != "live" && "${MY_EXTRAS_VER}" != "none" ]]; then - SRC_URI="${SRC_URI} - mirror://gentoo/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://gitweb.gentoo.org/proj/mysql-extras.git/snapshot/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~grknight/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~robbat2/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~jmbsvicetto/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2" -fi - -HOMEPAGE="https://www.mysql.com/" -DESCRIPTION="A fast, multi-threaded, multi-user SQL database server" -LICENSE="GPL-2" -SLOT="0/20" -IUSE="client-libs cracklib debug jemalloc latin1 libressl numa +perl profiling selinux - +server static static-libs systemtap tcmalloc test yassl" - -# Tests always fail when libressl is enabled due to hard-coded ciphers in the tests -RESTRICT="libressl? ( test )" - -REQUIRED_USE="?? ( tcmalloc jemalloc ) static? ( yassl )" - -KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris" - -# Shorten the path because the socket path length must be shorter than 107 chars -# and we will run a mysql server during test phase -S="${WORKDIR}/mysql" - -if [[ "${MY_EXTRAS_VER}" == "live" ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/mysql-extras.git" - EGIT_CHECKOUT_DIR="${WORKDIR}/mysql-extras" - EGIT_CLONE_TYPE=shallow - MY_PATCH_DIR="${WORKDIR}/mysql-extras" -else - MY_PATCH_DIR="${WORKDIR}/mysql-extras-${MY_EXTRAS_VER}" -fi - -PATCHES=( - "${MY_PATCH_DIR}"/20001_all_fix-minimal-build-cmake-mysql-5.7.patch - "${MY_PATCH_DIR}"/20007_all_cmake-debug-werror-5.7.patch -# "${MY_PATCH_DIR}"/20008_all_mysql-tzinfo-symlink-5.7.6.patch - "${MY_PATCH_DIR}"/20009_all_mysql_myodbc_symbol_fix-5.7.10.patch - "${MY_PATCH_DIR}"/20018_all_mysql-5.7.21-without-clientlibs-tools.patch -) - -# Be warned, *DEPEND are version-dependant -# These are used for both runtime and compiletime -# MULTILIB_USEDEP only set for libraries used by the client library -COMMON_DEPEND=" - kernel_linux? ( - sys-process/procps:0= - dev-libs/libaio:0= - ) - net-misc/curl - >=sys-apps/sed-4 - >=sys-apps/texinfo-4.7-r1 - jemalloc? ( dev-libs/jemalloc:0= ) - tcmalloc? ( dev-util/google-perftools:0= ) - systemtap? ( >=dev-util/systemtap-1.3:0= ) - !yassl? ( - client-libs? ( - !libressl? ( >=dev-libs/openssl-1.0.0:0=[${MULTILIB_USEDEP},static-libs?] ) - libressl? ( dev-libs/libressl:0=[${MULTILIB_USEDEP},static-libs?] ) - ) - !client-libs? ( - !libressl? ( >=dev-libs/openssl-1.0.0:0= ) - libressl? ( dev-libs/libressl:0= ) - ) - ) - client-libs? ( >=sys-libs/zlib-1.2.3:0=[${MULTILIB_USEDEP},static-libs?] ) - !client-libs? ( >=sys-libs/zlib-1.2.3:0= ) - sys-libs/ncurses:0= - server? ( - >=app-arch/lz4-0_p131:= - >=dev-libs/boost-1.65.0:= - numa? ( sys-process/numactl ) - ) -" -DEPEND="virtual/yacc - static? ( sys-libs/ncurses[static-libs] ) - || ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 ) - ${COMMON_DEPEND}" -RDEPEND="selinux? ( sec-policy/selinux-mysql ) - abi_x86_32? ( !app-emulation/emul-linux-x86-db[-abi_x86_32(-)] ) - client-libs? ( !dev-db/mariadb-connector-c[mysqlcompat] !dev-db/mysql-connector-c ) - !dev-db/mariadb !dev-db/mariadb-galera !dev-db/percona-server !dev-db/mysql-cluster - server? ( !prefix? ( dev-db/mysql-init-scripts ) ) - ${COMMON_DEPEND} -" -# For other stuff to bring us in -# dev-perl/DBD-mysql is needed by some scripts installed by MySQL -PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 ) - !client-libs? ( dev-db/mysql-connector-c[${MULTILIB_USEDEP},static-libs?] )" - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - local GCC_MAJOR_SET=$(gcc-major-version) - local GCC_MINOR_SET=$(gcc-minor-version) - # Bug 565584. InnoDB now requires atomic functions introduced with gcc-4.7 on - # non x86{,_64} arches - if ! use amd64 && ! use x86 && [[ ${GCC_MAJOR_SET} -lt 4 || \ - ${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then - eerror "${PN} needs to be built with gcc-4.7 or later." - eerror "Please use gcc-config to switch to gcc-4.7 or later version." - die - fi - fi - if has test ${FEATURES} && \ - use server && ! has userpriv ${FEATURES} ; then - eerror "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root." - fi - - # This should come after all of the die statements - enewgroup mysql 60 || die "problem adding 'mysql' group" - enewuser mysql 60 -1 /dev/null mysql || die "problem adding 'mysql' user" -} - -pkg_preinst() { - # Here we need to see if the implementation switched client libraries - # We check if this is a new instance of the package and a client library already exists - local SHOW_ABI_MESSAGE libpath - if use client-libs && [[ -z ${REPLACING_VERSIONS} && -e "${EROOT}usr/$(get_libdir)/libmysqlclient.so" ]] ; then - libpath=$(readlink "${EROOT}usr/$(get_libdir)/libmysqlclient.so") - elog "Due to ABI changes when switching between different client libraries," - elog "revdep-rebuild must find and rebuild all packages linking to libmysqlclient." - elog "Please run: revdep-rebuild --library ${libpath}" - ewarn "Failure to run revdep-rebuild may cause issues with other programs or libraries" - fi -} - -pkg_postinst() { - # Make sure the vars are correctly initialized - mysql_init_vars - - # Create log directory securely if it does not exist - [[ -d "${ROOT}${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${ROOT}${MY_LOGDIR}" - - if use server ; then - if [[ -z "${REPLACING_VERSIONS}" ]] ; then - einfo - elog "You might want to run:" - elog "\"emerge --config =${CATEGORY}/${PF}\"" - elog "if this is a new install." - elog - elog "If you are switching server implentations, you should run the" - elog "mysql_upgrade tool." - einfo - else - einfo - elog "If you are upgrading major versions, you should run the" - elog "mysql_upgrade tool." - einfo - fi - fi - - # Note about configuration change - einfo - elog "This version of mysql reorganizes the configuration from a single my.cnf" - elog "to several files in /etc/mysql/${PN}.d." - elog "Please backup any changes you made to /etc/mysql/my.cnf" - elog "and add them as a new file under /etc/mysql/${PN}.d with a .cnf extension." - elog "You may have as many files as needed and they are read alphabetically." - elog "Be sure the options have the appropitate section headers, i.e. [mysqld]." - einfo -} - -src_unpack() { - unpack ${A} - # Grab the patches - [[ "${MY_EXTRAS_VER}" == "live" ]] && S="${WORKDIR}/mysql-extras" git-r3_src_unpack - - mv -f "${WORKDIR}/${P}" "${S}" || die -} - -src_prepare() { - if use jemalloc ; then - echo "TARGET_LINK_LIBRARIES(mysqld jemalloc)" >> "${S}/sql/CMakeLists.txt" || die - fi - if use tcmalloc; then - echo "TARGET_LINK_LIBRARIES(mysqld tcmalloc)" >> "${S}/sql/CMakeLists.txt" || die - fi - # Remove the centos and rhel selinux policies to support mysqld_safe under SELinux - if [[ -d "${S}/support-files/SELinux" ]] ; then - echo > "${S}/support-files/SELinux/CMakeLists.txt" || die - fi - - if use libressl ; then - sed -i 's/OPENSSL_MAJOR_VERSION STREQUAL "1"/OPENSSL_MAJOR_VERSION STREQUAL "2"/' \ - "${S}/cmake/ssl.cmake" || die - fi - - cmake-utils_src_prepare -} - -src_configure(){ - # bug 508724 mariadb cannot use ld.gold - tc-ld-disable-gold - # Bug #114895, bug #110149 - filter-flags "-O" "-O[01]" - - append-cxxflags -felide-constructors - - # bug #283926, with GCC4.4, this is required to get correct behavior. - append-flags -fno-strict-aliasing - - if use client-libs ; then - multilib-minimal_src_configure - else - multilib_src_configure - fi -} - -multilib_src_configure() { - debug-print-function ${FUNCNAME} "$@" - - if ! multilib_is_native_abi && ! use client-libs ; then - return - fi - - CMAKE_BUILD_TYPE="RelWithDebInfo" - - # debug hack wrt #497532 - mycmakeargs=( - -DCMAKE_C_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')" - -DCMAKE_CXX_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')" - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr" - -DMYSQL_DATADIR="${EPREFIX}/var/lib/mysql" - -DSYSCONFDIR="${EPREFIX}/etc/mysql" - -DINSTALL_BINDIR=bin - -DINSTALL_DOCDIR=share/doc/${PF} - -DINSTALL_DOCREADMEDIR=share/doc/${PF} - -DINSTALL_INCLUDEDIR=include/mysql - -DINSTALL_INFODIR=share/info - -DINSTALL_LIBDIR=$(get_libdir) - -DINSTALL_MANDIR=share/man - -DINSTALL_MYSQLSHAREDIR=share/mysql - -DINSTALL_PLUGINDIR=$(get_libdir)/mysql/plugin - -DINSTALL_SCRIPTDIR=share/mysql/scripts - -DINSTALL_MYSQLDATADIR="${EPREFIX}/var/lib/mysql" - -DINSTALL_SBINDIR=sbin - -DINSTALL_SUPPORTFILESDIR="${EPREFIX}/usr/share/mysql" - -DCOMPILATION_COMMENT="Gentoo Linux ${PF}" - -DWITH_UNIT_TESTS=$(usex test ON OFF) - ### TODO: make this system but issues with UTF-8 prevent it - -DWITH_EDITLINE=bundled - -DWITH_ZLIB=system - -DWITH_LIBWRAP=0 - -DENABLED_LOCAL_INFILE=1 - -DMYSQL_UNIX_ADDR="${EPREFIX}/var/run/mysqld/mysqld.sock" - -DWITH_DEFAULT_COMPILER_OPTIONS=0 - -DWITH_DEFAULT_FEATURE_SET=0 - # The build forces this to be defined when cross-compiling. We pass it - # all the time for simplicity and to make sure it is actually correct. - -DSTACK_DIRECTION=$(tc-stack-grows-down && echo -1 || echo 1) - -DWITH_RAPID=OFF - -DWITH_LIBEVENT=NO - -DWITH_CURL=system - ) - if use test ; then - mycmakeargs+=( -DINSTALL_MYSQLTESTDIR=share/mysql/mysql-test ) - else - mycmakeargs+=( -DINSTALL_MYSQLTESTDIR='' ) - fi - - if ! use yassl ; then - mycmakeargs+=( -DWITH_SSL=system ) - else - mycmakeargs+=( -DWITH_SSL=bundled ) - fi - - if ! use client-libs ; then - mycmakeargs+=( -DWITHOUT_CLIENTLIBS=YES ) - fi - - # bfd.h is only used starting with 10.1 and can be controlled by NOT_FOR_DISTRIBUTION - # systemtap only works on native ABI bug 530132 - if multilib_is_native_abi; then - mycmakeargs+=( - -DENABLE_DTRACE=$(usex systemtap) - ) - else - mycmakeargs+=( - -DWITHOUT_TOOLS=1 - -DWITH_READLINE=1 - -DENABLE_DTRACE=0 - ) - fi - - if multilib_is_native_abi && use server ; then - - mycmakeargs+=( - -DWITH_BOOST="${S}/boost" - -DWITH_LZ4=system - -DWITH_NUMA=$(usex numa ON OFF) - ) - - if [[ ( -n ${MYSQL_DEFAULT_CHARSET} ) && ( -n ${MYSQL_DEFAULT_COLLATION} ) ]]; then - ewarn "You are using a custom charset of ${MYSQL_DEFAULT_CHARSET}" - ewarn "and a collation of ${MYSQL_DEFAULT_COLLATION}." - ewarn "You MUST file bugs without these variables set." - - mycmakeargs+=( - -DDEFAULT_CHARSET=${MYSQL_DEFAULT_CHARSET} - -DDEFAULT_COLLATION=${MYSQL_DEFAULT_COLLATION} - ) - - elif ! use latin1 ; then - mycmakeargs+=( - -DDEFAULT_CHARSET=utf8 - -DDEFAULT_COLLATION=utf8_general_ci - ) - else - mycmakeargs+=( - -DDEFAULT_CHARSET=latin1 - -DDEFAULT_COLLATION=latin1_swedish_ci - ) - fi - mycmakeargs+=( - -DEXTRA_CHARSETS=all - -DDISABLE_SHARED=$(usex static YES NO) - -DWITH_DEBUG=$(usex debug) - -DWITH_EMBEDDED_SERVER=OFF - -DENABLED_PROFILING=$(usex profiling) - ) - - if use static; then - mycmakeargs+=( -DWITH_PIC=1 ) - fi - - if use jemalloc || use tcmalloc ; then - mycmakeargs+=( -DWITH_SAFEMALLOC=OFF ) - fi - - # Storage engines - mycmakeargs+=( - -DWITH_EXAMPLE_STORAGE_ENGINE=0 - -DWITH_ARCHIVE_STORAGE_ENGINE=1 - -DWITH_BLACKHOLE_STORAGE_ENGINE=1 - -DWITH_CSV_STORAGE_ENGINE=1 - -DWITH_HEAP_STORAGE_ENGINE=1 - -DWITH_INNOBASE_STORAGE_ENGINE=1 - -DWITH_MYISAMMRG_STORAGE_ENGINE=1 - -DWITH_MYISAM_STORAGE_ENGINE=1 - -DWITH_PARTITION_STORAGE_ENGINE=1 - -DWITH_INNODB_MEMCACHED=0 - ) - - else - mycmakeargs+=( - -DWITHOUT_SERVER=1 - -DWITH_EMBEDDED_SERVER=OFF - -DEXTRA_CHARSETS=none - ) - fi - - cmake-utils_src_configure -} - -src_compile() { - if use client-libs ; then - multilib-minimal_src_compile - else - multilib_src_compile - fi -} - -multilib_src_compile() { - cmake-utils_src_compile -} - -src_install() { - local MULTILIB_WRAPPED_HEADERS - local MULTILIB_CHOST_TOOLS - if use client-libs ; then - # headers with ABI specific data - MULTILIB_WRAPPED_HEADERS=( - /usr/include/mysql/server/my_config.h - /usr/include/mysql/server/mysql_version.h ) - - # wrap the config scripts - MULTILIB_CHOST_TOOLS=( /usr/bin/mysql_config ) - multilib-minimal_src_install - else - multilib_src_install - multilib_src_install_all - fi -} - -# Intentionally override eclass function -multilib_src_install() { - - cmake-utils_src_install - - # Kill old libmysqclient_r symlinks if they exist. Time to fix what depends on them. - find "${D}" -name 'libmysqlclient_r.*' -type l -delete || die -} - -multilib_src_install_all() { - # Make sure the vars are correctly initialized - mysql_init_vars - - # Convenience links - einfo "Making Convenience links for mysqlcheck multi-call binary" - dosym "mysqlcheck" "/usr/bin/mysqlanalyze" - dosym "mysqlcheck" "/usr/bin/mysqlrepair" - dosym "mysqlcheck" "/usr/bin/mysqloptimize" - - # INSTALL_LAYOUT=STANDALONE causes cmake to create a /usr/data dir - if [[ -d "${ED}/usr/data" ]] ; then - rm -Rf "${ED}/usr/data" || die - fi - - # Unless they explicitly specific USE=test, then do not install the - # testsuite. It DOES have a use to be installed, esp. when you want to do a - # validation of your database configuration after tuning it. - if ! use test ; then - rm -rf "${D}/${MY_SHAREDSTATEDIR}/mysql-test" - fi - - # Configuration stuff - einfo "Building default configuration ..." - insinto "${MY_SYSCONFDIR#${EPREFIX}}" - [[ -f "${S}/scripts/mysqlaccess.conf" ]] && doins "${S}"/scripts/mysqlaccess.conf - cp "${FILESDIR}/my.cnf-5.7" "${TMPDIR}/my.cnf" || die - eprefixify "${TMPDIR}/my.cnf" - doins "${TMPDIR}/my.cnf" - insinto "${MY_SYSCONFDIR#${EPREFIX}}/mysql.d" - cp "${FILESDIR}/my.cnf.distro-client" "${TMPDIR}/50-distro-client.cnf" || die - eprefixify "${TMPDIR}/50-distro-client.cnf" - doins "${TMPDIR}/50-distro-client.cnf" - - if use server ; then - mycnf_src="my.cnf.distro-server" - sed -e "s!@DATADIR@!${MY_DATADIR}!g" \ - "${FILESDIR}/${mycnf_src}" \ - > "${TMPDIR}/my.cnf.ok" || die - if use prefix ; then - sed -i -r -e '/^user[[:space:]]*=[[:space:]]*mysql$/d' \ - "${TMPDIR}/my.cnf.ok" || die - fi - if use latin1 ; then - sed -i \ - -e "/character-set/s|utf8|latin1|g" \ - "${TMPDIR}/my.cnf.ok" || die - fi - eprefixify "${TMPDIR}/my.cnf.ok" - newins "${TMPDIR}/my.cnf.ok" 50-distro-server.cnf - - einfo "Including support files and sample configurations" - docinto "support-files" - local script - for script in \ - "${S}"/support-files/magic - do - [[ -f "$script" ]] && dodoc "${script}" - done - - docinto "scripts" - for script in "${S}"/scripts/mysql* ; do - [[ ( -f "$script" ) && ( "${script%.sh}" == "${script}" ) ]] && dodoc "${script}" - done - fi - - #Remove mytop if perl is not selected - [[ -e "${ED}/usr/bin/mytop" ]] && ! use perl && rm -f "${ED}/usr/bin/mytop" -} - -# Official test instructions: -# USE='perl server static-libs' \ -# FEATURES='test userpriv -usersandbox' \ -# ebuild mysql-X.X.XX.ebuild \ -# digest clean package -src_test() { - - _disable_test() { - local rawtestname reason - rawtestname="${1}" ; shift - reason="${@}" - ewarn "test '${rawtestname}' disabled: '${reason}'" - echo ${rawtestname} : ${reason} >> "${T}/disabled.def" - } - - local TESTDIR="${BUILD_DIR}/mysql-test" - local retstatus_unit - 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" - - 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} || die - - # Run mysql tests - pushd "${TESTDIR}" > /dev/null || die - - touch "${T}/disabled.def" - # These are failing in MySQL 5.7 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 -# _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 rpl.rpl_extra_col_master_myisam ; do -# _disable_test "$t" "False positives in Gentoo" -# done - -# if ! use client-libs ; then -# _disable_test main.plugin_auth "Needs client libraries built" -# fi - - # run mysql-test tests - perl mysql-test-run.pl --force --vardir="${T}/var-tests" --reorder --skip-test=tokudb --skip-test-list="${T}/disabled.def" - retstatus_tests=$? - - popd > /dev/null || 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" ]] || die "Test failures: $failures" - einfo "Tests successfully completed" -} - -mysql_init_vars() { - MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX}/usr/share/mysql"} - MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX}/etc/mysql"} - MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX}/var/lib/mysql"} - MY_LOGDIR=${MY_LOGDIR="${EPREFIX}/var/log/mysql"} - - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR="" - if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then - MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \ - | sed -ne '/datadir/s|^--datadir=||p' \ - | tail -n1` - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR=`grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \ - | sed -e 's/.*=\s*//' \ - | tail -n1` - fi - fi - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR="${MY_LOCALSTATEDIR}" - einfo "Using default MY_DATADIR" - fi - elog "MySQL MY_DATADIR is ${MY_DATADIR}" - - if [[ -z "${PREVIOUS_DATADIR}" ]] ; then - if [[ -e "${MY_DATADIR}" ]] ; then - # If you get this and you're wondering about it, see bug #207636 - elog "MySQL datadir found in ${MY_DATADIR}" - elog "A new one will not be created." - PREVIOUS_DATADIR="yes" - else - PREVIOUS_DATADIR="no" - fi - export PREVIOUS_DATADIR - fi - else - if [[ ${EBUILD_PHASE} == "config" ]]; then - local new_MY_DATADIR - new_MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \ - | sed -ne '/datadir/s|^--datadir=||p' \ - | tail -n1` - - if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]]; then - ewarn "MySQL MY_DATADIR has changed" - ewarn "from ${MY_DATADIR}" - ewarn "to ${new_MY_DATADIR}" - MY_DATADIR="${new_MY_DATADIR}" - fi - fi - fi - - export MY_SHAREDSTATEDIR MY_SYSCONFDIR - export MY_LOCALSTATEDIR MY_LOGDIR - export MY_DATADIR -} - -pkg_config() { - _getoptval() { - local mypd="${EROOT}"/usr/bin/my_print_defaults - local section="$1" - local flag="--${2}=" - local extra_options="${3}" - "${mypd}" $extra_options $section | sed -n "/^${flag}/s,${flag},,gp" - } - local old_MY_DATADIR="${MY_DATADIR}" - local old_HOME="${HOME}" - # my_print_defaults needs to read stuff in $HOME/.my.cnf - export HOME=${EPREFIX}/root - - # Make sure the vars are correctly initialized - mysql_init_vars - - [[ -z "${MY_DATADIR}" ]] && die "Sorry, unable to find MY_DATADIR" - if [[ ! -x "${EROOT}/usr/sbin/mysqld" ]] ; then - die "Minimal builds do NOT include the MySQL server" - fi - - if [[ ( -n "${MY_DATADIR}" ) && ( "${MY_DATADIR}" != "${old_MY_DATADIR}" ) ]]; then - local MY_DATADIR_s="${ROOT}/${MY_DATADIR}" - MY_DATADIR_s="${MY_DATADIR_s%%/}" - local old_MY_DATADIR_s="${ROOT}/${old_MY_DATADIR}" - old_MY_DATADIR_s="${old_MY_DATADIR_s%%/}" - - if [[ ( -d "${old_MY_DATADIR_s}" ) && ( "${old_MY_DATADIR_s}" != / ) ]]; then - if [[ -d "${MY_DATADIR_s}" ]]; then - ewarn "Both ${old_MY_DATADIR_s} and ${MY_DATADIR_s} exist" - ewarn "Attempting to use ${MY_DATADIR_s} and preserving ${old_MY_DATADIR_s}" - else - elog "Moving MY_DATADIR from ${old_MY_DATADIR_s} to ${MY_DATADIR_s}" - mv --strip-trailing-slashes -T "${old_MY_DATADIR_s}" "${MY_DATADIR_s}" \ - || die "Moving MY_DATADIR failed" - fi - else - ewarn "Previous MY_DATADIR (${old_MY_DATADIR_s}) does not exist" - if [[ -d "${MY_DATADIR_s}" ]]; then - ewarn "Attempting to use ${MY_DATADIR_s}" - else - eerror "New MY_DATADIR (${MY_DATADIR_s}) does not exist" - die "Configuration Failed! Please reinstall ${CATEGORY}/${PN}" - fi - fi - fi - - local pwd1="a" - local pwd2="b" - local maxtry=15 - - if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then - local tmp_mysqld_password_source= - - for tmp_mysqld_password_source in mysql client; do - einfo "Trying to get password for mysql 'root' user from '${tmp_mysqld_password_source}' section ..." - MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password)" - if [[ -n "${MYSQL_ROOT_PASSWORD}" ]]; then - if [[ ${MYSQL_ROOT_PASSWORD} == *$'\n'* ]]; then - ewarn "Ignoring password from '${tmp_mysqld_password_source}' section due to newline character (do you have multiple password options set?)!" - MYSQL_ROOT_PASSWORD= - continue - fi - - einfo "Found password in '${tmp_mysqld_password_source}' section!" - break - fi - done - - # Sometimes --show is required to display passwords in some implementations of my_print_defaults - if [[ "${MYSQL_ROOT_PASSWORD}" == '*****' ]]; then - MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password --show)" - fi - - unset tmp_mysqld_password_source - fi - MYSQL_TMPDIR="$(_getoptval mysqld tmpdir)" - # These are dir+prefix - MYSQL_RELAY_LOG="$(_getoptval mysqld relay-log)" - MYSQL_RELAY_LOG=${MYSQL_RELAY_LOG%/*} - MYSQL_LOG_BIN="$(_getoptval mysqld log-bin)" - MYSQL_LOG_BIN=${MYSQL_LOG_BIN%/*} - - if [[ ! -d "${ROOT}/$MYSQL_TMPDIR" ]]; then - einfo "Creating MySQL tmpdir $MYSQL_TMPDIR" - install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_TMPDIR" - fi - if [[ ! -d "${ROOT}/$MYSQL_LOG_BIN" ]]; then - einfo "Creating MySQL log-bin directory $MYSQL_LOG_BIN" - install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_LOG_BIN" - fi - if [[ ! -d "${EROOT}/$MYSQL_RELAY_LOG" ]]; then - einfo "Creating MySQL relay-log directory $MYSQL_RELAY_LOG" - install -d -m 770 -o mysql -g mysql "${EROOT}/$MYSQL_RELAY_LOG" - fi - - if [[ -d "${ROOT}/${MY_DATADIR}/mysql" ]] ; then - ewarn "You have already a MySQL database in place." - ewarn "(${ROOT}/${MY_DATADIR}/*)" - ewarn "Please rename or delete it if you wish to replace it." - die "MySQL database already exists!" - 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" - - if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then - - einfo "Please provide a password for the mysql 'root' user now" - einfo "or through the ${HOME}/.my.cnf file." - ewarn "Avoid [\"'\\_%] characters in the password" - read -rsp " >" pwd1 ; echo - - einfo "Retype the password" - read -rsp " >" pwd2 ; echo - - if [[ "x$pwd1" != "x$pwd2" ]] ; then - die "Passwords are not the same" - fi - MYSQL_ROOT_PASSWORD="${pwd1}" - unset pwd1 pwd2 - fi - - local options - local sqltmp="$(emktemp)" - - # Fix bug 446200. Don't reference host my.cnf, needs to come first, - # see http://bugs.mysql.com/bug.php?id=31312 - use prefix && options="${options} '--defaults-file=${MY_SYSCONFDIR}/my.cnf'" - - # Figure out which options we need to disable to do the setup - local helpfile="${TMPDIR}/mysqld-help" - "${EROOT}/usr/sbin/mysqld" --verbose --help >"${helpfile}" 2>/dev/null - for opt in grant-tables host-cache name-resolve networking slave-start \ - federated ssl log-bin relay-log slow-query-log external-locking \ - log-slave-updates \ - ; do - optexp="--(skip-)?${opt}" optfull="--loose-skip-${opt}" - egrep -sq -- "${optexp}" "${helpfile}" && options="${options} ${optfull}" - done - - einfo "Creating the mysql database and setting proper permissions on it ..." - - # Now that /var/run is a tmpfs mount point, we need to ensure it exists before using it - PID_DIR="${EROOT}/var/run/mysqld" - if [[ ! -d "${PID_DIR}" ]]; then - install -d -m 755 -o mysql -g mysql "${PID_DIR}" || die "Could not create pid directory" - fi - - if [[ ! -d "${MY_DATADIR}" ]]; then - install -d -m 750 -o mysql -g mysql "${MY_DATADIR}" || die "Could not create data directory" - fi - - pushd "${TMPDIR}" &>/dev/null || die - - # Filling timezones, see - # http://dev.mysql.com/doc/mysql/en/time-zone-support.html - "${EROOT}/usr/bin/mysql_tzinfo_to_sql" "${EROOT}/usr/share/zoneinfo" > "${sqltmp}" 2>/dev/null - - # --initialize-insecure will not set root password - # --initialize would set a random one in the log which we don't need as we set it ourselves - local cmd=( "${EROOT}usr/sbin/mysqld" "--initialize-insecure" "--init-file='${sqltmp}'" ) - cmd+=( "--basedir=${EPREFIX}/usr" ${options} "--datadir=${ROOT}/${MY_DATADIR}" "--tmpdir=${ROOT}/${MYSQL_TMPDIR}" ) - einfo "Command: ${cmd[*]}" - su -s /bin/sh -c "${cmd[*]}" mysql \ - >"${TMPDIR}"/mysql_install_db.log 2>&1 - if [ $? -ne 0 ]; then - grep -B5 -A999 -i "ERROR" "${TMPDIR}"/mysql_install_db.log 1>&2 - die "Failed to initialize mysqld. Please review ${EPREFIX}/var/log/mysql/mysqld.err AND ${TMPDIR}/mysql_install_db.log" - fi - popd &>/dev/null || die - [[ -f "${ROOT}/${MY_DATADIR}/mysql/user.frm" ]] \ - || die "MySQL databases not installed" - - use prefix || options="${options} --user=mysql" - - local socket="${EROOT}/var/run/mysqld/mysqld${RANDOM}.sock" - local pidfile="${EROOT}/var/run/mysqld/mysqld${RANDOM}.pid" - local mysqld="${EROOT}/usr/sbin/mysqld \ - ${options} \ - $(use prefix || echo --user=mysql) \ - --log-warnings=0 \ - --basedir=${EROOT}/usr \ - --datadir=${ROOT}/${MY_DATADIR} \ - --max_allowed_packet=8M \ - --net_buffer_length=16K \ - --socket=${socket} \ - --pid-file=${pidfile} - --tmpdir=${ROOT}/${MYSQL_TMPDIR}" - #einfo "About to start mysqld: ${mysqld}" - ebegin "Starting mysqld" - einfo "Command ${mysqld}" - ${mysqld} & - rc=$? - while ! [[ -S "${socket}" || "${maxtry}" -lt 1 ]] ; do - maxtry=$((${maxtry}-1)) - echo -n "." - sleep 1 - done - eend $rc - - if ! [[ -S "${socket}" ]]; then - die "Completely failed to start up mysqld with: ${mysqld}" - fi - - ebegin "Setting root password" - # Do this from memory, as we don't want clear text passwords in temp files - local sql="UPDATE mysql.user SET Password = PASSWORD('${MYSQL_ROOT_PASSWORD}') WHERE USER='root'; FLUSH PRIVILEGES" - "${EROOT}/usr/bin/mysql" \ - "--socket=${socket}" \ - -hlocalhost \ - -e "${sql}" - eend $? - - # Stop the server and cleanup - einfo "Stopping the server ..." - kill $(< "${pidfile}" ) - rm -f "${sqltmp}" - wait %1 - einfo "Done" -} diff --git a/dev-db/percona-server/Manifest b/dev-db/percona-server/Manifest deleted file mode 100644 index 9ed8f85..0000000 --- a/dev-db/percona-server/Manifest +++ /dev/null @@ -1,24 +0,0 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA256 - -DIST mysql-extras-20180329-0129Z.tar.bz2 319349 SHA256 28a78255c5394ec9ce67c051bbef544c96abdd9aa38fc7036d4e77b9dd154001 SHA512 6cd96b2cd3d1361fc838f6914b630ec24595849344ac2f54bc96bfcad64a38eca6562a76f26b92ecdf4c75ad7b874530181555b8a72b25f30bd49bf3eb08bd73 WHIRLPOOL dbb2d84367da842c4eb53b4a925bad60cd0152d2950afad62c758e47eb13a96410a7705b91b58b7704fc192980794fdda4a6ecdff05090e95c20508b59d666ab -DIST percona-server-5.6.39-83.1.tar.gz 56307662 SHA256 48939062738cd5e7769381e31ec581492317ff48c19d0b7ce362e0e61b5d01e2 SHA512 d014bc0ebf8d8f1842b4a79eb0a868e3c9e0e33d3eb3cbf301b5504dcb341e1f2a0d6c2c4003666f59fbf75eb274356ee6b059ff2cddf2b457143ee5e1aba471 WHIRLPOOL 505b784cec2ef81e9bb82c73efb9ae465463b93e465ba6b4e2ec21f55d310acea4b4203dcba8a7e39ad0c8d4060a94c9eab6a26f5f4bed1024e1a81212246783 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v2 - -iQKTBAEBCAB9FiEEZsLkTtkOMnWOfVXA0feB7/n0o7YFAlq8Q11fFIAAAAAALgAo -aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDY2 -QzJFNDRFRDkwRTMyNzU4RTdENTVDMEQxRjc4MUVGRjlGNEEzQjYACgkQ0feB7/n0 -o7ZayA//S96Ao7rJ/2L35OmI2vsXOLUZ8JGlNhhc4of7M1VWwVBab2yKYBaTwYau -C/kLH/zYjTUYCkUYUL8pQJd8Tb353rPcp1HJIyTF10g3QgxTr6QzNCqcg2pJwRui -wkqAsUVP64EX6spUMlngWWxREywn/p9GsFi6MZUJ4QK8V/7yRMg+gENl1oPq04Vl -fw8HQn8LICRbLfhSjdaLcFxQr2TJBoTXBg7LAT549Q1jfMNZpt3zvhrI1/IWIrvr -RM6QTwUd2viJl8OMmTEVl5pZ5dJMW6jiUIazu5IG88lcPastN4iamdjiDWjxKZcB -ASfRReG9Jgu9cAshTsqlSOsUZgqwRE0cbZ0q4r/Sy4/ekIyRNZy3MxfsmZtf9vmr -LfQ1YWwtLvff/k1LbcCm+BAC34KcyYHtbNQtM0kcbGx1wB7MUWIgqT2hHDB1D1IC -XskzodgGwPTuZaAEZjL5o4PA9qy5qYUFBTS2szhRPBfHgvDAnP9NB47jDutjllxz -slG2f/aQFKRvuqyXG7wGyFi8nsSaCLWmyjIoQjltYOcK+147liPbbCMgB9r26/QS -kyXnLfkac8cf/utdYXilr37nFOZnQR3BZm5tDXXGrdOLINv47QB1oYwAdx4W0kOE -oyeQ2DzjyNikXpUZzfA/cniu+Q+qOHEM0+U1eJrKwKb1uS+rLz8= -=BeQ7 ------END PGP SIGNATURE----- diff --git a/dev-db/percona-server/files/my.cnf-5.6 b/dev-db/percona-server/files/my.cnf-5.6 deleted file mode 100644 index 047c8d7..0000000 --- a/dev-db/percona-server/files/my.cnf-5.6 +++ /dev/null @@ -1,140 +0,0 @@ -# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/my.cnf: The global mysql configuration file. - -# The following options will be passed to all MySQL clients -[client] -#password = your_password -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock - -[mysql] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqladmin] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlcheck] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqldump] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlimport] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysqlshow] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[myisamchk] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -[myisampack] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -# use [safe_mysqld] with mysql-3 -[mysqld_safe] -err-log = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysql.err - -# add a section [mysqld-4.1] or [mysqld-5.0] for specific configurations -[mysqld] -character-set-server = utf8 -user = mysql -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock -pid-file = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.pid -log-error = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysqld.err -basedir = @GENTOO_PORTAGE_EPREFIX@/usr -datadir = @DATADIR@ -skip-external-locking -key_buffer_size = 16M -max_allowed_packet = 4M -table_open_cache = 400 -sort_buffer_size = 512K -net_buffer_length = 16K -read_buffer_size = 256K -read_rnd_buffer_size = 512K -myisam_sort_buffer_size = 8M -lc_messages_dir = @GENTOO_PORTAGE_EPREFIX@/usr/share/mysql -#Set this to your desired error message language -lc_messages = en_US - -# security: -# using "localhost" in connects uses sockets by default -# skip-networking -bind-address = 127.0.0.1 - -log-bin -server-id = 1 - -# point the following paths to different dedicated disks -tmpdir = @GENTOO_PORTAGE_EPREFIX@/tmp/ -#log-update = @GENTOO_PORTAGE_EPREFIX@/path-to-dedicated-directory/hostname - -# you need the debug USE flag enabled to use the following directives, -# if needed, uncomment them, start the server and issue -# #tail -f @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.trace -# this will show you *exactly* what's happening in your server ;) - -#log = @GENTOO_PORTAGE_EPREFIX@/tmp/mysqld.sql -#gdb -#debug = d:t:i:o,/tmp/mysqld.trace -#one-thread - -# the rest of the innodb config follows: -# don't eat too much memory, we're trying to be safe on 64Mb boxes -# you might want to bump this up a bit on boxes with more RAM -innodb_buffer_pool_size = 128M -# -# i'd like to use @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/innodb, but that is seen as a database :-( -# and upstream wants things to be under @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/, so that's the route -# we have to take for the moment -#innodb_data_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -#innodb_log_arch_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -#innodb_log_group_home_dir = @GENTOO_PORTAGE_EPREFIX@/var/lib/mysql/ -# you may wish to change this size to be more suitable for your system -# the max is there to avoid run-away growth on your machine -innodb_data_file_path = ibdata1:10M:autoextend:max:128M -# we keep this at around 25% of of innodb_buffer_pool_size -# sensible values range from 1MB to (1/innodb_log_files_in_group*innodb_buffer_pool_size) -innodb_log_file_size = 48M -# this is the default, increase it if you have very large transactions going on -innodb_log_buffer_size = 8M -# this is the default and won't hurt you -# you shouldn't need to tweak it -innodb_log_files_in_group=2 -# see the innodb config docs, the other options are not always safe -innodb_flush_log_at_trx_commit = 1 -innodb_lock_wait_timeout = 50 -innodb_file_per_table - -# Uncomment this to get FEDERATED engine support -#plugin-load=federated=ha_federated.so -loose-federated - -[mysqldump] -quick -max_allowed_packet = 16M - -[mysql] -# uncomment the next directive if you are not familiar with SQL -#safe-updates - -[isamchk] -key_buffer_size = 20M -sort_buffer_size = 20M -read_buffer = 2M -write_buffer = 2M - -[myisamchk] -key_buffer_size = 20M -sort_buffer_size = 20M -read_buffer_size = 2M -write_buffer_size = 2M - -[mysqlhotcopy] -interactive-timeout diff --git a/dev-db/percona-server/files/my.cnf-5.7 b/dev-db/percona-server/files/my.cnf-5.7 deleted file mode 100644 index 571ebf0..0000000 --- a/dev-db/percona-server/files/my.cnf-5.7 +++ /dev/null @@ -1,3 +0,0 @@ -# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/my.cnf: The global mysql configuration file. - -!includedir @GENTOO_PORTAGE_EPREFIX@/etc/mysql/mysql.d diff --git a/dev-db/percona-server/files/my.cnf.distro-client b/dev-db/percona-server/files/my.cnf.distro-client deleted file mode 100644 index 8bf1836..0000000 --- a/dev-db/percona-server/files/my.cnf.distro-client +++ /dev/null @@ -1,21 +0,0 @@ -# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/50-distro-client.cnf: The global mysql configuration file. - -# The following options will be passed to all MySQL clients -[client] -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock -character-sets-dir = @GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets -default-character-set=utf8 - -[mysql] -# uncomment the next directive if you are not familiar with SQL -#safe-updates - -[mysqldump] -quick -max_allowed_packet = 16M - -[myisamchk] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets - -[myisampack] -character-sets-dir=@GENTOO_PORTAGE_EPREFIX@/usr/share/mysql/charsets diff --git a/dev-db/percona-server/files/my.cnf.distro-server b/dev-db/percona-server/files/my.cnf.distro-server deleted file mode 100644 index d4ed30c..0000000 --- a/dev-db/percona-server/files/my.cnf.distro-server +++ /dev/null @@ -1,28 +0,0 @@ -# @GENTOO_PORTAGE_EPREFIX@/etc/mysql/50-distro-server.cnf: The global mysql configuration file. - -# add a section [mysqld-4.1] or [mysqld-5.0] for specific configurations -[mysqld] -character-set-server = utf8 -user = mysql -port = 3306 -socket = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysqld.sock -pid-file = @GENTOO_PORTAGE_EPREFIX@/var/run/mysqld/mysql.pid -log-error = @GENTOO_PORTAGE_EPREFIX@/var/log/mysql/mysqld.err -basedir = @GENTOO_PORTAGE_EPREFIX@/usr -datadir = @DATADIR@ -skip-external-locking -lc_messages_dir = @GENTOO_PORTAGE_EPREFIX@/usr/share/mysql -#Set this to your desired error message language -lc_messages = en_US - -# security: -# using "localhost" in connects uses sockets by default -# skip-networking -bind-address = 127.0.0.1 - -log-bin -server-id = 1 - -# point the following paths to different dedicated disks -tmpdir = @GENTOO_PORTAGE_EPREFIX@/tmp/ -#log-update = @GENTOO_PORTAGE_EPREFIX@/path-to-dedicated-directory/hostname diff --git a/dev-db/percona-server/metadata.xml b/dev-db/percona-server/metadata.xml deleted file mode 100644 index 526cc50..0000000 --- a/dev-db/percona-server/metadata.xml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> -<pkgmetadata> - <maintainer type="project"> - <email>mysql-bugs@gentoo.org</email> - <name>MySQL</name> - </maintainer> - <maintainer type="person"> - <email>hasufell@gentoo.org</email> - <description>Libressl issues. Only assign if it's a direct Libressl issue. Do not directly assign for anything else.</description> - </maintainer> -<use> - <flag name="client-libs">Build the libmysqlclient libraries</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="libressl">Enable SSL connections and crypto functions using <pkg>dev-libs/libressl</pkg></flag> - <flag name="numa">Enable NUMA support using <pkg>sys-process/numactl</pkg> (NUMA kernel support is also required)</flag> - <flag name="profiling">Add support for statement profiling (requires USE=community).</flag> - <flag name="rocksdb">Add support for RocksDB; a key/value, LSM database optimized for flash storage</flag> - <flag name="server">Build the server program</flag> - <flag name="systemtap">Build support for profiling and tracing using <pkg>dev-util/systemtap</pkg></flag> - <flag name="test-suite">Install upstream testsuites for end use.</flag> - <flag name="tokudb">Add support for TokuDB storage engine</flag> - <flag name="tokudb-backup-plugin">Builds the TokuDB backup plugin</flag> - <flag name="yassl">Enable SSL connections and crypto functions using the bundled yaSSL</flag> -</use> -</pkgmetadata> diff --git a/dev-db/percona-server/percona-server-5.6.39.83.1-r1.ebuild b/dev-db/percona-server/percona-server-5.6.39.83.1-r1.ebuild deleted file mode 100644 index 89fe0ee..0000000 --- a/dev-db/percona-server/percona-server-5.6.39.83.1-r1.ebuild +++ /dev/null @@ -1,944 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="6" -MY_EXTRAS_VER="20180329-0129Z" -PYTHON_COMPAT=( python2_7 ) -CMAKE_MAKEFILE_GENERATOR=emake - -# Keeping eutils in EAPI=6 for emktemp in pkg_config - -inherit linux-info python-any-r1 eutils flag-o-matic prefix toolchain-funcs \ - versionator user cmake-utils multilib-minimal - -MY_PV=$(replace_version_separator 3 '-') -MY_PN="Percona-Server" -MY_MAJOR_PV=$(get_version_component_range 1-2) -MY_RELEASE_NOTES_URI="https://www.percona.com/doc/percona-server/5.6/release-notes/release-notes_index.html" -SRC_URI="https://www.percona.com/downloads/${MY_PN}-${MY_MAJOR_PV}/${MY_PN}-${MY_PV}/source/tarball/${PN}-${MY_PV}.tar.gz" - -# Gentoo patches to MySQL -if [[ "${MY_EXTRAS_VER}" != "live" && "${MY_EXTRAS_VER}" != "none" ]]; then - SRC_URI="${SRC_URI} - mirror://gentoo/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://gitweb.gentoo.org/proj/mysql-extras.git/snapshot/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~grknight/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~robbat2/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 - https://dev.gentoo.org/~jmbsvicetto/distfiles/mysql-extras-${MY_EXTRAS_VER}.tar.bz2" -fi - -HOMEPAGE="https://www.percona.com/software/percona-server" -DESCRIPTION="An enhanced, drop-in replacement for MySQL from the Percona team" -LICENSE="GPL-2" -SLOT="0/18" -IUSE="-client-libs cracklib debug jemalloc latin1 libressl numa pam +perl profiling rocksdb selinux - +server static static-libs systemtap tcmalloc test test-suite tokudb tokudb-backup-plugin yassl" - -# Tests always fail when libressl is enabled due to hard-coded ciphers in the tests -RESTRICT="libressl? ( test )" - -REQUIRED_USE="tokudb-backup-plugin? ( tokudb ) tokudb? ( jemalloc !tcmalloc ) ?? ( tcmalloc jemalloc ) static? ( yassl )" - -KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris" - -# Shorten the path because the socket path length must be shorter than 107 chars -# and we will run a mysql server during test phase -S="${WORKDIR}/mysql" - -if [[ "${MY_EXTRAS_VER}" == "live" ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/mysql-extras.git" - EGIT_CHECKOUT_DIR="${WORKDIR}/mysql-extras" - EGIT_CLONE_TYPE=shallow - MY_PATCH_DIR="${WORKDIR}/mysql-extras" -else - MY_PATCH_DIR="${WORKDIR}/mysql-extras-${MY_EXTRAS_VER}" -fi - -PATCHES=( - "${MY_PATCH_DIR}"/01050_all_mysql_config_cleanup-5.6.patch - "${MY_PATCH_DIR}"/02040_all_embedded-library-shared-5.5.10.patch - "${MY_PATCH_DIR}"/20001_all_fix-minimal-build-cmake-mysql-5.6.20.patch - "${MY_PATCH_DIR}"/20007_all_cmake-debug-werror-5.6.22.patch - "${MY_PATCH_DIR}"/20008_all_mysql-tzinfo-symlink-5.6.37.patch - "${MY_PATCH_DIR}"/20009_all_mysql_myodbc_symbol_fix-5.6.patch - "${MY_PATCH_DIR}"/20018_all_percona-server-5.6.39-without-clientlibs-tools.patch -) - -# Be warned, *DEPEND are version-dependant -# These are used for both runtime and compiletime -# MULTILIB_USEDEP only set for libraries used by the client library -COMMON_DEPEND=" - kernel_linux? ( - sys-process/procps:0= - dev-libs/libaio:0= - ) - >=sys-apps/sed-4 - >=sys-apps/texinfo-4.7-r1 - jemalloc? ( dev-libs/jemalloc:0= ) - tcmalloc? ( dev-util/google-perftools:0= ) - systemtap? ( >=dev-util/systemtap-1.3:0= ) - !yassl? ( - client-libs? ( - !libressl? ( >=dev-libs/openssl-1.0.0:0=[${MULTILIB_USEDEP},static-libs?] ) - libressl? ( dev-libs/libressl:0=[${MULTILIB_USEDEP},static-libs?] ) - ) - !client-libs? ( - !libressl? ( >=dev-libs/openssl-1.0.0:0= ) - libressl? ( dev-libs/libressl:0= ) - ) - ) - client-libs? ( >=sys-libs/zlib-1.2.3:0=[${MULTILIB_USEDEP},static-libs?] ) - !client-libs? ( >=sys-libs/zlib-1.2.3:0= ) - sys-libs/ncurses:0= - server? ( - >=dev-libs/boost-1.65.0:= - numa? ( sys-process/numactl ) - pam? ( virtual/pam:0= ) - tokudb? ( app-arch/snappy ) - tokudb-backup-plugin? ( dev-util/valgrind ) - ) - !client-libs? ( dev-db/mysql-connector-c[${MULTILIB_USEDEP},static-libs?] ) -" -DEPEND="virtual/yacc - static? ( sys-libs/ncurses[static-libs] ) - test? ( - $(python_gen_any_dep 'dev-python/mysql-python[${PYTHON_USEDEP}]') - dev-perl/JSON - ) - ${COMMON_DEPEND}" -RDEPEND="selinux? ( sec-policy/selinux-mysql ) - abi_x86_32? ( !app-emulation/emul-linux-x86-db[-abi_x86_32(-)] ) - client-libs? ( !dev-db/mariadb-connector-c[mysqlcompat] !dev-db/mysql-connector-c ) - !dev-db/mariadb !dev-db/mariadb-galera !dev-db/percona-server !dev-db/mysql-cluster - server? ( !prefix? ( dev-db/mysql-init-scripts ) ) - ${COMMON_DEPEND} -" -# For other stuff to bring us in -# dev-perl/DBD-mysql is needed by some scripts installed by MySQL -PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 )" - -python_check_deps() { - has_version "dev-python/mysql-python[${PYTHON_USEDEP}]" -} - -mysql_init_vars() { - MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX%/}/usr/share/mysql"} - MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX%/}/etc/mysql"} - MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX%/}/var/lib/mysql"} - MY_LOGDIR=${MY_LOGDIR="${EPREFIX%/}/var/log/mysql"} - - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR="" - if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then - MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \ - | sed -ne '/datadir/s|^--datadir=||p' \ - | tail -n1` - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR=`grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \ - | sed -e 's/.*=\s*//' \ - | tail -n1` - fi - fi - if [[ -z "${MY_DATADIR}" ]] ; then - MY_DATADIR="${MY_LOCALSTATEDIR}" - einfo "Using default MY_DATADIR" - fi - elog "MySQL MY_DATADIR is ${MY_DATADIR}" - - if [[ -z "${PREVIOUS_DATADIR}" ]] ; then - if [[ -e "${MY_DATADIR}" ]] ; then - # If you get this and you're wondering about it, see bug #207636 - elog "MySQL datadir found in ${MY_DATADIR}" - elog "A new one will not be created." - PREVIOUS_DATADIR="yes" - else - PREVIOUS_DATADIR="no" - fi - export PREVIOUS_DATADIR - fi - else - if [[ ${EBUILD_PHASE} == "config" ]] ; then - local new_MY_DATADIR - new_MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \ - | sed -ne '/datadir/s|^--datadir=||p' \ - | tail -n1` - - if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]] ; then - ewarn "MySQL MY_DATADIR has changed" - ewarn "from ${MY_DATADIR}" - ewarn "to ${new_MY_DATADIR}" - MY_DATADIR="${new_MY_DATADIR}" - fi - fi - fi - - export MY_SHAREDSTATEDIR MY_SYSCONFDIR - export MY_LOCALSTATEDIR MY_LOGDIR - export MY_DATADIR -} - -pkg_pretend() { - if use numa; then - local CONFIG_CHECK="~NUMA" - - local WARNING_NUMA="This package expects NUMA support in kernel which this system does not have at the moment;" - WARNING_NUMA+=" Either expect runtime errors, enable NUMA support in kernel or rebuild the package without NUMA support" - - check_extra_config - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - local GCC_MAJOR_SET=$(gcc-major-version) - local GCC_MINOR_SET=$(gcc-minor-version) - if use tokudb && [[ ${GCC_MAJOR_SET} -lt 4 || \ - ${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then - eerror "${PN} with tokudb needs to be built with gcc-4.7 or later." - eerror "Please use gcc-config to switch to gcc-4.7 or later version." - die - fi - # Bug 565584. InnoDB now requires atomic functions introduced with gcc-4.7 on - # non x86{,_64} arches - if ! use amd64 && ! use x86 && [[ ${GCC_MAJOR_SET} -lt 4 || \ - ${GCC_MAJOR_SET} -eq 4 && ${GCC_MINOR_SET} -lt 7 ]] ; then - eerror "${PN} needs to be built with gcc-4.7 or later." - eerror "Please use gcc-config to switch to gcc-4.7 or later version." - die - fi - fi - if has test ${FEATURES} && \ - use server && ! has userpriv ${FEATURES} ; then - eerror "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root." - fi - - # This should come after all of the die statements - enewgroup mysql 60 || die "problem adding 'mysql' group" - enewuser mysql 60 -1 /dev/null mysql || die "problem adding 'mysql' user" -} - -src_unpack() { - unpack ${A} - - # Grab the patches - [[ "${MY_EXTRAS_VER}" == "live" ]] && S="${WORKDIR}/mysql-extras" git-r3_src_unpack - - mv -f "${WORKDIR}/${PN}-${MY_PV}" "${S}" || die -} - -src_prepare() { - if use jemalloc ; then - echo "TARGET_LINK_LIBRARIES(mysqld jemalloc)" >> "${S}/sql/CMakeLists.txt" || die - elif use tcmalloc ; then - echo "TARGET_LINK_LIBRARIES(mysqld tcmalloc)" >> "${S}/sql/CMakeLists.txt" || die - fi - - # Don't build bundled xz-utils - if [[ -d "${S}/storage/tokudb/ft-index" ]] ; then - echo > "${S}/storage/tokudb/ft-index/cmake_modules/TokuThirdParty.cmake" || die - sed -i 's/ build_lzma//' "${S}/storage/tokudb/ft-index/ft/CMakeLists.txt" || die - elif [[ -d "${S}/storage/tokudb/PerconaFT" ]] ; then - echo > "${S}/storage/tokudb/PerconaFT/cmake_modules/TokuThirdParty.cmake" || die - sed -i -e 's/ build_lzma//' -e 's/ build_snappy//' "${S}/storage/tokudb/PerconaFT/ft/CMakeLists.txt" || die - sed -i -e 's/add_dependencies\(tokuportability_static_conv build_jemalloc\)//' "${S}/storage/tokudb/PerconaFT/portability/CMakeLists.txt" || die - fi - - if [[ -d "${S}/plugin/tokudb-backup-plugin" ]] && ! use tokudb-backup-plugin ; then - rm -r "${S}/plugin/tokudb-backup-plugin/Percona-TokuBackup" || die - fi - - # Remove the centos and rhel selinux policies to support mysqld_safe under SELinux - if [[ -d "${S}/support-files/SELinux" ]] ; then - echo > "${S}/support-files/SELinux/CMakeLists.txt" || die - fi - - if use libressl ; then - sed -i 's/OPENSSL_MAJOR_VERSION STREQUAL "1"/OPENSSL_MAJOR_VERSION STREQUAL "2"/' \ - "${S}/cmake/ssl.cmake" || die - fi - - cmake-utils_src_prepare -} - -src_configure() { - # bug 508724 mariadb cannot use ld.gold - tc-ld-disable-gold - - # Bug #114895, bug #110149 - filter-flags "-O" "-O[01]" - - append-cxxflags -felide-constructors - - # bug #283926, with GCC4.4, this is required to get correct behavior. - append-flags -fno-strict-aliasing - - if use client-libs ; then - multilib-minimal_src_configure - else - multilib_src_configure - fi -} - -multilib_src_configure() { - debug-print-function ${FUNCNAME} "$@" - - if ! multilib_is_native_abi && ! use client-libs ; then - return - fi - - CMAKE_BUILD_TYPE="RelWithDebInfo" - - # debug hack wrt #497532 - mycmakeargs=( - -DCMAKE_C_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')" - -DCMAKE_CXX_FLAGS_RELWITHDEBINFO="$(usex debug '' '-DNDEBUG')" - -DCMAKE_INSTALL_PREFIX="${EPREFIX%/}/usr" - -DMYSQL_DATADIR="${EPREFIX%/}/var/lib/mysql" - -DSYSCONFDIR="${EPREFIX%/}/etc/mysql" - -DINSTALL_BINDIR=bin - -DINSTALL_DOCDIR=share/doc/${PF} - -DINSTALL_DOCREADMEDIR=share/doc/${PF} - -DINSTALL_INCLUDEDIR=include/mysql - -DINSTALL_INFODIR=share/info - -DINSTALL_LIBDIR=$(get_libdir) - -DINSTALL_MANDIR=share/man - -DINSTALL_MYSQLSHAREDIR=share/mysql - -DINSTALL_PLUGINDIR=$(get_libdir)/mysql/plugin - -DINSTALL_SCRIPTDIR=share/mysql/scripts - -DINSTALL_SQLBENCHDIR=NO - -DINSTALL_MYSQLDATADIR="${EPREFIX%/}/var/lib/mysql" - -DINSTALL_SBINDIR=sbin - -DINSTALL_SUPPORTFILESDIR="${EPREFIX%/}/usr/share/mysql" - -DCOMPILATION_COMMENT="Gentoo Linux ${PF}" - -DWITH_UNIT_TESTS=$(usex test ON OFF) - ### TODO: make this system but issues with UTF-8 prevent it - -DWITH_EDITLINE=bundled - -DWITH_ZLIB=system - -DWITH_LIBWRAP=0 - -DENABLED_LOCAL_INFILE=1 - -DMYSQL_UNIX_ADDR="${EPREFIX%/}/var/run/mysqld/mysqld.sock" - -DWITH_DEFAULT_COMPILER_OPTIONS=0 - -DWITH_DEFAULT_FEATURE_SET=0 - # The build forces this to be defined when cross-compiling. We pass it - # all the time for simplicity and to make sure it is actually correct. - -DSTACK_DIRECTION=$(tc-stack-grows-down && echo -1 || echo 1) - -DWITH_LIBEVENT=NO - ) - if use test || use test-suite ; then - mycmakeargs+=( -DINSTALL_MYSQLTESTDIR=share/mysql/mysql-test ) - else - mycmakeargs+=( -DINSTALL_MYSQLTESTDIR='' ) - fi - - if ! use yassl ; then - mycmakeargs+=( -DWITH_SSL=system ) - else - mycmakeargs+=( -DWITH_SSL=bundled ) - fi - - if ! use client-libs ; then - mycmakeargs+=( -DWITHOUT_CLIENTLIBS=YES ) - fi - - # bfd.h is only used starting with 10.1 and can be controlled by NOT_FOR_DISTRIBUTION - # systemtap only works on native ABI bug 530132 - if multilib_is_native_abi; then - mycmakeargs+=( - -DENABLE_DTRACE=$(usex systemtap) - ) - else - mycmakeargs+=( - -DWITHOUT_TOOLS=1 - -DWITH_READLINE=1 - -DENABLE_DTRACE=0 - ) - fi - - if multilib_is_native_abi && use server ; then - mycmakeargs+=( - -DWITH_PAM=$(usex pam) - -DWITH_NUMA=$(usex numa ON OFF) - ) - - if [[ ( -n ${MYSQL_DEFAULT_CHARSET} ) && ( -n ${MYSQL_DEFAULT_COLLATION} ) ]] ; then - ewarn "You are using a custom charset of ${MYSQL_DEFAULT_CHARSET}" - ewarn "and a collation of ${MYSQL_DEFAULT_COLLATION}." - ewarn "You MUST file bugs without these variables set." - - mycmakeargs+=( - -DDEFAULT_CHARSET=${MYSQL_DEFAULT_CHARSET} - -DDEFAULT_COLLATION=${MYSQL_DEFAULT_COLLATION} - ) - - elif ! use latin1 ; then - mycmakeargs+=( - -DDEFAULT_CHARSET=utf8 - -DDEFAULT_COLLATION=utf8_general_ci - ) - else - mycmakeargs+=( - -DDEFAULT_CHARSET=latin1 - -DDEFAULT_COLLATION=latin1_swedish_ci - ) - fi - mycmakeargs+=( - -DEXTRA_CHARSETS=all - -DDISABLE_SHARED=$(usex static YES NO) - -DWITH_DEBUG=$(usex debug) - -DWITH_EMBEDDED_SERVER=OFF - -DENABLED_PROFILING=$(usex profiling) - ) - - if use static; then - mycmakeargs+=( -DWITH_PIC=1 ) - fi - - # Storage engines - mycmakeargs+=( - -DWITH_EXAMPLE_STORAGE_ENGINE=0 - -DWITH_ARCHIVE_STORAGE_ENGINE=1 - -DWITH_BLACKHOLE_STORAGE_ENGINE=1 - -DWITH_CSV_STORAGE_ENGINE=1 - -DWITH_HEAP_STORAGE_ENGINE=1 - -DWITH_INNOBASE_STORAGE_ENGINE=1 - -DWITH_MYISAMMRG_STORAGE_ENGINE=1 - -DWITH_MYISAM_STORAGE_ENGINE=1 - -DWITH_PARTITION_STORAGE_ENGINE=1 - -DWITH_FEDERATED_STORAGE_ENGINE=1 - -DWITH_INNODB_MEMCACHED=0 - -DWITH_ROCKSDB=$(usex rocksdb 1 0) - $(usex tokudb '' -DWITHOUT_TOKUDB=1) - ) - - if use tokudb ; then - # TokuDB Backup plugin requires valgrind unconditionally - mycmakeargs+=( - $(usex tokudb-backup-plugin '' -DTOKUDB_BACKUP_DISABLED=1) - ) - fi - - else - mycmakeargs+=( - -DWITHOUT_SERVER=1 - -DWITH_EMBEDDED_SERVER=OFF - -DEXTRA_CHARSETS=none - ) - fi - - cmake-utils_src_configure -} - -src_compile() { - if use client-libs ; then - multilib-minimal_src_compile - else - multilib_src_compile - fi -} - -multilib_src_compile() { - cmake-utils_src_compile -} - -# Official test instructions: -# FEATURES='test userpriv -usersandbox' \ -# ebuild percona-server-X.X.XX.ebuild \ -# digest clean package -src_test() { - _disable_test() { - local rawtestname reason - rawtestname="${1}" ; shift - reason="${@}" - ewarn "test '${rawtestname}' disabled: '${reason}'" - echo ${rawtestname} : ${reason} >> "${T}/disabled.def" - } - - local TESTDIR="${BUILD_DIR}/mysql-test" - local retstatus_unit - 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" - - 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} || die "Failed to create \"${T}/var-tests{,/log}\"" - - # Run mysql tests - pushd "${TESTDIR}" > /dev/null || die "Failed to chdir into \"${TESTDIR}\"" - - touch "${T}/disabled.def" - # These are failing in MySQL 5.6 for now and are believed to be - # false positives: - - local t - 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 - _disable_test "$t" "False positives in Gentoo" - done - - if use numa && use kernel_linux ; then - # bug 584880 - if ! linux_config_exists || ! linux_chkconfig_present NUMA ; then - for t in sys_vars.innodb_buffer_pool_populate_basic ; do - _disable_test "$t" "Test $t requires system with NUMA support" - done - fi - fi - - # Set file limits higher so tests run - if ! ulimit -n 16500 1>/dev/null 2>&1 ; then - # Upper limit comes from parts.partition_* tests - ewarn "For maximum test coverage please raise open file limit to 16500 (ulimit -n 16500) before calling the package manager." - - if ! ulimit -n 4162 1>/dev/null 2>&1 ; then - # Medium limit comes from '[Warning] Buffered warning: Could not increase number of max_open_files to more than 3000 (request: 4162)' - ewarn "For medium test coverage please raise open file limit to 4162 (ulimit -n 4162) before calling the package manager." - - if ! ulimit -n 3000 1>/dev/null 2>&1 ; then - ewarn "For minimum test coverage please raise open file limit to 3000 (ulimit -n 3000) before calling the package manager." - else - einfo "Will run test suite with open file limit set to 3000 (minimum test coverage)." - fi - else - einfo "Will run test suite with open file limit set to 4162 (medium test coverage)." - fi - else - einfo "Will run test suite with open file limit set to 16500 (best test coverage)." - fi - - python_setup - # run mysql-test tests - perl mysql-test-run.pl --force --vardir="${T}/var-tests" \ - --testcase-timeout=30 --reorder --skip-test-list="${T}/disabled.def" - retstatus_tests=$? - - popd > /dev/null || 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" - - if [[ -n "$failures" ]] ; then - if has usersandbox ${FEATURES}; then - ewarn "Some tests may have failed due to FEATURES=usersandbox" - ewarn "Please confirm test failure with FEATURES=-usersandbox before reporting a bug." - fi - - die "Test failures: $failures" - fi - - einfo "Tests successfully completed" -} - -src_install() { - local MULTILIB_WRAPPED_HEADERS - local MULTILIB_CHOST_TOOLS - if use client-libs ; then - # headers with ABI specific data - MULTILIB_WRAPPED_HEADERS=( - /usr/include/mysql/server/my_config.h - /usr/include/mysql/server/mysql_version.h ) - - # wrap the config scripts - MULTILIB_CHOST_TOOLS=( /usr/bin/mysql_config ) - multilib-minimal_src_install - else - multilib_src_install - multilib_src_install_all - fi -} - -# Intentionally override eclass function -multilib_src_install() { - cmake-utils_src_install - - # Kill old libmysqclient_r symlinks if they exist. Time to fix what depends on them. - find "${D}" -name 'libmysqlclient_r.*' -type l -delete || die -} - -multilib_src_install_all() { - # Make sure the vars are correctly initialized - mysql_init_vars - - # Convenience links - einfo "Making Convenience links for mysqlcheck multi-call binary" - dosym "mysqlcheck" "/usr/bin/mysqlanalyze" - dosym "mysqlcheck" "/usr/bin/mysqlrepair" - dosym "mysqlcheck" "/usr/bin/mysqloptimize" - - # INSTALL_LAYOUT=STANDALONE causes cmake to create a /usr/data dir - if [[ -d "${ED}/usr/data" ]] ; then - rm -rf "${ED%/}/usr/data" || die - fi - - # Unless they explicitly specific USE=test, then do not install the - # testsuite. It DOES have a use to be installed, esp. when you want to do a - # validation of your database configuration after tuning it. - if ! use test-suite ; then - rm -rf "${D%/}/${MY_SHAREDSTATEDIR#/}/mysql-test" || die - fi - - # Configuration stuff - einfo "Building default configuration ..." - insinto "${MY_SYSCONFDIR#${EPREFIX}}" - [[ -f "${S}/scripts/mysqlaccess.conf" ]] && doins "${S}"/scripts/mysqlaccess.conf - mycnf_src="my.cnf-5.6" - sed -e "s!@DATADIR@!${MY_DATADIR}!g" \ - "${FILESDIR}/${mycnf_src}" \ - > "${TMPDIR}/my.cnf.ok" || die - use prefix && sed -i -r -e '/^user[[:space:]]*=[[:space:]]*mysql$/d' "${TMPDIR}/my.cnf.ok" - if use latin1 ; then - sed -i \ - -e "/character-set/s|utf8|latin1|g" \ - "${TMPDIR}/my.cnf.ok" || die - fi - eprefixify "${TMPDIR}/my.cnf.ok" - newins "${TMPDIR}/my.cnf.ok" my.cnf - - if use server ; then - einfo "Including support files and sample configurations" - docinto "support-files" - for script in \ - "${S}"/support-files/my-*.cnf.sh \ - "${S}"/support-files/magic \ - "${S}"/support-files/ndb-config-2-node.ini.sh - do - [[ -f $script ]] && dodoc "${script}" - done - - docinto "scripts" - for script in "${S}"/scripts/mysql* ; do - [[ ( -f $script ) && ( ${script%.sh} == ${script} ) ]] && dodoc "${script}" - done - fi - - #Remove mytop if perl is not selected - [[ -e "${ED%/}/usr/bin/mytop" ]] && ! use perl && rm -f "${ED}/usr/bin/mytop" -} - -pkg_preinst() { - # Here we need to see if the implementation switched client libraries - # We check if this is a new instance of the package and a client library already exists - local SHOW_ABI_MESSAGE libpath - if use client-libs && [[ -z ${REPLACING_VERSIONS} && -e "${EROOT}usr/$(get_libdir)/libmysqlclient.so" ]] ; then - libpath=$(readlink "${EROOT}usr/$(get_libdir)/libmysqlclient.so") - elog "Due to ABI changes when switching between different client libraries," - elog "revdep-rebuild must find and rebuild all packages linking to libmysqlclient." - elog "Please run: revdep-rebuild --library ${libpath}" - ewarn "Failure to run revdep-rebuild may cause issues with other programs or libraries" - fi -} - -pkg_postinst() { - # Make sure the vars are correctly initialized - mysql_init_vars - - # Create log directory securely if it does not exist - [[ -d "${EROOT%/}${MY_LOGDIR}" ]] || install -d -m0750 -o mysql -g mysql "${EROOT%/}${MY_LOGDIR}" - - if use server ; then - if [[ -z "${REPLACING_VERSIONS}" ]] ; then - einfo - elog "You might want to run:" - elog " \"emerge --config =${CATEGORY}/${PF}\"" - elog "if this is a new install." - elog - elog "If you are switching server implentations, you should run the" - elog "mysql_upgrade tool." - einfo - else - local _replacing_version= - for _replacing_version in ${REPLACING_VERSIONS}; do - local _new_version_branch=$(get_version_component_range 1-3 "${PV}") - local _replacing_version_branch=$(get_version_component_range 1-3 "${_replacing_version}") - debug-print "Updating an existing installation (v${_replacing_version}; branch '${_replacing_version_branch}') ..." - - if ! version_is_at_least "${_new_version_branch}" "${_replacing_version_branch}"; then - debug-print "Upgrading from v${_replacing_version_branch} to v${_new_version_branch} ..." - # https://www.percona.com/blog/2014/09/19/mysql-upgrade-best-practices/ - - einfo - elog "You are upgrading an existing ${PN} installation, you should review" - elog "release notes at ${MY_RELEASE_NOTES_URI}" - elog "and run the mysql_upgrade tool." - einfo - - // Break loop - we only want to show this hint once - break - fi - done - fi - - elog "Since ${PN}-5.6.39.83.1-r1 we no longer provide client libs." - elog "Applications depending on client libs should migrate to dev-db/mysql-connector-c" - elog "as their new client lib provider." - einfo - fi -} - -pkg_config() { - _getoptval() { - local mypd="${EROOT%/}"/usr/bin/my_print_defaults - local section="${1}" - local flag="--${2}=" - local extra_options="${3}" - "${mypd}" $extra_options $section | sed -n "/^${flag}/s,${flag},,gp" - } - - # 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" - - local old_MY_DATADIR="${MY_DATADIR}" - local old_HOME="${HOME}" - # my_print_defaults needs to read stuff in $HOME/.my.cnf - export HOME=${EPREFIX%/}/root - - # Make sure the vars are correctly initialized - mysql_init_vars - - [[ -z "${MY_DATADIR}" ]] && die "Sorry, unable to find MY_DATADIR" - if [[ ! -x "${EROOT%/}/usr/sbin/mysqld" ]] ; then - die "Minimal builds do NOT include the MySQL server" - fi - - if [[ ( -n "${MY_DATADIR}" ) && ( "${MY_DATADIR}" != "${old_MY_DATADIR}" ) ]] ; then - local MY_DATADIR_s="${EROOT%/}/${MY_DATADIR#/}" - MY_DATADIR_s="${MY_DATADIR_s%%/}" - local old_MY_DATADIR_s="${EROOT%/}/${old_MY_DATADIR#/}" - old_MY_DATADIR_s="${old_MY_DATADIR_s%%/}" - - if [[ ( -d "${old_MY_DATADIR_s}" ) && ( "${old_MY_DATADIR_s}" != / ) ]] ; then - if [[ -d "${MY_DATADIR_s}" ]]; then - ewarn "Both ${old_MY_DATADIR_s} and ${MY_DATADIR_s} exist" - ewarn "Attempting to use ${MY_DATADIR_s} and preserving ${old_MY_DATADIR_s}" - else - elog "Moving MY_DATADIR from ${old_MY_DATADIR_s} to ${MY_DATADIR_s}" - mv --strip-trailing-slashes -T "${old_MY_DATADIR_s}" "${MY_DATADIR_s}" \ - || die "Moving MY_DATADIR failed" - fi - else - ewarn "Previous MY_DATADIR (${old_MY_DATADIR_s}) does not exist" - if [[ -d "${MY_DATADIR_s}" ]] ; then - ewarn "Attempting to use ${MY_DATADIR_s}" - else - eerror "New MY_DATADIR (${MY_DATADIR_s}) does not exist" - die "Configuration Failed! Please reinstall ${CATEGORY}/${PN}" - fi - fi - fi - - # These are dir+prefix - MYSQL_TMPDIR="$(_getoptval mysqld tmpdir)" - MYSQL_RELAY_LOG="$(_getoptval mysqld relay-log)" - MYSQL_RELAY_LOG=${MYSQL_RELAY_LOG%/*} - MYSQL_LOG_BIN="$(_getoptval mysqld log-bin)" - MYSQL_LOG_BIN=${MYSQL_LOG_BIN%/*} - - if [[ -d "${EROOT%/}/${MY_DATADIR#/}/mysql" ]] ; then - ewarn "You have already a MySQL database in place." - ewarn "(${EROOT%/}/${MY_DATADIR#/}/*)" - ewarn "Please rename or delete it if you wish to replace it." - die "MySQL database already exists!" - fi - - if [[ ! -d "${EROOT%/}/${MYSQL_TMPDIR#/}" ]] ; then - einfo "Creating MySQL tmpdir $MYSQL_TMPDIR" - install -d -m 770 -o mysql -g mysql "${EROOT%/}/${MYSQL_TMPDIR#/}" - fi - if [[ ! -d "${EROOT%/}/${MYSQL_LOG_BIN#/}" ]] ; then - einfo "Creating MySQL log-bin directory $MYSQL_LOG_BIN" - install -d -m 770 -o mysql -g mysql "${EROOT%/}/${MYSQL_LOG_BIN#/}" - fi - if [[ ! -d "${EROOT%/}/${MYSQL_RELAY_LOG#/}" ]] ; then - einfo "Creating MySQL relay-log directory $MYSQL_RELAY_LOG" - install -d -m 770 -o mysql -g mysql "${EROOT%/}/${MYSQL_RELAY_LOG#/}" - fi - - local pwd1="a" - local pwd2="b" - local maxtry=15 - - if [ -z "${MYSQL_ROOT_PASSWORD}" ] ; then - local tmp_mysqld_password_source= - - for tmp_mysqld_password_source in mysql client; do - einfo "Trying to get password for mysql 'root' user from '${tmp_mysqld_password_source}' section ..." - MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password)" - if [[ -n "${MYSQL_ROOT_PASSWORD}" ]] ; then - if [[ ${MYSQL_ROOT_PASSWORD} == *$'\n'* ]] ; then - ewarn "Ignoring password from '${tmp_mysqld_password_source}' section due to newline character (do you have multiple password options set?)!" - MYSQL_ROOT_PASSWORD= - continue - fi - - einfo "Found password in '${tmp_mysqld_password_source}' section!" - break - fi - done - - # Sometimes --show is required to display passwords in some implementations of my_print_defaults - if [[ "${MYSQL_ROOT_PASSWORD}" == '*****' ]] ; then - MYSQL_ROOT_PASSWORD="$(_getoptval "${tmp_mysqld_password_source}" password --show)" - fi - - unset tmp_mysqld_password_source - fi - - if [[ -z "${MYSQL_ROOT_PASSWORD}" ]] ; then - einfo "Please provide a password for the mysql 'root' user now" - einfo "or through the ${HOME}/.my.cnf file." - ewarn "Avoid [\"'\\_%] characters in the password" - read -rsp " >" pwd1 ; echo - - einfo "Retype the password" - read -rsp " >" pwd2 ; echo - - if [[ "x$pwd1" != "x$pwd2" ]] ; then - die "Passwords are not the same" - fi - MYSQL_ROOT_PASSWORD="${pwd1}" - unset pwd1 pwd2 - fi - - local options - local sqltmp="$(emktemp)" - - # Fix bug 446200. Don't reference host my.cnf, needs to come first, - # see http://bugs.mysql.com/bug.php?id=31312 - use prefix && options="${options} '--defaults-file=${MY_SYSCONFDIR%/}/my.cnf'" - - # Figure out which options we need to disable to do the setup - local helpfile="${TMPDIR%/}/mysqld-help" - "${EROOT%/}/usr/sbin/mysqld" --verbose --help >"${helpfile}" 2>/dev/null - for opt in grant-tables host-cache name-resolve networking slave-start \ - federated ssl log-bin relay-log slow-query-log external-locking \ - log-slave-updates \ - ; do - optexp="--(skip-)?${opt}" optfull="--loose-skip-${opt}" - egrep -sq -- "${optexp}" "${helpfile}" && options="${options} ${optfull}" - done - - einfo "Creating the mysql database and setting proper permissions on it ..." - - # Now that /var/run is a tmpfs mount point, we need to ensure it exists before using it - PID_DIR="${EROOT%/}/var/run/mysqld" - if [[ ! -d "${PID_DIR}" ]] ; then - install -d -m 755 -o mysql -g mysql "${PID_DIR}" || die "Could not create pid directory" - fi - - if [[ ! -d "${EROOT%/}/${MY_DATADIR#/}" ]] ; then - install -d -m 750 -o mysql -g mysql "${EROOT%/}/${MY_DATADIR#/}" || die "Could not create data directory" - fi - - pushd "${TMPDIR}" &>/dev/null || die - - # Filling timezones, see - # http://dev.mysql.com/doc/mysql/en/time-zone-support.html - "${EROOT%/}/usr/bin/mysql_tzinfo_to_sql" "${EROOT%/}/usr/share/zoneinfo" > "${sqltmp}" 2>/dev/null - - local cmd=( "${EROOT%/}/usr/share/mysql/scripts/mysql_install_db" ) - [[ -f "${cmd}" ]] || cmd=( "${EROOT%/}/usr/bin/mysql_install_db" ) - cmd+=( "--basedir=${EROOT%/}/usr" ${options} "--datadir=${EROOT%/}/${MY_DATADIR#/}" "--tmpdir=${EROOT%/}/${MYSQL_TMPDIR#/}" ) - einfo "Command: ${cmd[*]}" - su -s /bin/sh -c "${cmd[*]}" mysql \ - >"${TMPDIR%/}"/mysql_install_db.log 2>&1 - if [[ $? -ne 0 ]] ; then - grep -B5 -A999 -i "ERROR" "${TMPDIR%/}"/mysql_install_db.log 1>&2 - die "Failed to initialize mysqld. Please review ${EROOT%/}/var/log/mysql/mysqld.err AND ${TMPDIR%/}/mysql_install_db.log" - fi - popd &>/dev/null || die - [[ -f "${EROOT%/}/${MY_DATADIR#/}/mysql/user.frm" ]] \ - || die "MySQL databases not installed" - - use prefix || options="${options} --user=mysql" - - local socket="${EROOT%/}/var/run/mysqld/mysqld${RANDOM}.sock" - local pidfile="${EROOT%/}/var/run/mysqld/mysqld${RANDOM}.pid" - local mysqld="${EROOT%/}/usr/sbin/mysqld \ - ${options} \ - --log-warnings=0 \ - --basedir=${EROOT%/}/usr \ - --datadir=${EROOT%/}/${MY_DATADIR#/} \ - --max_allowed_packet=8M \ - --net_buffer_length=16K \ - --socket=${socket} \ - --pid-file=${pidfile} - --tmpdir=${EROOT%/}/${MYSQL_TMPDIR#/}" - #einfo "About to start mysqld: ${mysqld}" - ebegin "Starting mysqld" - einfo "Command ${mysqld}" - ${mysqld} & - rc=$? - while ! [[ -S "${socket}" || "${maxtry}" -lt 1 ]] ; do - maxtry=$((${maxtry}-1)) - echo -n "." - sleep 1 - done - eend $rc - - if ! [[ -S "${socket}" ]] ; then - die "Completely failed to start up mysqld with: ${mysqld}" - fi - - ebegin "Setting root password" - # Do this from memory, as we don't want clear text passwords in temp files - local sql="UPDATE mysql.user SET Password = PASSWORD('${MYSQL_ROOT_PASSWORD}') WHERE USER='root'; FLUSH PRIVILEGES" - "${EROOT%/}/usr/bin/mysql" \ - "--socket=${socket}" \ - -hlocalhost \ - -e "${sql}" - eend $? - - if [[ -n "${sqltmp}" ]] ; then - ebegin "Loading \"zoneinfo\", this step may require a few seconds" - "${EROOT%/}/usr/bin/mysql" \ - "--socket=${socket}" \ - -hlocalhost \ - -uroot \ - --password="${MYSQL_ROOT_PASSWORD}" \ - mysql < "${sqltmp}" - rc=$? - eend $? - [[ $rc -ne 0 ]] && ewarn "Failed to load zoneinfo!" - fi - - # Stop the server and cleanup - einfo "Stopping the server ..." - kill $(< "${pidfile}" ) - rm -f "${sqltmp}" - wait %1 - einfo "Done" -} |