[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1377105911.2737.94@driftwood>
Date: Wed, 21 Aug 2013 12:25:11 -0500
From: Rob Landley <rob@...dley.net>
To: Geert Uytterhoeven <geert@...ux-m68k.org>
Cc: Richard Weinberger <richard@....at>,
Linux-Arch <linux-arch@...r.kernel.org>,
Michal Marek <mmarek@...e.cz>,
Ralf Baechle <ralf@...ux-mips.org>,
Paul Mundt <lethal@...ux-sh.org>,
Jeff Dike <jdike@...toit.com>,
Guan Xuetao <gxt@...c.pku.edu.cn>,
Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>,
"H. Peter Anvin" <hpa@...or.com>,
the arch/x86 maintainers <x86@...nel.org>,
linux-kbuild <linux-kbuild@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
linux-m68k <linux-m68k@...ts.linux-m68k.org>,
Linux MIPS Mailing List <linux-mips@...ux-mips.org>,
Linux-sh list <linux-sh@...r.kernel.org>,
uml-devel <user-mode-linux-devel@...ts.sourceforge.net>
Subject: Re: [RFC] Get rid of SUBARCH
On 08/21/2013 07:07:33 AM, Geert Uytterhoeven wrote:
> On Wed, Aug 21, 2013 at 10:19 AM, Richard Weinberger <richard@....at>
> wrote:
> > This series is an attempt to remove the SUBARCH make parameter.
> > It as introduced at the times of Linux 2.5 for UML to tell the UML
> > build system what the real architecture is.
> >
> > But we actually don't need SUBARCH, we can store this information
> > in the .config file.
>
> Haha, now you have OS_ARCH (shouldn't that be called HOST_ARCH?)
> instead,
> which is available only for UM?
>
> > The series touches also m68k, sh, mips and unicore32.
> > These architectures magically select a cross compiler if ARCH !=
> SUBARCH.
> > Do really need that behavior?
>
> This does remove functionality.
> It allows to build a kernel using e.g. "make ARCH=m68k".
make ARCH=m68k CROSS_COMPILE=m68k-
make ARCH=arm CROSS_COMPILE=armv5l-
make ARCH=sparc CROSS_COMPILE=sparc-
make ARCH=ppc CROSS_COMPILE=powerpc-
make ARCH=sh CROSS_COMPILE=sh4-
make ARCH=mips CROSS_COMPILE=mipsel-
make ARCH=x86 CROSS_COMPILE=i686-
make ARCH=alpha CROSS_COMPILE=alpha-
Works the same way on all the targets I've tried so far. You specify
the architecture, you specify the cross compiler prefix, you feed it a
config file, you build.
(If a target supplies its own default cross compiler prefix I just have
to override it with what mine's called anyway...)
> Perhaps this can be moved to generic code? Most (not all!)
> cross-toolchains
> are called $ARCH-{unknown-,}linux{,-gnu}.
> Exceptions are e.g. am33_2.0-linux and bfin-uclinux.
The linaro toolchain is arm-linux-gnueabihf- and the one on kernel.org
is arm-unknown-linux-gnueabi- and the one I build is armv5l- (because
the FSF's
$ARCH-unknown-gnu-format-tuple-all-hail-stallman-gnu-gnu-gnu-dammit-gcc
is just nuts: why would I say -linux- in a linux-to-linux toolchain? Do
windows toolchains say -windows-?)
Other toolchain sources use other prefixes (-unknown- is often
-$VENDORNAME-), and then of course there's llvm... which is why you
specify CROSS_COMPILE= on the make command line.
Rob--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists