aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSam Ravnborg <sam@ravnborg.org>2007-11-12 20:54:30 +0100
committerSam Ravnborg <sam@ravnborg.org>2007-11-12 21:02:20 +0100
commitdaa93fab824f2b8c35bd11670c7fab2f32b2de5f (patch)
tree73e22e7faa28dd1ec034653918b8dd1922530c3d
parentx86: do not use $(ARCH) when not needed (diff)
downloadlinux-dev-daa93fab824f2b8c35bd11670c7fab2f32b2de5f.tar.xz
linux-dev-daa93fab824f2b8c35bd11670c7fab2f32b2de5f.zip
x86: enable "make ARCH=x86"
After unification of the Kconfig files and introducing K64BIT support in kconfig it required only trivial changes to enable "make ARCH=x86". With this patch you can build for x86_64 in several ways: 1) make ARCH=x86_64 2) make ARCH=x86 K64BIT=y 3) make ARCH=x86 menuconfig => select 64-bit Likewise for i386 with the addition that i386 is default is you say ARCH=x86. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@redhat.com> Cc: "H. Peter Anvin" <hpa@zytor.com>
-rw-r--r--Makefile4
-rw-r--r--arch/x86/Kconfig18
-rw-r--r--arch/x86/Kconfig.i38618
-rw-r--r--arch/x86/Kconfig.x86_6420
-rw-r--r--scripts/kconfig/Makefile7
5 files changed, 19 insertions, 48 deletions
diff --git a/Makefile b/Makefile
index b32963adfb95..9c9c4bfb0e51 100644
--- a/Makefile
+++ b/Makefile
@@ -200,9 +200,11 @@ SRCARCH := $(ARCH)
# Additional ARCH settings for x86
ifeq ($(ARCH),i386)
SRCARCH := x86
+ K64BIT := n
endif
ifeq ($(ARCH),x86_64)
SRCARCH := x86
+ K64BIT := y
endif
KCONFIG_CONFIG ?= .config
@@ -339,7 +341,7 @@ KERNELRELEASE = $(shell cat include/config/kernel.release 2> /dev/null)
KERNELVERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
export VERSION PATCHLEVEL SUBLEVEL KERNELRELEASE KERNELVERSION
-export ARCH SRCARCH CONFIG_SHELL HOSTCC HOSTCFLAGS CROSS_COMPILE AS LD CC
+export ARCH SRCARCH K64BIT CONFIG_SHELL HOSTCC HOSTCFLAGS CROSS_COMPILE AS LD CC
export CPP AR NM STRIP OBJCOPY OBJDUMP MAKE AWK GENKSYMS PERL UTS_MACHINE
export HOSTCXX HOSTCXXFLAGS LDFLAGS_MODULE CHECK CHECKFLAGS
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 34517bf14ba4..1eb59971af5d 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -1,13 +1,25 @@
# x86 configuration
+mainmenu "Linux Kernel Configuration for x86"
+
+# Select 32 or 64 bit
+config 64BIT
+ bool "64-bit kernel"
+ default n
+ help
+ Say yes to build a 64-bit kernel - formerly known as x86_64
+ Say no to build a 32-bit kernel - formerly known as i386
+
+config X86_32
+ def_bool !64BIT
+
+config X86_64
+ def_bool 64BIT
### Arch settings
config X86
bool
default y
-config 64BIT
- def_bool X86_64
-
config GENERIC_TIME
bool
default y
diff --git a/arch/x86/Kconfig.i386 b/arch/x86/Kconfig.i386
deleted file mode 100644
index 7b8dc2604d57..000000000000
--- a/arch/x86/Kconfig.i386
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-# For a description of the syntax of this configuration file,
-# see Documentation/kbuild/kconfig-language.txt.
-#
-
-mainmenu "Linux Kernel Configuration"
-
-config X86_32
- bool
- default y
- help
- This is Linux's home port. Linux was originally native to the Intel
- 386, and runs on all the later x86 processors including the Intel
- 486, 586, Pentiums, and various instruction-set-compatible chips by
- AMD, Cyrix, and others.
-
-
-source "arch/x86/Kconfig"
diff --git a/arch/x86/Kconfig.x86_64 b/arch/x86/Kconfig.x86_64
deleted file mode 100644
index b262aaec67cc..000000000000
--- a/arch/x86/Kconfig.x86_64
+++ /dev/null
@@ -1,20 +0,0 @@
-#
-# For a description of the syntax of this configuration file,
-# see Documentation/kbuild/kconfig-language.txt.
-#
-# Note: ISA is disabled and will hopefully never be enabled.
-# If you managed to buy an ISA x86-64 box you'll have to fix all the
-# ISA drivers you need yourself.
-#
-
-mainmenu "Linux Kernel Configuration"
-
-config X86_64
- bool
- default y
- help
- Port to the x86-64 architecture. x86-64 is a 64-bit extension to the
- classical 32-bit x86 architecture. For details see
- <http://www.x86-64.org/>.
-
-source "arch/x86/Kconfig"
diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile
index 59594126e8b6..1ad6f7fc490a 100644
--- a/scripts/kconfig/Makefile
+++ b/scripts/kconfig/Makefile
@@ -4,12 +4,7 @@
PHONY += oldconfig xconfig gconfig menuconfig config silentoldconfig update-po-config
-# If a arch/$(SRCARCH)/Kconfig.$(ARCH) file exist use it
-ifneq ($(wildcard $(srctree)/arch/$(SRCARCH)/Kconfig.$(ARCH)),)
- Kconfig := arch/$(SRCARCH)/Kconfig.$(ARCH)
-else
- Kconfig := arch/$(SRCARCH)/Kconfig
-endif
+Kconfig := arch/$(SRCARCH)/Kconfig
xconfig: $(obj)/qconf
$< $(Kconfig)