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