mirror of https://gitee.com/openkylin/linux.git
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>
This commit is contained in:
parent
d746d647f3
commit
daa93fab82
4
Makefile
4
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
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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"
|
|
@ -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"
|
|
@ -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)
|
||||
|
|
Loading…
Reference in New Issue