summaryrefslogtreecommitdiff
path: root/eclass
diff options
context:
space:
mode:
authorBrian Evans <grknight@gentoo.org>2015-11-12 10:24:39 -0500
committerBrian Evans <grknight@gentoo.org>2015-11-12 10:24:39 -0500
commita5a5854bcdfb24277e2559cd96532c3f99fdf3ef (patch)
tree3460df931b70ec783b8438f6392ef88574c7588d /eclass
parentdev-java/jss: Remove old (diff)
downloadgentoo-a5a5854bcdfb24277e2559cd96532c3f99fdf3ef.tar.gz
gentoo-a5a5854bcdfb24277e2559cd96532c3f99fdf3ef.tar.bz2
gentoo-a5a5854bcdfb24277e2559cd96532c3f99fdf3ef.zip
mysql-multilib.eclass: Require gcc-4.7 to be active on non-x86{,_64} platforms
Signed-off-by: Brian Evans <grknight@gentoo.org>
Diffstat (limited to 'eclass')
-rw-r--r--eclass/mysql-multilib.eclass14
1 files changed, 12 insertions, 2 deletions
diff --git a/eclass/mysql-multilib.eclass b/eclass/mysql-multilib.eclass
index def53ae5c7fd..69293f100497 100644
--- a/eclass/mysql-multilib.eclass
+++ b/eclass/mysql-multilib.eclass
@@ -503,12 +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
+ # 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
}