Re: [PATCH] x86: fix rebuild with EFI_STUB enabled

From: Jan Beulich
Date: Wed Apr 03 2013 - 10:58:18 EST


>>> On 03.04.13 at 16:48, "H. Peter Anvin" <hpa@xxxxxxxxx> wrote:
> This looks awesome for 3.10, but getting a minimal fix for 3.9/stable would
> be good, too.

Do you really view this as relevant for stable? Considering that this
had been this way for a while with apparently no-one having noticed,
I wouldn't think so. Nor would I see a strong need for this to go into
3.9.

Jan

> Jan Beulich <JBeulich@xxxxxxxx> wrote:
>
>>eboot.o and efi_stub_$(BITS).o didn't get added to "targets", and hence
>>their .cmd files don't get included by the build machinery, leading to
>>the files always getting rebuilt.
>>
>>Rather than adding the two files individually, take the opportunity and
>>add $(VMLINUX_OBJS) to "targets" instead, thus allowing the assignment
>>at the top of the file to be shrunk quite a bit.
>>
>>At the same time, remove a pointless flags override line - the variable
>>assigned to was misspelled anyway, and the options added are
>>meaningless for assembly sources.
>>
>>Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
>>Cc: Matthew Garrett <mjg@xxxxxxxxxx>
>>Cc: Matt Fleming <matt.fleming@xxxxxxxxx>
>>---
>> arch/x86/boot/compressed/Makefile | 5 ++---
>> 1 file changed, 2 insertions(+), 3 deletions(-)
>>
>>--- 3.9-rc5/arch/x86/boot/compressed/Makefile
>>+++ 3.9-rc5-x86-EFI-stub-rebuild/arch/x86/boot/compressed/Makefile
>>@@ -4,7 +4,7 @@
>> # create a compressed vmlinux image from the original vmlinux
>> #
>>
>>-targets := vmlinux.lds vmlinux vmlinux.bin vmlinux.bin.gz
>>vmlinux.bin.bz2 vmlinux.bin.lzma vmlinux.bin.xz vmlinux.bin.lzo
>>head_$(BITS).o misc.o string.o cmdline.o early_serial_console.o piggy.o
>>+targets := vmlinux vmlinux.bin vmlinux.bin.gz vmlinux.bin.bz2
>>vmlinux.bin.lzma vmlinux.bin.xz vmlinux.bin.lzo
>>
>> KBUILD_CFLAGS := -m$(BITS) -D__KERNEL__ $(LINUX_INCLUDE) -O2
>> KBUILD_CFLAGS += -fno-strict-aliasing -fPIC
>>@@ -29,7 +29,6 @@ VMLINUX_OBJS = $(obj)/vmlinux.lds $(obj)
>> $(obj)/piggy.o
>>
>> $(obj)/eboot.o: KBUILD_CFLAGS += -fshort-wchar -mno-red-zone
>>-$(obj)/efi_stub_$(BITS).o: KBUILD_CLFAGS += -fshort-wchar
>>-mno-red-zone
>>
>> ifeq ($(CONFIG_EFI_STUB), y)
>> VMLINUX_OBJS += $(obj)/eboot.o $(obj)/efi_stub_$(BITS).o
>>@@ -43,7 +42,7 @@ OBJCOPYFLAGS_vmlinux.bin := -R .comment
>> $(obj)/vmlinux.bin: vmlinux FORCE
>> $(call if_changed,objcopy)
>>
>>-targets += vmlinux.bin.all vmlinux.relocs
>>+targets += $(patsubst $(obj)/%,%,$(VMLINUX_OBJS)) vmlinux.bin.all
>>vmlinux.relocs
>>
>> CMD_RELOCS = arch/x86/tools/relocs
>> quiet_cmd_relocs = RELOCS $@
>
> --
> Sent from my mobile phone. Please excuse brevity and lack of formatting.



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/