All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH] push CROSS_COMPILE out to $(ARCH)_config.mk
@ 2009-06-15  3:33 Mike Frysinger
  2009-07-09 17:58 ` Mike Frysinger
  2009-07-19 19:36 ` Wolfgang Denk
  0 siblings, 2 replies; 3+ messages in thread
From: Mike Frysinger @ 2009-06-15  3:33 UTC (permalink / raw)
  To: u-boot

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>
---
 Makefile             |   44 ++------------------------------------------
 arm_config.mk        |    2 ++
 avr32_config.mk      |    2 ++
 blackfin_config.mk   |    2 ++
 i386_config.mk       |    2 ++
 m68k_config.mk       |    2 ++
 microblaze_config.mk |    2 ++
 mips_config.mk       |    2 ++
 nios2_config.mk      |    2 ++
 nios_config.mk       |    2 ++
 ppc_config.mk        |    2 ++
 sh_config.mk         |    2 ++
 sparc_config.mk      |    2 ++
 13 files changed, 26 insertions(+), 42 deletions(-)

diff --git a/Makefile b/Makefile
index acec1a0..4d058b1 100644
--- a/Makefile
+++ b/Makefile
@@ -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-
-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-
+CROSS_COMPILE ?=
 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
diff --git a/arm_config.mk b/arm_config.mk
index c4cf99d..a13603e 100644
--- a/arm_config.mk
+++ b/arm_config.mk
@@ -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
diff --git a/avr32_config.mk b/avr32_config.mk
index 441caa4..c258b4b 100644
--- a/avr32_config.mk
+++ b/avr32_config.mk
@@ -21,5 +21,7 @@
 # MA 02111-1307 USA
 #
 
+CROSS_COMPILE ?= avr32-linux-
+
 PLATFORM_RELFLAGS	+= -ffixed-r5 -fPIC -mno-init-got -mrelax
 PLATFORM_LDFLAGS	+= --relax
diff --git a/blackfin_config.mk b/blackfin_config.mk
index 989e976..9357e20 100644
--- a/blackfin_config.mk
+++ b/blackfin_config.mk
@@ -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)))
diff --git a/i386_config.mk b/i386_config.mk
index 9e6d37d..5fe36d5 100644
--- a/i386_config.mk
+++ b/i386_config.mk
@@ -21,4 +21,6 @@
 # MA 02111-1307 USA
 #
 
+CROSS_COMPILE ?= i386-linux-
+
 PLATFORM_CPPFLAGS += -DCONFIG_I386 -D__I386__
diff --git a/m68k_config.mk b/m68k_config.mk
index 12bd27c..f41d1b3 100644
--- a/m68k_config.mk
+++ b/m68k_config.mk
@@ -21,5 +21,7 @@
 # MA 02111-1307 USA
 #
 
+CROSS_COMPILE ?= m68k-elf-
+
 PLATFORM_CPPFLAGS += -DCONFIG_M68K -D__M68K__
 PLATFORM_LDFLAGS  += -n
diff --git a/microblaze_config.mk b/microblaze_config.mk
index e44c79e..68e7e21 100644
--- a/microblaze_config.mk
+++ b/microblaze_config.mk
@@ -24,4 +24,6 @@
 # MA 02111-1307 USA
 #
 
+CROSS_COMPILE ?= mb-
+
 PLATFORM_CPPFLAGS += -ffixed-r31 -D__microblaze__
diff --git a/mips_config.mk b/mips_config.mk
index 05eb05d..c785677 100644
--- a/mips_config.mk
+++ b/mips_config.mk
@@ -21,6 +21,8 @@
 # MA 02111-1307 USA
 #
 
+CROSS_COMPILE ?= mips_4KC-
+
 PLATFORM_CPPFLAGS += -DCONFIG_MIPS -D__MIPS__
 
 #
diff --git a/nios2_config.mk b/nios2_config.mk
index 3f23b56..59931c2 100644
--- a/nios2_config.mk
+++ b/nios2_config.mk
@@ -22,5 +22,7 @@
 # MA 02111-1307 USA
 #
 
+CROSS_COMPILE ?= nios2-elf-
+
 PLATFORM_CPPFLAGS += -DCONFIG_NIOS2 -D__NIOS2__
 PLATFORM_CPPFLAGS += -ffixed-r15 -G0
