<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">