Merge branch 'master' of git://git.denx.de/u-boot
[platform/kernel/u-boot.git] / arch / powerpc / config.mk
1 #
2 # (C) Copyright 2000-2010
3 # Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4 #
5 # SPDX-License-Identifier:      GPL-2.0+
6 #
7
8 ifeq ($(CROSS_COMPILE),)
9 CROSS_COMPILE := ppc_8xx-
10 endif
11
12 CONFIG_STANDALONE_LOAD_ADDR ?= 0x40000
13 LDFLAGS_FINAL += --gc-sections
14 LDFLAGS_FINAL += --bss-plt
15 PLATFORM_RELFLAGS += -fpic -mrelocatable -ffunction-sections \
16 -fdata-sections -mcall-linux
17
18 PF_CPPFLAGS_POWERPC     := $(call cc-option,-fno-ira-hoist-pressure,)
19 PLATFORM_CPPFLAGS += -D__powerpc__ -ffixed-r2 -m32 $(PF_CPPFLAGS_POWERPC)
20 PLATFORM_LDFLAGS  += -m32 -melf32ppclinux
21
22 #
23 # When cross-compiling on NetBSD, we have to define __PPC__ or else we
24 # will pick up a va_list declaration that is incompatible with the
25 # actual argument lists emitted by the compiler.
26 #
27 # [Tested on NetBSD/i386 1.5 + cross-powerpc-netbsd-1.3]
28
29 ifeq ($(CROSS_COMPILE),powerpc-netbsd-)
30 PLATFORM_CPPFLAGS+= -D__PPC__
31 endif
32 ifeq ($(CROSS_COMPILE),powerpc-openbsd-)
33 PLATFORM_CPPFLAGS+= -D__PPC__
34 endif
35
36 # Only test once
37 ifneq ($(CONFIG_SPL_BUILD),y)
38 archprepare: checkgcc4
39
40 # GCC 3.x is reported to have problems generating the type of relocation
41 # that U-Boot wants.
42 # See http://lists.denx.de/pipermail/u-boot/2012-September/135156.html
43 checkgcc4:
44         @if test $(call cc-version) -lt 0400; then \
45                 echo -n '*** Your GCC is too old, please upgrade to GCC 4.x or newer'; \
46                 false; \
47         fi
48 endif