blob: fec02f2b82d727e3bf0f31d50677aea80533d6f9 [file] [log] [blame]
wdenk39f0e5f2002-08-14 20:30:46 +00001#
Wolfgang Denk0f5fa872010-11-21 16:34:05 +01002# (C) Copyright 2000-2010
wdenk39f0e5f2002-08-14 20:30:46 +00003# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4#
Wolfgang Denkd79de1d2013-07-08 09:37:19 +02005# SPDX-License-Identifier: GPL-2.0+
wdenk39f0e5f2002-08-14 20:30:46 +00006#
7
Masahiro Yamadaf0ac9e02014-02-28 14:33:30 +09008ifeq ($(CROSS_COMPILE),)
9CROSS_COMPILE := ppc_8xx-
10endif
Mike Frysinger8378ba42009-06-14 23:33:14 -040011
Wolfgang Denk33a57342011-02-04 14:25:17 +010012CONFIG_STANDALONE_LOAD_ADDR ?= 0x40000
Haiying Wang39358732011-02-22 16:38:05 -050013LDFLAGS_FINAL += --gc-sections
Chris Packhama5f5df22014-09-10 16:03:10 +120014LDFLAGS_FINAL += --bss-plt
Masahiro Yamada05733592013-11-26 10:53:58 +090015PLATFORM_RELFLAGS += -fpic -mrelocatable -ffunction-sections -fdata-sections \
16 -meabi
Masahiro Yamada4869aee2014-07-30 14:08:23 +090017PLATFORM_CPPFLAGS += -D__powerpc__ -ffixed-r2
Nobuhiro Iwamatsub859b8c2011-01-06 10:23:54 +090018PLATFORM_LDFLAGS += -n
Shinya Kuribayashi686d44d2008-08-31 05:37:04 +090019
Simon Glassfa6945f2013-03-11 06:50:01 +000020# Support generic board on PPC
21__HAVE_ARCH_GENERIC_BOARD := y
22
Shinya Kuribayashi686d44d2008-08-31 05:37:04 +090023#
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
30ifeq ($(CROSS_COMPILE),powerpc-netbsd-)
31PLATFORM_CPPFLAGS+= -D__PPC__
32endif
33ifeq ($(CROSS_COMPILE),powerpc-openbsd-)
34PLATFORM_CPPFLAGS+= -D__PPC__
35endif
Scott Wood146f5062012-09-20 19:10:01 -050036
37# Only test once
38ifneq ($(CONFIG_SPL_BUILD),y)
Masahiro Yamadab646bec2014-03-05 17:49:23 +090039archprepare: 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
44checkgcc4:
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 Wood146f5062012-09-20 19:10:01 -050049endif