public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Sam Ravnborg <sam@ravnborg.org>
To: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Finn Thain <fthain@telegraphics.com.au>,
	Rob Landley <rob@landley.net>,
	LKML <linux-kernel@vger.kernel.org>,
	Linux/m68k <linux-m68k@vger.kernel.org>
Subject: Re: [PATCH] Make m68k cross compile like every other architecture.
Date: Thu, 18 Oct 2007 23:14:20 +0200	[thread overview]
Message-ID: <20071018211420.GA23397@uranus.ravnborg.org> (raw)
In-Reply-To: <Pine.LNX.4.64.0710152217150.16889@anakin>

> 
> Anyway, here's a try to make it autodetect m68k-linux-gnu-gcc and
> m68k-linux-gcc. Perhaps it can be generalized in kbuild, to allow
> arch/*/Makefile to set a list of possible cross-compiler prefixes?

Here is my first try.
We only touch CROSS_COMPILE is empty and building for another arch.

I can obviously move crossgcc part of this to core kbuild.
Any better name?

	Sam


diff --git a/arch/m68k/Makefile b/arch/m68k/Makefile
index 4a1bd44..6465bbe 100644
--- a/arch/m68k/Makefile
+++ b/arch/m68k/Makefile
@@ -13,17 +13,26 @@
 # Copyright (C) 1994 by Hamish Macdonald
 #
 
-# test for cross compiling
-COMPILE_ARCH = $(shell uname -m)
+# usage:
+# CROSS_COMPILE := $(call crossgcc, foo bar /usr/bin/)
+# CROSS_COMPILE will be assinged the first prefix that point
+# to a gcc in the path
+crossgcc =  $(word 1, $(foreach c,$(1),                               \
+		$(shell set -e;                                       \
+		if (which $(strip $(c))$(CC)) > /dev/null 2>&1 ; then \
+			echo $(c);                                    \
+		fi)))
+
+ifneq ($(SUBARCH),$(ARCH))
+        ifeq ($(CROSS_COMPILE),)
+                CROSS_COMPILE := $(call crossgcc, m68k-linux-gnu-)
+        endif
+endif
 
 # override top level makefile
 AS += -m68020
 LDFLAGS := -m m68kelf
 LDFLAGS_MODULE += -T $(srctree)/arch/m68k/kernel/module.lds
-ifneq ($(COMPILE_ARCH),$(ARCH))
-	# prefix for cross-compiling binaries
-	CROSS_COMPILE = m68k-linux-gnu-
-endif
 
 ifdef CONFIG_SUN3
 LDFLAGS_vmlinux = -N

  parent reply	other threads:[~2007-10-18 21:12 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-10-10 22:22 [PATCH] Make m68k cross compile like every other architecture Rob Landley
2007-10-11  7:25 ` Geert Uytterhoeven
2007-10-11 11:31   ` Rob Landley
2007-10-11 11:39   ` Sam Ravnborg
2007-10-11 12:46     ` Geert Uytterhoeven
2007-10-11 13:27       ` Rob Landley
2007-10-11 13:52         ` Paul Mundt
2007-10-11 15:12         ` Geert Uytterhoeven
2007-10-11 16:26           ` Finn Thain
2007-10-11 21:14             ` Rob Landley
2007-10-12  6:51               ` Geert Uytterhoeven
2007-10-12  7:54                 ` Finn Thain
2007-10-12  8:51                   ` Geert Uytterhoeven
2007-10-12 10:21                     ` Sam Ravnborg
2007-10-15 20:25                       ` Geert Uytterhoeven
2007-10-16  0:31                         ` Rob Landley
2007-10-16  4:15                           ` Sam Ravnborg
2007-10-18 21:14                         ` Sam Ravnborg [this message]
2007-10-19  6:38                           ` Rob Landley
2007-10-19 15:10                             ` Sam Ravnborg
2007-10-11 16:24       ` Sam Ravnborg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20071018211420.GA23397@uranus.ravnborg.org \
    --to=sam@ravnborg.org \
    --cc=fthain@telegraphics.com.au \
    --cc=geert@linux-m68k.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-m68k@vger.kernel.org \
    --cc=rob@landley.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox