]> git.sur5r.net Git - u-boot/blobdiff - arch/powerpc/config.mk
SPDX: Convert all of our single license tags to Linux Kernel style
[u-boot] / arch / powerpc / config.mk
index f75c3bf187caecea7ba2a458744c9f72636aaef3..f5d21c837a4737308886dbe2ea4a5ea08005fc32 100644 (file)
@@ -1,21 +1,21 @@
+# SPDX-License-Identifier: GPL-2.0+
 #
 # (C) Copyright 2000-2010
 # Wolfgang Denk, DENX Software Engineering, wd@denx.de.
-#
-# SPDX-License-Identifier:     GPL-2.0+
-#
 
-CROSS_COMPILE ?= ppc_8xx-
+ifeq ($(CROSS_COMPILE),)
+CROSS_COMPILE := ppc_8xx-
+endif
 
 CONFIG_STANDALONE_LOAD_ADDR ?= 0x40000
 LDFLAGS_FINAL += --gc-sections
-PLATFORM_RELFLAGS += -fpic -mrelocatable -ffunction-sections -fdata-sections \
-                                                               -meabi
-PLATFORM_CPPFLAGS += -DCONFIG_PPC -D__powerpc__ -ffixed-r2
-PLATFORM_LDFLAGS  += -n
+LDFLAGS_FINAL += --bss-plt
+PLATFORM_RELFLAGS += -fpic -mrelocatable -ffunction-sections \
+-fdata-sections -mcall-linux
 
-# Support generic board on PPC
-__HAVE_ARCH_GENERIC_BOARD := y
+PF_CPPFLAGS_POWERPC    := $(call cc-option,-fno-ira-hoist-pressure,)
+PLATFORM_CPPFLAGS += -D__powerpc__ -ffixed-r2 -m32 $(PF_CPPFLAGS_POWERPC)
+PLATFORM_LDFLAGS  += -m32 -melf32ppclinux
 
 #
 # When cross-compiling on NetBSD, we have to define __PPC__ or else we
@@ -33,5 +33,15 @@ endif
 
 # Only test once
 ifneq ($(CONFIG_SPL_BUILD),y)
-ALL-y += checkgcc4
+archprepare: checkgcc4
+
+# GCC 3.x is reported to have problems generating the type of relocation
+# that U-Boot wants.
+# See http://lists.denx.de/pipermail/u-boot/2012-September/135156.html
+checkgcc4:
+       @if test "$(call cc-name)" = "gcc" -a \
+                       $(call cc-version) -lt 0400; then \
+               echo -n '*** Your GCC is too old, please upgrade to GCC 4.x or newer'; \
+               false; \
+       fi
 endif