Skip to content

Commit

Permalink
x86: enable "make ARCH=x86"
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
Sam Ravnborg committed Nov 12, 2007
1 parent d746d64 commit daa93fa
Show file tree
Hide file tree
Showing 5 changed files with 19 additions and 48 deletions.
4 changes: 3 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -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

Expand Down
18 changes: 15 additions & 3 deletions arch/x86/Kconfig
Original file line number Diff line number Diff line change
@@ -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
Expand Down
18 changes: 0 additions & 18 deletions arch/x86/Kconfig.i386

This file was deleted.

20 changes: 0 additions & 20 deletions arch/x86/Kconfig.x86_64

This file was deleted.

7 changes: 1 addition & 6 deletions scripts/kconfig/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down

0 comments on commit daa93fa

Please sign in to comment.