2b8232ce51
a) include/asm-um/arch can't just point to include/asm-$(SUBARCH) now b) arch/{i386,x86_64}/crypto are merged now c) subarch-obj needed changes d) cpufeature_64.h should pull "cpufeature_32.h", not <asm/cpufeature_32.h> since it can be included from asm-um/cpufeature.h e) in case of uml-i386 we need CONFIG_X86_32 for make and gcc, but not for Kconfig f) sysctl.c shouldn't do vdso_enabled for uml-i386 (actually, that one should be registered from corresponding arch/*/kernel/*, with ifdef going away; that's a separate patch, though). With that and with Stephen's patch ("[PATCH net-2.6] uml: hard_header fix") we have uml allmodconfig building both on i386 and amd64. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
46 lines
1.2 KiB
Plaintext
46 lines
1.2 KiB
Plaintext
core-y += arch/um/sys-i386/ arch/x86/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
|
|
HEADER_ARCH := x86
|
|
|
|
ifeq ("$(origin SUBARCH)", "command line")
|
|
ifneq ("$(shell uname -m | sed -e s/i.86/i386/)", "$(SUBARCH)")
|
|
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
|
|
|
|
CFLAGS += -DCONFIG_X86_32
|
|
AFLAGS += -DCONFIG_X86_32
|
|
CONFIG_X86_32 := y
|
|
export CONFIG_X86_32
|
|
|
|
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
|
|
|
|
CFLAGS += $(cflags-y)
|