The patch titled uml: fix compilation options for USER_OBJS has been removed from the -mm tree. Its filename was uml-fix-compilation-options-for-user_objs.patch This patch was dropped because it was merged into mainline or a subsystem tree ------------------------------------------------------ Subject: uml: fix compilation options for USER_OBJS From: Jeff Dike <jdike@xxxxxxxxxxx>, Paolo Giarrusso <blaisorblade@xxxxxxxx> Make sure that when compiling USER_OBJS the correct compilation options are passed; since they are compiled with USER_CFLAGS which is derived from CFLAGS, make sure it is a recursively evaluated variable, so that changes to CFLAGS done afterwards the inclusion of arch/$(ARCH)/Makefile are reflected in USER_CFLAGS. For instance, without this patch userspace objects are never compiled with debug info active. Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@xxxxxxxx> Cc: Jeff Dike <jdike@xxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- arch/um/Makefile | 21 +++++++++++---------- arch/um/Makefile-i386 | 4 +--- arch/um/Makefile-x86_64 | 4 ++-- 3 files changed, 14 insertions(+), 15 deletions(-) diff -puN arch/um/Makefile~uml-fix-compilation-options-for-user_objs arch/um/Makefile --- a/arch/um/Makefile~uml-fix-compilation-options-for-user_objs +++ a/arch/um/Makefile @@ -64,9 +64,14 @@ CFLAGS += $(CFLAGS-y) -D__arch_um__ -DSU AFLAGS += $(ARCH_INCLUDE) -USER_CFLAGS := $(patsubst -I%,,$(CFLAGS)) -USER_CFLAGS := $(patsubst -D__KERNEL__,,$(USER_CFLAGS)) $(ARCH_INCLUDE) \ - $(MODE_INCLUDE) -D_FILE_OFFSET_BITS=64 +USER_CFLAGS = $(patsubst $(KERNEL_DEFINES),,$(patsubst -D__KERNEL__,,\ + $(patsubst -I%,,$(CFLAGS)))) $(ARCH_INCLUDE) $(MODE_INCLUDE) \ + -D_FILE_OFFSET_BITS=64 + +include $(srctree)/$(ARCH_DIR)/Makefile-$(SUBARCH) + +#This will adjust *FLAGS accordingly to the platform. +include $(srctree)/$(ARCH_DIR)/Makefile-os-$(OS) # -Derrno=kernel_errno - This turns all kernel references to errno into # kernel_errno to separate them from the libc errno. This allows -fno-common @@ -74,15 +79,11 @@ USER_CFLAGS := $(patsubst -D__KERNEL__,, # errnos. # These apply to kernelspace only. -CFLAGS += -Derrno=kernel_errno -Dsigprocmask=kernel_sigprocmask \ - -Dmktime=kernel_mktime +KERNEL_DEFINES = -Derrno=kernel_errno -Dsigprocmask=kernel_sigprocmask \ + -Dmktime=kernel_mktime $(ARCH_KERNEL_DEFINES) +CFLAGS += $(KERNEL_DEFINES) CFLAGS += $(call cc-option,-fno-unit-at-a-time,) -include $(srctree)/$(ARCH_DIR)/Makefile-$(SUBARCH) - -#This will adjust *FLAGS accordingly to the platform. -include $(srctree)/$(ARCH_DIR)/Makefile-os-$(OS) - # These are needed for clean and mrproper, since in that case .config is not # included; the values here are meaningless diff -puN arch/um/Makefile-i386~uml-fix-compilation-options-for-user_objs arch/um/Makefile-i386 --- a/arch/um/Makefile-i386~uml-fix-compilation-options-for-user_objs +++ a/arch/um/Makefile-i386 @@ -16,7 +16,6 @@ OBJCOPYFLAGS := -O binary -R .note -R ifeq ("$(origin SUBARCH)", "command line") ifneq ("$(shell uname -m | sed -e s/i.86/i386/)", "$(SUBARCH)") CFLAGS += $(call cc-option,-m32) -USER_CFLAGS += $(call cc-option,-m32) AFLAGS += $(call cc-option,-m32) LINK-y += $(call cc-option,-m32) UML_OBJCOPYFLAGS += -F $(ELF_FORMAT) @@ -25,7 +24,7 @@ export LDFLAGS HOSTCFLAGS HOSTLDFLAGS UM endif endif -CFLAGS += -U__$(SUBARCH)__ -U$(SUBARCH) +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 @@ -38,4 +37,3 @@ cflags-y += $(call cc-option,-mpreferred cflags-y += -ffreestanding CFLAGS += $(cflags-y) -USER_CFLAGS += $(cflags-y) diff -puN arch/um/Makefile-x86_64~uml-fix-compilation-options-for-user_objs arch/um/Makefile-x86_64 --- a/arch/um/Makefile-x86_64~uml-fix-compilation-options-for-user_objs +++ a/arch/um/Makefile-x86_64 @@ -8,8 +8,8 @@ _extra_flags_ = -fno-builtin -m64 #We #undef __x86_64__ for kernelspace, not for userspace where #it's needed for headers to work! -CFLAGS += -U__$(SUBARCH)__ $(_extra_flags_) -USER_CFLAGS += $(_extra_flags_) +ARCH_KERNEL_DEFINES = -U__$(SUBARCH)__ +CFLAGS += $(_extra_flags_) CHECKFLAGS += -m64 AFLAGS += -m64 _ Patches currently in -mm which might be from jdike@xxxxxxxxxxx are uml-ubd-driver-allow-using-up-to-16-ubd-devices.patch uml-ubd-driver-document-some-struct-fields.patch uml-ubd-driver-var-renames.patch uml-ubd-driver-give-better-names-to-some-functions.patch uml-ubd-driver-change-ubd_lock-to-be-a-mutex.patch uml-ubd-driver-ubd_io_lock-usage-fixup.patch uml-ubd-driver-reformat-ubd_config.patch uml-ubd-driver-convert-do_ubd-to-a-boolean-variable.patch uml-ubd-driver-use-bitfields-where-possible.patch uml-ubd-driver-do-not-store-error-codes-as-fd.patch uml-ubd-driver-various-little-changes.patch uml-add-_text-definition-to-linker-scripts.patch uml-add-initcalls.patch uml-fix-prototypes.patch uml-make-execvp-safe-for-our-usage.patch tty-signal-tty-locking.patch uml-add-generic-bug-support.patch add-process_session-helper-routine-deprecate-old-field-fix-warnings-fix.patch tty-switch-to-ktermios-uml-fix.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html