• Ard Biesheuvel's avatar
    efi/libstub/x86: Work around LLVM ELF quirk build regression · f77767ed
    Ard Biesheuvel authored
    When building the x86 EFI stub with Clang, the libstub Makefile rules
    that manipulate the ELF object files may throw an error like:
    
        STUBCPY drivers/firmware/efi/libstub/efi-stub-helper.stub.o
      strip: drivers/firmware/efi/libstub/efi-stub-helper.stub.o: Failed to find link section for section 10
      objcopy: drivers/firmware/efi/libstub/efi-stub-helper.stub.o: Failed to find link section for section 10
    
    This is the result of a LLVM feature [0] where symbol references are
    stored in a LLVM specific .llvm_addrsig section in a non-transparent way,
    causing generic ELF tools such as strip or objcopy to choke on them.
    
    So force the compiler not to emit these sections, by passing the
    appropriate command line option.
    
    [0] https://sourceware.org/bugzilla/show_bug.cgi?id=23817
    
    Cc: Nick Desaulniers <ndesaulniers@google.com>
    Cc: Peter Collingbourne <pcc@google.com>
    Cc: Sami Tolvanen <samitolvanen@google.com>
    Reported-by: default avatarArnd Bergmann <arnd@arndb.de>
    Suggested-by: default avatarFangrui Song <maskray@google.com>
    Signed-off-by: default avatarArd Biesheuvel <ardb@kernel.org>
    f77767ed
Makefile 4.84 KB