commit:     9aaf18966bccd86b6b01e8480b2ec52f6d66cdc5
Author:     Brian Evans <grknight <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 12 15:14:12 2015 +0000
Commit:     Brian Evans <grknight <AT> gentoo <DOT> org>
CommitDate: Thu Nov 12 15:14:12 2015 +0000
URL:        https://gitweb.gentoo.org/proj/mysql.git/commit/?id=9aaf1896

mysql-multilib.eclass: Require gcc-4.7 to be active on non-x86{,_64} platforms

Signed-off-by: Brian Evans <grknight <AT> gentoo.org>

 eclass/mysql-multilib.eclass | 21 ++++++++++++++-------
 1 file changed, 14 insertions(+), 7 deletions(-)

diff --git a/eclass/mysql-multilib.eclass b/eclass/mysql-multilib.eclass
index 23683f5..0016e76 100644
--- a/eclass/mysql-multilib.eclass
+++ b/eclass/mysql-multilib.eclass
@@ -192,7 +192,7 @@ fi
 LICENSE="GPL-2"
 SLOT="0/${SUBSLOT:-0}"
 
-IUSE="cluster debug embedded extraengine jemalloc latin1 libressl +openssl
+IUSE="debug embedded extraengine jemalloc latin1 libressl +openssl
        +perl profiling selinux systemtap static static-libs tcmalloc test 
yassl"
 
 REQUIRED_USE="^^ ( yassl openssl libressl )"
@@ -503,15 +503,22 @@ mysql-multilib_disable_test() {
 # Perform some basic tests and tasks during pkg_pretend phase:
 mysql-multilib_pkg_pretend() {
        if [[ ${MERGE_TYPE} != binary ]] ; then
-               if use_if_iuse tokudb && [[ $(gcc-major-version) -lt 4 || \
-                       $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 
7 ]] ; then
+               local GCC_MAJOR_SET=$(gcc-major-version)
+               local GCC_MINOR_SET=$(gcc-minor-version)
+               if use_if_iuse 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
-       fi
-       if use_if_iuse cluster && [[ "${PN}" != "mysql-cluster" ]]; then
-               die "NDB Cluster support has been removed from all packages 
except mysql-cluster"
+               # 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
 }
 
@@ -887,7 +894,7 @@ mysql-multilib_pkg_postinst() {
                elog "mysql_upgrade tool."
                einfo
 
-               if [[ ${PN} == "mariadb-galera" ]] ; then
+               if [[ ${PN} == "mariadb-galera" ]] || use_if_iuse 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}\""

Reply via email to