diff --git a/nios_config.mk b/nios_config.mk
index 1cf0f32..3ed7170 100644
--- a/nios_config.mk
+++ b/nios_config.mk
@@ -22,4 +22,6 @@
 # MA 02111-1307 USA
 #
 
+CROSS_COMPILE ?= nios-elf-
+
 PLATFORM_CPPFLAGS += -m32 -DCONFIG_NIOS -D__NIOS__ -ffixed-g7 -gstabs
diff --git a/ppc_config.mk b/ppc_config.mk
index c95b3b1..d91ef7f 100644
--- a/ppc_config.mk
+++ b/ppc_config.mk
@@ -21,6 +21,8 @@
 # MA 02111-1307 USA
 #
 
+CROSS_COMPILE ?= ppc_8xx-
+
 PLATFORM_CPPFLAGS += -DCONFIG_PPC -D__powerpc__
 PLATFORM_LDFLAGS  += -n
 
diff --git a/sh_config.mk b/sh_config.mk
index 49d50f7..306cb59 100644
--- a/sh_config.mk
+++ b/sh_config.mk
@@ -21,4 +21,6 @@
 # MA 02111-1307 USA
 #
 
+CROSS_COMPILE ?= sh4-linux-
+
 PLATFORM_CPPFLAGS += -DCONFIG_SH -D__SH__
diff --git a/sparc_config.mk b/sparc_config.mk
index 87f745f..07b528c 100644
--- a/sparc_config.mk
+++ b/sparc_config.mk
@@ -21,4 +21,6 @@
 # MA 02111-1307 USA
 #
 
+CROSS_COMPILE ?= sparc-elf-
+
 PLATFORM_CPPFLAGS += -DCONFIG_SPARC -D__sparc__
-- 
1.6.3.1

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [U-Boot] [PATCH] push CROSS_COMPILE out to $(ARCH)_config.mk
  2009-06-15  3:33 [U-Boot] [PATCH] push CROSS_COMPILE out to $(ARCH)_config.mk Mike Frysinger
@ 2009-07-09 17:58 ` Mike Frysinger
  2009-07-19 19:36 ` Wolfgang Denk
  1 sibling, 0 replies; 3+ messages in thread
From: Mike Frysinger @ 2009-07-09 17:58 UTC (permalink / raw)
  To: u-boot

On Sunday 14 June 2009 23:33:14 Mike Frysinger wrote:
> 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.

with people looking at moving these files/etc..., can this be merged sooner 
rather than later ?  i just dont want to induce unnecessary conflicts.
-mike
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
Url : http://lists.denx.de/pipermail/u-boot/attachments/20090709/13de2c9a/attachment.pgp 

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [U-Boot] [PATCH] push CROSS_COMPILE out to $(ARCH)_config.mk
  2009-06-15  3:33 [U-Boot] [PATCH] push CROSS_COMPILE out to $(ARCH)_config.mk Mike Frysinger
  2009-07-09 17:58 ` Mike Frysinger
@ 2009-07-19 19:36 ` Wolfgang Denk
  1 sibling, 0 replies; 3+ messages in thread
From: Wolfgang Denk @ 2009-07-19 19:36 UTC (permalink / raw)
  To: u-boot

Dear Mike Frysinger,

In message <1245036794-7396-1-git-send-email-vapier@gentoo.org> you wrote:
> 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>
> ---
>  Makefile             |   44 ++------------------------------------------
>  arm_config.mk        |    2 ++
>  avr32_config.mk      |    2 ++
>  blackfin_config.mk   |    2 ++
>  i386_config.mk       |    2 ++
>  m68k_config.mk       |    2 ++
>  microblaze_config.mk |    2 ++
>  mips_config.mk       |    2 ++
>  nios2_config.mk      |    2 ++
>  nios_config.mk       |    2 ++
>  ppc_config.mk        |    2 ++
>  sh_config.mk         |    2 ++
>  sparc_config.mk      |    2 ++
>  13 files changed, 26 insertions(+), 42 deletions(-)

Applied, thanks.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
I read part of it all the way through.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2009-07-19 19:36 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-06-15  3:33 [U-Boot] [PATCH] push CROSS_COMPILE out to $(ARCH)_config.mk Mike Frysinger
2009-07-09 17:58 ` Mike Frysinger
2009-07-19 19:36 ` Wolfgang Denk

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.