push CROSS_COMPILE out to $(ARCH)_config.mk

Each arch should handle setting a proper default CROSS_COMPILE value in
their own config.mk file rather than having to maintain a large ugly list
in the Makefile.  By using conditional assignment, we don't have to worry
about the variable already being set (env/cmdline/etc...).

The common config.mk file takes care of exporting CROSS_COMPILE already,
and while a few variables (toolchain ones) utilize CROSS_COMPILE before
including the arch config.mk, they do so with deferred assignment.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
This commit is contained in:
Mike Frysinger 2009-06-14 23:33:14 -04:00 committed by Wolfgang Denk
parent 60a3f404ac
commit 1ea6bcd859
13 changed files with 26 additions and 42 deletions

View file

@ -151,50 +151,10 @@ ifeq ($(obj)include/config.mk,$(wildcard $(obj)include/config.mk))
include $(obj)include/config.mk
export ARCH CPU BOARD VENDOR SOC
ifndef CROSS_COMPILE
# set default to nothing for native builds
ifeq ($(HOSTARCH),$(ARCH))
CROSS_COMPILE =
else
ifeq ($(ARCH),ppc)
CROSS_COMPILE = ppc_8xx-
CROSS_COMPILE ?=
endif
ifeq ($(ARCH),arm)
CROSS_COMPILE = arm-linux-
endif
ifeq ($(ARCH),i386)
CROSS_COMPILE = i386-linux-
endif
ifeq ($(ARCH),mips)
CROSS_COMPILE = mips_4KC-
endif
ifeq ($(ARCH),nios)
CROSS_COMPILE = nios-elf-
endif
ifeq ($(ARCH),nios2)
CROSS_COMPILE = nios2-elf-
endif
ifeq ($(ARCH),m68k)
CROSS_COMPILE = m68k-elf-
endif
ifeq ($(ARCH),microblaze)
CROSS_COMPILE = mb-
endif
ifeq ($(ARCH),blackfin)
CROSS_COMPILE = bfin-uclinux-
endif
ifeq ($(ARCH),avr32)
CROSS_COMPILE = avr32-linux-
endif
ifeq ($(ARCH),sh)
CROSS_COMPILE = sh4-linux-
endif
ifeq ($(ARCH),sparc)
CROSS_COMPILE = sparc-elf-
endif # sparc
endif # HOSTARCH,ARCH
endif # CROSS_COMPILE
export CROSS_COMPILE
# load other configuration
include $(TOPDIR)/config.mk

View file

@ -21,6 +21,8 @@
# MA 02111-1307 USA
#
CROSS_COMPILE ?= arm-linux-
PLATFORM_CPPFLAGS += -DCONFIG_ARM -D__ARM__
LDSCRIPT := $(SRCTREE)/cpu/$(CPU)/u-boot.lds

View file

@ -21,5 +21,7 @@
# MA 02111-1307 USA
#
CROSS_COMPILE ?= avr32-linux-
PLATFORM_RELFLAGS += -ffixed-r5 -fPIC -mno-init-got -mrelax
PLATFORM_LDFLAGS += --relax

View file

@ -21,6 +21,8 @@
# MA 02111-1307 USA
#
CROSS_COMPILE ?= bfin-uclinux-
CONFIG_BFIN_CPU := $(strip $(subst ",,$(CONFIG_BFIN_CPU)))
CONFIG_BFIN_BOOT_MODE := $(strip $(subst ",,$(CONFIG_BFIN_BOOT_MODE)))
CONFIG_ENV_OFFSET := $(strip $(subst ",,$(CONFIG_ENV_OFFSET)))

View file

@ -21,4 +21,6 @@
# MA 02111-1307 USA
#
CROSS_COMPILE ?= i386-linux-
PLATFORM_CPPFLAGS += -DCONFIG_I386 -D__I386__

View file

@ -21,5 +21,7 @@
# MA 02111-1307 USA
#
CROSS_COMPILE ?= m68k-elf-
PLATFORM_CPPFLAGS += -DCONFIG_M68K -D__M68K__
PLATFORM_LDFLAGS += -n

View file

@ -24,4 +24,6 @@
# MA 02111-1307 USA
#
CROSS_COMPILE ?= mb-
PLATFORM_CPPFLAGS += -ffixed-r31 -D__microblaze__

View file

@ -21,6 +21,8 @@
# MA 02111-1307 USA
#
CROSS_COMPILE ?= mips_4KC-
PLATFORM_CPPFLAGS += -DCONFIG_MIPS -D__MIPS__
#

View file

@ -22,5 +22,7 @@
# MA 02111-1307 USA
#
CROSS_COMPILE ?= nios2-elf-
PLATFORM_CPPFLAGS += -DCONFIG_NIOS2 -D__NIOS2__
PLATFORM_CPPFLAGS += -ffixed-r15 -G0

View file

@ -22,4 +22,6 @@
# MA 02111-1307 USA
#
CROSS_COMPILE ?= nios-elf-
PLATFORM_CPPFLAGS += -m32 -DCONFIG_NIOS -D__NIOS__ -ffixed-g7 -gstabs

View file

@ -21,6 +21,8 @@
# MA 02111-1307 USA
#
CROSS_COMPILE ?= ppc_8xx-
PLATFORM_CPPFLAGS += -DCONFIG_PPC -D__powerpc__
PLATFORM_LDFLAGS += -n

View file

@ -21,6 +21,8 @@
# MA 02111-1307 USA
#
CROSS_COMPILE ?= sh4-linux-
PLATFORM_CPPFLAGS += -DCONFIG_SH -D__SH__
PLATFORM_LDFLAGS += -e $(TEXT_BASE) --defsym reloc_dst=$(TEXT_BASE)

View file

@ -21,4 +21,6 @@
# MA 02111-1307 USA
#
CROSS_COMPILE ?= sparc-elf-
PLATFORM_CPPFLAGS += -DCONFIG_SPARC -D__sparc__