* [PATCH -mm V3] kbuild: fix reading CROSS_COMPILE from .config
@ 2010-08-21 13:07 Wu Fengguang
2010-08-23 6:45 ` Américo Wang
0 siblings, 1 reply; 3+ messages in thread
From: Wu Fengguang @ 2010-08-21 13:07 UTC (permalink / raw)
To: Andrew Morton; +Cc: Tiago Maluta, Michal Marek, LKML, Sam Ravnborg
Fix compile error
$ ARCH=x86_64 CROSS_COMPILE=x86_64-linux-gnu- make
...
cc1: error: unrecognized command line option "-m64"
cc1: error: unrecognized command line option "-mno-red-zone"
cc1: error: unrecognized command line option "-mcmodel=kernel"
cc1: error: unrecognized command line option "-maccumulate-outgoing-args"
The error was introduced by patch
kbuild-fix-config_cross_compile-issue-in-config.patch:
-CROSS_COMPILE ?= $(CONFIG_CROSS_COMPILE:"%"=%)
+CROSS_COMPILE := $(shell grep CONFIG_CROSS_COMPILE .config | cut -d'"' -f2)
That patch does two things:
1) It grep for CONFIG_CROSS_COMPILE because we may not have incldued .config
2) It no longer pick up CROSS_COMPILE from the environment.
Traditionally we have picked up ARCH and CROSS_COMPILE from the environment,
hence the use of "?=".
"?=" says - perform this assignment unless lhs is already defined.
And lhs may be already defined is we have the symbol defined in the
environment.
I think the original submitter changed from ?= to := without realizing this.
So the patch should be adjusted to use ?= again before it is applied.
Cc: Tiago Maluta <tiago.maluta@gmail.com>
Cc: Michal Marek <mmarek@suse.cz>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
---
Andrew: it's an -mm tree only bug for now
Sam: I copied so many of your nice comments to the changelog, so that I added
your Signed-off-by :)
diff --git a/Makefile b/Makefile
index d646d69..af8864e 100644
--- a/Makefile
+++ b/Makefile
@@ -190,7 +190,7 @@ SUBARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ \
export KBUILD_BUILDHOST := $(SUBARCH)
ARCH ?= $(SUBARCH)
CROSS_COMPILE ?=
-CROSS_COMPILE := $(shell grep CONFIG_CROSS_COMPILE .config | cut -d'"' -f2)
+CROSS_COMPILE ?= $(shell grep CONFIG_CROSS_COMPILE .config | cut -d'"' -f2)
# Architecture as present in compile.h
UTS_MACHINE := $(ARCH)
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [PATCH -mm V3] kbuild: fix reading CROSS_COMPILE from .config
2010-08-21 13:07 [PATCH -mm V3] kbuild: fix reading CROSS_COMPILE from .config Wu Fengguang
@ 2010-08-23 6:45 ` Américo Wang
2010-08-23 6:52 ` Wu Fengguang
0 siblings, 1 reply; 3+ messages in thread
From: Américo Wang @ 2010-08-23 6:45 UTC (permalink / raw)
To: Wu Fengguang
Cc: Andrew Morton, Tiago Maluta, Michal Marek, LKML, Sam Ravnborg
On Sat, Aug 21, 2010 at 09:07:49PM +0800, Wu Fengguang wrote:
>Fix compile error
>
> $ ARCH=x86_64 CROSS_COMPILE=x86_64-linux-gnu- make
> ...
> cc1: error: unrecognized command line option "-m64"
> cc1: error: unrecognized command line option "-mno-red-zone"
> cc1: error: unrecognized command line option "-mcmodel=kernel"
> cc1: error: unrecognized command line option "-maccumulate-outgoing-args"
>
>The error was introduced by patch
>kbuild-fix-config_cross_compile-issue-in-config.patch:
>
> -CROSS_COMPILE ?= $(CONFIG_CROSS_COMPILE:"%"=%)
> +CROSS_COMPILE := $(shell grep CONFIG_CROSS_COMPILE .config | cut -d'"' -f2)
>
>That patch does two things:
>1) It grep for CONFIG_CROSS_COMPILE because we may not have incldued .config
>2) It no longer pick up CROSS_COMPILE from the environment.
>
>Traditionally we have picked up ARCH and CROSS_COMPILE from the environment,
>hence the use of "?=".
>"?=" says - perform this assignment unless lhs is already defined.
>And lhs may be already defined is we have the symbol defined in the
>environment.
>
>I think the original submitter changed from ?= to := without realizing this.
>So the patch should be adjusted to use ?= again before it is applied.
>
>Cc: Tiago Maluta <tiago.maluta@gmail.com>
>Cc: Michal Marek <mmarek@suse.cz>
>Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
>Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
I think the line right above the chunk can be removed too, anyway,
Acked-by: WANG Cong <xiyou.wangcong@gmail.com>
Thanks.
>---
>
>Andrew: it's an -mm tree only bug for now
>Sam: I copied so many of your nice comments to the changelog, so that I added
>your Signed-off-by :)
>
>diff --git a/Makefile b/Makefile
>index d646d69..af8864e 100644
>--- a/Makefile
>+++ b/Makefile
>@@ -190,7 +190,7 @@ SUBARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ \
> export KBUILD_BUILDHOST := $(SUBARCH)
> ARCH ?= $(SUBARCH)
> CROSS_COMPILE ?=
>-CROSS_COMPILE := $(shell grep CONFIG_CROSS_COMPILE .config | cut -d'"' -f2)
>+CROSS_COMPILE ?= $(shell grep CONFIG_CROSS_COMPILE .config | cut -d'"' -f2)
>
> # Architecture as present in compile.h
> UTS_MACHINE := $(ARCH)
>--
>To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>the body of a message to majordomo@vger.kernel.org
>More majordomo info at http://vger.kernel.org/majordomo-info.html
>Please read the FAQ at http://www.tux.org/lkml/
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2010-08-23 6:52 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-08-21 13:07 [PATCH -mm V3] kbuild: fix reading CROSS_COMPILE from .config Wu Fengguang
2010-08-23 6:45 ` Américo Wang
2010-08-23 6:52 ` Wu Fengguang
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox