[Top] [All Lists]

Re: CROSS_COMPILE in environment variable

To: Atsushi Nemoto <>
Subject: Re: CROSS_COMPILE in environment variable
From: Geoff Levand <>
Date: Tue, 25 Apr 2006 11:32:46 -0700
In-reply-to: <>
Original-recipient: rfc822;
References: <>
User-agent: Mozilla Thunderbird 1.0.7-1.1.fc4 (X11/20050929)
Atsushi Nemoto wrote:
> In the toplevel Makefile, CROSS_COMPILE is described as:
> # CROSS_COMPILE can be set on the command line
> # make CROSS_COMPILE=ia64-linux-
> # Alternatively CROSS_COMPILE can be set in the environment.
> # Default value for CROSS_COMPILE is not to prefix executables
> # Note: Some architectures assign CROSS_COMPILE in their arch/*/Makefile
> And currently, arch/mips/Makefile assigns CROSS_COMPILE as:
> CROSS_COMPILE         := $(tool-prefix)
> This overrides environment variable's settings unconditionaly so we
> can no do the 'alternative' method described above (specify
> CROSS_COMPILE by shell environment variable).
> If arch/mips/Makefile used "?=" assigment instead of ":=", we can
> specify CROSS_COMPILE by shell environment variable.
> Is there any reason to using ":=" ?  If no, shouldn't we change
> arch/mips/Makefile corresponding to the description?

In general this seems correct.

Another point is that the kernel has this:

CROSS_COMPILE           := $(tool-prefix)

        bool "Are you using a crosscompiler"
          Say Y here if you are compiling the kernel on a different
          architecture than the one it is intended to run on.

I think the Kconfig could be changed to say that CONFIG_CROSSCOMPILE
makes the build system use a built-in default tool prefix.


<Prev in Thread] Current Thread [Next in Thread>