[PATCH 2/4] scripts/Makefile.lib: add -L option to LD command for EFI binaries

Ilias Apalodimas ilias.apalodimas at linaro.org
Wed Jan 15 09:02:53 CET 2025


On Tue, 14 Jan 2025 at 12:30, Heinrich Schuchardt
<heinrich.schuchardt at canonical.com> wrote:
>
> The linker uses the path specified with -L to search for linker scripts
> and for linker script includes.
>
> For out-of-tree builds specify the build directory with -L instead of
> the absolute path of the linker script. This allows using an INCLUDE
> statement.
>
> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>
> ---
>  scripts/Makefile.lib | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
> index 54403040f00..18993435eae 100644
> --- a/scripts/Makefile.lib
> +++ b/scripts/Makefile.lib
> @@ -523,10 +523,10 @@ $(obj)/%.efi: $(obj)/%_efi.so
>  KBUILD_EFILDFLAGS = -nostdlib -zexecstack -znocombreloc -znorelro
>  KBUILD_EFILDFLAGS += $(call ld-option,--no-warn-rwx-segments)
>  quiet_cmd_efi_ld = LD      $@
> -cmd_efi_ld = $(LD) $(KBUILD_EFILDFLAGS) -T $(EFI_LDS_PATH) \
> +cmd_efi_ld = $(LD) $(KBUILD_EFILDFLAGS) -L $(srctree) -T $(EFI_LDS_PATH) \
>                 -shared -Bsymbolic -s $^ -o $@
>
> -EFI_LDS_PATH = $(srctree)/arch/$(ARCH)/lib/$(EFI_LDS)
> +EFI_LDS_PATH = arch/$(ARCH)/lib/$(EFI_LDS)
>
>  $(obj)/efi_crt0.o: $(srctree)/arch/$(ARCH)/lib/$(EFI_CRT0:.o=.S) FORCE
>         $(call if_changed_dep,as_o_S)
> --
> 2.47.1
>

Reviewed-by: Ilias Apalodimas <ilias.apalodimas at linaro.org>


More information about the U-Boot mailing list