On 08/21/2013 07:07:33 AM, Geert Uytterhoeven wrote:
> On Wed, Aug 21, 2013 at 10:19 AM, Richard Weinberger <rich...@nod.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
------------------------------------------------------------------------------
Introducing Performance Central, a new site from SourceForge and 
AppDynamics. Performance Central is your source for news, insights, 
analysis and resources for efficient Application Performance Management. 
Visit us today!
http://pubads.g.doubleclick.net/gampad/clk?id=48897511&iu=/4140/ostg.clktrk
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

Reply via email to