wdenk | 39f0e5f | 2002-08-14 20:30:46 +0000 | [diff] [blame] | 1 | # |
Wolfgang Denk | fa11dbe | 2010-11-21 16:34:05 +0100 | [diff] [blame] | 2 | # (C) Copyright 2000-2010 |
wdenk | 39f0e5f | 2002-08-14 20:30:46 +0000 | [diff] [blame] | 3 | # Wolfgang Denk, DENX Software Engineering, wd@denx.de. |
| 4 | # |
Wolfgang Denk | 1a45966 | 2013-07-08 09:37:19 +0200 | [diff] [blame] | 5 | # SPDX-License-Identifier: GPL-2.0+ |
wdenk | 39f0e5f | 2002-08-14 20:30:46 +0000 | [diff] [blame] | 6 | # |
| 7 | |
Masahiro Yamada | 9b6e2c3 | 2014-02-28 14:33:30 +0900 | [diff] [blame] | 8 | ifeq ($(CROSS_COMPILE),) |
| 9 | CROSS_COMPILE := ppc_8xx- |
| 10 | endif |
Mike Frysinger | 1ea6bcd | 2009-06-14 23:33:14 -0400 | [diff] [blame] | 11 | |
Wolfgang Denk | 8ae86b7 | 2011-02-04 14:25:17 +0100 | [diff] [blame] | 12 | CONFIG_STANDALONE_LOAD_ADDR ?= 0x40000 |
Haiying Wang | 6dc1eceb | 2011-02-22 16:38:05 -0500 | [diff] [blame] | 13 | LDFLAGS_FINAL += --gc-sections |
Chris Packham | 039b773 | 2014-09-10 16:03:10 +1200 | [diff] [blame] | 14 | LDFLAGS_FINAL += --bss-plt |
Masahiro Yamada | de04d64 | 2013-11-26 10:53:58 +0900 | [diff] [blame] | 15 | PLATFORM_RELFLAGS += -fpic -mrelocatable -ffunction-sections -fdata-sections \ |
| 16 | -meabi |
Masahiro Yamada | 90f984e | 2014-07-30 14:08:23 +0900 | [diff] [blame] | 17 | PLATFORM_CPPFLAGS += -D__powerpc__ -ffixed-r2 |
Nobuhiro Iwamatsu | 8aba9dc | 2011-01-06 10:23:54 +0900 | [diff] [blame] | 18 | PLATFORM_LDFLAGS += -n |
Shinya Kuribayashi | 6b971c7 | 2008-08-31 05:37:04 +0900 | [diff] [blame] | 19 | |
Simon Glass | 660c60c | 2013-03-11 06:50:01 +0000 | [diff] [blame] | 20 | # Support generic board on PPC |
| 21 | __HAVE_ARCH_GENERIC_BOARD := y |
| 22 | |
Shinya Kuribayashi | 6b971c7 | 2008-08-31 05:37:04 +0900 | [diff] [blame] | 23 | # |
| 24 | # When cross-compiling on NetBSD, we have to define __PPC__ or else we |
| 25 | # will pick up a va_list declaration that is incompatible with the |
| 26 | # actual argument lists emitted by the compiler. |
| 27 | # |
| 28 | # [Tested on NetBSD/i386 1.5 + cross-powerpc-netbsd-1.3] |
| 29 | |
| 30 | ifeq ($(CROSS_COMPILE),powerpc-netbsd-) |
| 31 | PLATFORM_CPPFLAGS+= -D__PPC__ |
| 32 | endif |
| 33 | ifeq ($(CROSS_COMPILE),powerpc-openbsd-) |
| 34 | PLATFORM_CPPFLAGS+= -D__PPC__ |
| 35 | endif |
Scott Wood | 6ec63f4 | 2012-09-20 19:10:01 -0500 | [diff] [blame] | 36 | |
| 37 | # Only test once |
| 38 | ifneq ($(CONFIG_SPL_BUILD),y) |
Masahiro Yamada | d57d60c | 2014-03-05 17:49:23 +0900 | [diff] [blame] | 39 | archprepare: checkgcc4 |
| 40 | |
| 41 | # GCC 3.x is reported to have problems generating the type of relocation |
| 42 | # that U-Boot wants. |
| 43 | # See http://lists.denx.de/pipermail/u-boot/2012-September/135156.html |
| 44 | checkgcc4: |
| 45 | @if test $(call cc-version) -lt 0400; then \ |
| 46 | echo -n '*** Your GCC is too old, please upgrade to GCC 4.x or newer'; \ |
| 47 | false; \ |
| 48 | fi |
Scott Wood | 6ec63f4 | 2012-09-20 19:10:01 -0500 | [diff] [blame] | 49 | endif |