<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/108609>108609</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            llvm-objcopy lacks support for efi-app-x86_64 output
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            tools:llvm-objcopy/strip
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          emaste
      </td>
    </tr>
</table>

<pre>
    In FreeBSD we build our UEFI loader by linking an ELF object, and using ELF Tool Chain's objcopy to convert that to a PE EFI binary, using `--output-target=efi-app-x86_64`. 

Invocation:
```
SOURCE_DATE_EPOCH=1451606400  objcopy \
 -j .peheader -j .text -j .sdata -j .data  -j .dynamic -j .dynsym \
    -j .rel.dyn  -j .rela.dyn -j .reloc -j .eh_frame -j set_Xcommand_set \
 -j set_Xlua_compile_set \
    --output-target=efi-app-x86_64 \
 loader_lua.sym loader_lua.efi`
```

Gentoo Linux encountered a similar issue, building app-crypt/sbsigntools: https://bugs.gentoo.org/733016

We are working on migrating to LLVM binutils replacements, and this is one issue that's a dependency of that change.

Related FreeBSD bugs:
- https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=280771
- https://bugs.freebsd.org/bugzilla/showdependencytree.cgi?id=258872&hide_resolved=1
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJycVE2PozgQ_TXOpQQy5iPkwKEnCbst9WpG87G7N2RMBTxjbGSbdGd__cqQzqRbK600UkTqUeXyq8ezuXOy14gVyT-Q_LDhsx-MrXDkzuOmNd2letRQW8QPXw7wjNDOUnVgZgvfjvUjKMM7tNBeQEn9Q-oeuIbjUw2m_Y7CE7YHrjuYXUiF91-NUbAfuNSEbV0oE2a6gDcgjD6j9eAH7gPm8OkIYY9Wam4vodXahhQ0iszsp9lHntsePUkPeJIRn6bopSyaIiMFjYHQA6EP6_NRn43gXhpN0usrUtDrb4FfPn77vD82h4evx-b46eP-d5IekixPClpklMKNKcn36wKIvkM84YCLAgF4fPFL4Dru-RItwRpdNB-leI3dZbxrBWuNRRVyN8AXdAVmXYtDc7J8xAAc-uZvYcaR665x6N-SW7Jq5o0w4yQVvqsIe_6PjHfV64du1MzjQP0O4kneRHyn6fr8DbU3Bp6knl8AtTCz9mixAw5OjlJxC9K5GcMXXuy12GiaImEvkyesdm0wqTdGOZI-wOD9FALCasLqdu5d3C9bxMb2hNXbNKVJcc_gLwRuEZ6NXSxqNIyyt9wH4A08Pf35R3DZ7KVyYHFSXOCI2rtX__pBOpAOjMaV6-LSxcEcOpxQd6jFBcxpta8YuO4xvufwGRX32N3OUuB982L0X0OdLGLruutU7dz_I5XiQY_BPDft3MeilyStZUfSAyvpdpv8arefI3iL-KZvXpZbRlgxyA4bi86oM4ZEsumqtNulO77BKtmygmUlzfLNULUiL7KOdmWenkSRirIoeSGKfJe1RbHluJEVoyyjuyRNtoxmWZyXYofJLkdsxVbwhGQURy5VrNR5DIw3i-hVQsuC7jaKt6jccmUx9mqLUBpdD2mYyls5EcbCpWarJbkonlElnXc_O3vpFVb3q0Fx8cOBm6fJWA8nY-HdsVhPzWa2qnqrdC_9MLexMCNhdeh5_Ysma9b7sF4mcYTV12HOFfs3AAD__5vqwWI">