diff options
author | Sam Ravnborg <sam@ravnborg.org> | 2007-11-17 09:37:31 -0500 |
---|---|---|
committer | Thomas Gleixner <tglx@apollo.(none)> | 2007-11-17 11:21:54 -0500 |
commit | 80ef88d6d23bf1b94d65db0ac32334d01b9f7350 (patch) | |
tree | 055f1fad06e1dba8c2e782786a7cfc2ea448a7f3 /Makefile | |
parent | 6d1b30e30ca1c831b82c44aedd2536820bdb2bc4 (diff) |
x86: simplify "make ARCH=x86" and fix kconfig all.config
Simplify "make ARCH=x86" and fix kconfig so we again
can set 64BIT in all.config.
For a fix the diffstat is nice:
6 files changed, 3 insertions(+), 36 deletions(-)
The patch reverts these commits:
0f855aa64b3f63d35a891510cf7db932a435c116
-> kconfig: add helper to set config symbol from environment variable
2a113281f5cd2febbab21a93c8943f8d3eece4d3
-> kconfig: use $K64BIT to set 64BIT with all*config targets
Roman Zippel pointed out that kconfig supported string
compares so the additional complexity introduced by the
above two patches were not needed.
With this patch we have following behaviour:
# make {allno,allyes,allmod,rand}config [ARCH=...]
option \ host arch | 32bit | 64bit
=====================================================
./. | 32bit | 64bit
ARCH=x86 | 32bit | 32bit
ARCH=i386 | 32bit | 32bit
ARCH=x86_64 | 64bit | 64bit
The general rule are that ARCH= and native architecture
takes precedence over the configuration.
So make ARCH=i386 [whatever] will always build a 32-bit
kernel no matter what the configuration says.
The configuration will be updated to 32-bit if it was
configured to 64-bit and the other way around.
This behaviour is consistent with previous behaviour so
no suprises here.
make ARCH=x86 will per default result in a 32-bit kernel
but as the only ARCH= value x86 allow the user to select
between 32-bit and 64-bit using menuconfig.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Cc: Roman Zippel <zippel@linux-m68k.org>
Cc: Andreas Herrmann <aherrman@arcor.de>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 4 |
1 files changed, 1 insertions, 3 deletions
@@ -200,11 +200,9 @@ SRCARCH := $(ARCH) | |||
200 | # Additional ARCH settings for x86 | 200 | # Additional ARCH settings for x86 |
201 | ifeq ($(ARCH),i386) | 201 | ifeq ($(ARCH),i386) |
202 | SRCARCH := x86 | 202 | SRCARCH := x86 |
203 | K64BIT := n | ||
204 | endif | 203 | endif |
205 | ifeq ($(ARCH),x86_64) | 204 | ifeq ($(ARCH),x86_64) |
206 | SRCARCH := x86 | 205 | SRCARCH := x86 |
207 | K64BIT := y | ||
208 | endif | 206 | endif |
209 | 207 | ||
210 | KCONFIG_CONFIG ?= .config | 208 | KCONFIG_CONFIG ?= .config |
@@ -341,7 +339,7 @@ KERNELRELEASE = $(shell cat include/config/kernel.release 2> /dev/null) | |||
341 | KERNELVERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION) | 339 | KERNELVERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION) |
342 | 340 | ||
343 | export VERSION PATCHLEVEL SUBLEVEL KERNELRELEASE KERNELVERSION | 341 | export VERSION PATCHLEVEL SUBLEVEL KERNELRELEASE KERNELVERSION |
344 | export ARCH SRCARCH K64BIT CONFIG_SHELL HOSTCC HOSTCFLAGS CROSS_COMPILE AS LD CC | 342 | export ARCH SRCARCH CONFIG_SHELL HOSTCC HOSTCFLAGS CROSS_COMPILE AS LD CC |
345 | export CPP AR NM STRIP OBJCOPY OBJDUMP MAKE AWK GENKSYMS PERL UTS_MACHINE | 343 | export CPP AR NM STRIP OBJCOPY OBJDUMP MAKE AWK GENKSYMS PERL UTS_MACHINE |
346 | export HOSTCXX HOSTCXXFLAGS LDFLAGS_MODULE CHECK CHECKFLAGS | 344 | export HOSTCXX HOSTCXXFLAGS LDFLAGS_MODULE CHECK CHECKFLAGS |
347 | 345 | ||