X86: Add a configuration option to select the -m32 compiler option when needed
This commit is contained in:
parent
1b3a763e4b
commit
d96bfc2d9b
@ -6480,3 +6480,7 @@
|
||||
little harder, I re-implemented the backed-out custom configuration
|
||||
feature. The new version does not have bad side-effect (1) (but stil
|
||||
has bad side-effect (2)) (2014-1-16).
|
||||
* arch/x86/Kconfig and configs/qemu-i486/nsh/Make.defs and
|
||||
ostest/Make.defs: Add a configuration option to select the -m32
|
||||
compiler option when building for a 32-bit target on a native 64-bit
|
||||
compiler (2014-1-18).
|
||||
|
@ -12,6 +12,7 @@ choice
|
||||
|
||||
config ARCH_I486
|
||||
bool "i486"
|
||||
select ARCH_X86_HAVE_32BIT
|
||||
---help---
|
||||
Intel i486 architecture
|
||||
|
||||
@ -19,15 +20,33 @@ endchoice
|
||||
|
||||
config ARCH_CHIP_QEMU
|
||||
bool "Qemu x86 emulation"
|
||||
default n
|
||||
---help---
|
||||
Intel i486 architecture
|
||||
|
||||
config ARCH_CHIP
|
||||
string
|
||||
default "qemu" if ARCH_CHIP_QEMU
|
||||
default "qemu" if ARCH_CHIP_QEMU
|
||||
|
||||
config ARCH_X86_HAVE_32BIT
|
||||
bool
|
||||
default n
|
||||
|
||||
config ARCH_X86_M32
|
||||
bool "Build 32-bit system with a 64-bit machine"
|
||||
default n
|
||||
depends on ARCH_X86_HAVE_32BIT
|
||||
---help---
|
||||
If you are building for a 32-bit target using a native 64-bit
|
||||
toolchain, then you need to add compilation options to select the
|
||||
32-bit target. Selecting this option will add the -m32 option to
|
||||
the compiler command line.
|
||||
|
||||
source arch/x86/src/common/Kconfig
|
||||
if ARCH_I486
|
||||
source arch/x86/src/i486/Kconfig
|
||||
endif # ARCH_I486
|
||||
if ARCH_CHIP_QEMU
|
||||
source arch/x86/src/qemu/Kconfig
|
||||
|
||||
endif
|
||||
endif # ARCH_CHIP_QEMU
|
||||
endif # ARCH_X86
|
||||
|
@ -1,7 +1,7 @@
|
||||
############################################################################
|
||||
# configs/qemu-i486/nsh/Make.defs
|
||||
#
|
||||
# Copyright (C) 2011 Gregory Nutt. All rights reserved.
|
||||
# Copyright (C) 2011, 2014 Gregory Nutt. All rights reserved.
|
||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
@ -69,11 +69,10 @@ ARCHPICFLAGS = -fpic
|
||||
ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow
|
||||
ARCHDEFINES =
|
||||
|
||||
ifeq ($(HOSTOS),FreeBSD)
|
||||
HOST_ARCH = ${shell uname -m 2>/dev/null || echo "Other"}
|
||||
ifeq ($(HOST_ARCH),amd64)
|
||||
ARCHCPUFLAGS += -m32
|
||||
endif
|
||||
# Check if building a 32-bit target with a 64-bit toolchain
|
||||
|
||||
ifeq ($(ARCH_X86_M32),y)
|
||||
ARCHCPUFLAGS += -m32
|
||||
endif
|
||||
|
||||
# We have to use a cross-development toolchain under Cygwin because the native
|
||||
@ -105,7 +104,6 @@ ifeq ($(CONFIG_DEBUG_SYMBOLS),y)
|
||||
LDFLAGS += -g
|
||||
endif
|
||||
|
||||
|
||||
MKDEP = $(TOPDIR)/tools/mkdeps.sh
|
||||
|
||||
HOSTCC = gcc
|
||||
|
@ -1,7 +1,7 @@
|
||||
############################################################################
|
||||
# configs/qemu-i486/ostest/Make.defs
|
||||
#
|
||||
# Copyright (C) 2011 Gregory Nutt. All rights reserved.
|
||||
# Copyright (C) 2011, 2014 Gregory Nutt. All rights reserved.
|
||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
@ -69,11 +69,10 @@ ARCHPICFLAGS = -fpic
|
||||
ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow
|
||||
ARCHDEFINES =
|
||||
|
||||
ifeq ($(HOSTOS),FreeBSD)
|
||||
HOST_ARCH = ${shell uname -m 2>/dev/null || echo "Other"}
|
||||
ifeq ($(HOST_ARCH),amd64)
|
||||
ARCHCPUFLAGS += -m32
|
||||
endif
|
||||
# Check if building a 32-bit target with a 64-bit toolchain
|
||||
|
||||
ifeq ($(ARCH_X86_M32),y)
|
||||
ARCHCPUFLAGS += -m32
|
||||
endif
|
||||
|
||||
# We have to use a cross-development toolchain under Cygwin because the native
|
||||
@ -105,7 +104,6 @@ ifeq ($(CONFIG_DEBUG_SYMBOLS),y)
|
||||
LDFLAGS += -g
|
||||
endif
|
||||
|
||||
|
||||
MKDEP = $(TOPDIR)/tools/mkdeps.sh
|
||||
|
||||
HOSTCC = gcc
|
||||
|
Loading…
Reference in New Issue
Block a user