Skip to content
  • Sam Ravnborg's avatar
    x86: simplify "make ARCH=x86" and fix kconfig all.config · 80ef88d6
    Sam Ravnborg authored
    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:
    0f855aa6
    -> kconfig: add helper to set config symbol from environment variable
    
    2a113281
    
    
    -> 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: default avatarSam 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>
    80ef88d6