X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;ds=inline;f=arch%2Fpowerpc%2Fconfig.mk;h=b0ed374563adb66f107fb127b0af328102b12109;hb=ec2c81c5d4681274f9f9d079b08ed259ff20dc69;hp=e6bb9357292b5374c5fee314227a88c66585c810;hpb=3be2bdf5dc69b3142c1162a59bc67191c9077567;p=oweals%2Fu-boot.git diff --git a/arch/powerpc/config.mk b/arch/powerpc/config.mk index e6bb935729..b0ed374563 100644 --- a/arch/powerpc/config.mk +++ b/arch/powerpc/config.mk @@ -5,16 +5,19 @@ # 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 -PLATFORM_CPPFLAGS += -DCONFIG_PPC -D__powerpc__ -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 @@ -32,5 +35,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