aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/Makefile
diff options
context:
space:
mode:
authorAnton Blanchard <anton@samba.org>2012-04-17 14:42:54 -0400
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2012-04-30 01:37:26 -0400
commit82a8508406906a39ed04cb59d83b1703d78dc8b3 (patch)
treed6d07f56aedde9968c33847af31343778406a3cc /arch/powerpc/Makefile
parent694caf0255dcab506d1e174c96a65ab65d96e108 (diff)
powerpc: Require gcc 4.0 on 64-bit
Older versions of gcc had issues with using -maltivec together with -mcpu of a non altivec capable CPU. We work around it by specifying -mcpu=970, but the logic is complicated. In preparation for adding more -mcpu targets, remove the workaround and just require gcc 4.0 for 64-bit builds. Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/Makefile')
-rw-r--r--arch/powerpc/Makefile13
1 files changed, 10 insertions, 3 deletions
diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
index 6524c6e21896..68455ddb63b7 100644
--- a/arch/powerpc/Makefile
+++ b/arch/powerpc/Makefile
@@ -234,10 +234,11 @@ archprepare: checkbin
234# Use the file '.tmp_gas_check' for binutils tests, as gas won't output 234# Use the file '.tmp_gas_check' for binutils tests, as gas won't output
235# to stdout and these checks are run even on install targets. 235# to stdout and these checks are run even on install targets.
236TOUT := .tmp_gas_check 236TOUT := .tmp_gas_check
237# Ensure this is binutils 2.12.1 (or 2.12.90.0.7) or later for altivec
238# instructions.
239# gcc-3.4 and binutils-2.14 are a fatal combination.
240 237
238# Check gcc and binutils versions:
239# - gcc-3.4 and binutils-2.14 are a fatal combination
240# - Require gcc 4.0 or above on 64-bit
241# - gcc-4.2.0 has issues compiling modules on 64-bit
241checkbin: 242checkbin:
242 @if test "$(call cc-version)" = "0304" ; then \ 243 @if test "$(call cc-version)" = "0304" ; then \
243 if ! /bin/echo mftb 5 | $(AS) -v -mppc -many -o $(TOUT) >/dev/null 2>&1 ; then \ 244 if ! /bin/echo mftb 5 | $(AS) -v -mppc -many -o $(TOUT) >/dev/null 2>&1 ; then \
@@ -247,6 +248,12 @@ checkbin:
247 false; \ 248 false; \
248 fi ; \ 249 fi ; \
249 fi 250 fi
251 @if test "$(call cc-version)" -lt "0400" \
252 && test "x${CONFIG_PPC64}" = "xy" ; then \
253 echo -n "Sorry, GCC v4.0 or above is required to build " ; \
254 echo "the 64-bit powerpc kernel." ; \
255 false ; \
256 fi
250 @if test "$(call cc-fullversion)" = "040200" \ 257 @if test "$(call cc-fullversion)" = "040200" \
251 && test "x${CONFIG_MODULES}${CONFIG_PPC64}" = "xyy" ; then \ 258 && test "x${CONFIG_MODULES}${CONFIG_PPC64}" = "xyy" ; then \
252 echo -n '*** GCC-4.2.0 cannot compile the 64-bit powerpc ' ; \ 259 echo -n '*** GCC-4.2.0 cannot compile the 64-bit powerpc ' ; \