[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v3 1/4] x86/EFI: sanitize build logic



On 24.08.2020 19:32, Andrew Cooper wrote:
> On 24/08/2020 12:58, Jan Beulich wrote:
>> With changes done over time and as far as linking goes, the only special
>> things about building with EFI support enabled are
>> - the need for the dummy relocations object for xen.gz uniformly in all
>>   build stages,
>> - the special efi/buildid.o file, which can't be made part of
>>   efi/built_in.o, due to the extra linker options required for it.
>> All other efi/*.o can be consumed from the built_in*.o files.
>>
>> In efi/Makefile, besides moving relocs-dummy.o to "extra", also properly
>> split between obj-y and obj-bin-y.
>>
>> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
> 
> https://gitlab.com/xen-project/people/andyhhp/xen/-/pipelines/181365160
> 
> This appears to work.

Almost. efi/relocs-dummy.o also needs similar treatment, or
else it'll get constantly re-built.

> Acked-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>

Thanks. I'm folding in the below incremental change (and a
respective slight adjustment to the description). Please let
me know whether I may keep your ack, of whether you want me to
send v4.

Jan

--- unstable.orig/xen/arch/x86/Makefile
+++ unstable/xen/arch/x86/Makefile
@@ -196,8 +196,6 @@ ifeq ($(call ld-ver-build-id,$(LD) $(fil
 CFLAGS-y += -DBUILD_ID_EFI
 EFI_LDFLAGS += $(build_id_linker)
 note_file := efi/buildid.o
-efi/buildid.o: $(BASEDIR)/arch/x86/efi/built_in.o
-efi/buildid.o: ;
 # NB: this must be the last input in the linker call, because inputs following
 # the -b option will all be treated as being in the specified format.
 note_file_option := -b pe-x86-64 $(note_file)
@@ -236,6 +234,9 @@ $(TARGET).efi: FORCE
        echo '$(if $(filter y,$(XEN_BUILD_EFI)),xen.efi generation,EFI support) 
disabled'
 endif
 
+efi/buildid.o efi/relocs-dummy.o: $(BASEDIR)/arch/x86/efi/built_in.o
+efi/buildid.o efi/relocs-dummy.o: ;
+
 asm-offsets.s: $(TARGET_SUBARCH)/asm-offsets.c 
$(BASEDIR)/include/asm-x86/asm-macros.h
        $(CC) $(filter-out -Wa$(comma)% -flto,$(c_flags)) -S -o $@ $<
 




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.