efi: link with -z nopack-relative-relocs

elf2efi.py cannot handle DT_RELR relocations, so disable it
if we can

Fixes https://github.com/systemd/systemd/issues/28520
This commit is contained in:
Luca Boccassi
2023-07-26 11:29:57 +01:00
committed by Luca Boccassi
parent 4cf5b343c9
commit eff91e2f38

View File

@@ -174,6 +174,10 @@ efi_c_ld_args = [
'-T' + elf2efi_lds,
]
# On CentOS 8 the nopack-relative-relocs linker flag is not supported, and we get:
# /usr/bin/ld.bfd: warning: -z nopack-relative-relocs ignored
efi_c_ld_args += cc.get_supported_link_arguments('-Wl,-z,nopack-relative-relocs')
# efi_c_args is explicitly passed to targets so that they can override distro-provided flags
# that should not be used for EFI binaries.
efi_disabled_c_args = cc.get_supported_arguments(