a0f97e06a4
The variable CFLAGS is a wellknown variable and the usage by kbuild may result in unexpected behaviour. On top of that several people over time has asked for a way to pass in additional flags to gcc. This patch replace use of CFLAGS with KBUILD_CFLAGS all over the tree and enabling one to use: make CFLAGS=... to specify additional gcc commandline options. One usecase is when trying to find gcc bugs but other use cases has been requested too. Patch was tested on following architectures: alpha, arm, i386, x86_64, mips, sparc, sparc64, ia64, m68k Test was simple to do a defconfig build, apply the patch and check that nothing got rebuild. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
39 lines
1.1 KiB
Text
39 lines
1.1 KiB
Text
core-y += arch/um/sys-i386/ arch/i386/crypto/
|
|
|
|
TOP_ADDR := $(CONFIG_TOP_ADDR)
|
|
|
|
ifeq ($(CONFIG_MODE_SKAS),y)
|
|
ifneq ($(CONFIG_MODE_TT),y)
|
|
START := 0x8048000
|
|
endif
|
|
endif
|
|
|
|
LDFLAGS += -m elf_i386
|
|
ELF_ARCH := $(SUBARCH)
|
|
ELF_FORMAT := elf32-$(SUBARCH)
|
|
OBJCOPYFLAGS := -O binary -R .note -R .comment -S
|
|
|
|
ifeq ("$(origin SUBARCH)", "command line")
|
|
ifneq ("$(shell uname -m | sed -e s/i.86/i386/)", "$(SUBARCH)")
|
|
KBUILD_CFLAGS += $(call cc-option,-m32)
|
|
AFLAGS += $(call cc-option,-m32)
|
|
LINK-y += $(call cc-option,-m32)
|
|
UML_OBJCOPYFLAGS += -F $(ELF_FORMAT)
|
|
|
|
export LDFLAGS HOSTCFLAGS HOSTLDFLAGS UML_OBJCOPYFLAGS
|
|
endif
|
|
endif
|
|
|
|
ARCH_KERNEL_DEFINES += -U__$(SUBARCH)__ -U$(SUBARCH)
|
|
|
|
# First of all, tune CFLAGS for the specific CPU. This actually sets cflags-y.
|
|
include $(srctree)/arch/i386/Makefile.cpu
|
|
|
|
# prevent gcc from keeping the stack 16 byte aligned. Taken from i386.
|
|
cflags-y += $(call cc-option,-mpreferred-stack-boundary=2)
|
|
|
|
# Prevent sprintf in nfsd from being converted to strcpy and resulting in
|
|
# an unresolved reference.
|
|
cflags-y += -ffreestanding
|
|
|
|
KBUILD_CFLAGS += $(cflags-y)
|