The difference from cmd_barebox__ in the top Makefile is: -shared -Bsymbolic -znocombreloc Put the flags to LDFLAGS_barebox, and remove the x86-specific cmd_barebox__. Signed-off-by: Masahiro Yamada <masahiroy@xxxxxxxxxx> --- arch/x86/Makefile | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/arch/x86/Makefile b/arch/x86/Makefile index 9fc64cc04..c73842cf8 100644 --- a/arch/x86/Makefile +++ b/arch/x86/Makefile @@ -28,7 +28,9 @@ endif ifndef CONFIG_MODULES # Add cleanup flags -ifneq ($(CONFIG_X86_EFI),y) +ifeq ($(CONFIG_X86_EFI),y) +LDFLAGS_barebox += -shared -Bsymbolic -znocombreloc +else KBUILD_CPPFLAGS += -fdata-sections -ffunction-sections LDFLAGS_barebox += -static --gc-sections endif @@ -52,13 +54,6 @@ common-y += arch/x86/lib/ lds-$(CONFIG_X86_32) := arch/x86/mach-efi/elf_ia32_efi.lds lds-$(CONFIG_X86_64) := arch/x86/mach-efi/elf_x86_64_efi.lds -cmd_barebox__ ?= $(LD) $(KBUILD_LDFLAGS) $(LDFLAGS_barebox) -o $@ \ - -T $(lds-y) \ - -shared -Bsymbolic -znocombreloc \ - --whole-archive $(BAREBOX_OBJS) \ - --no-whole-archive \ - $(filter-out $(BAREBOX_LDS) $(BAREBOX_OBJS) FORCE ,$^) - quiet_cmd_efi_image = EFI-IMG $@ cmd_efi_image = $(OBJCOPY) -j .text -j .sdata -j .data -j .dynamic \ -j .dynsym -j .rel -j .rela -j .reloc -j __barebox_initcalls \ -- 2.30.2 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox