diff --git a/stand/efi/Makefile.inc b/stand/efi/Makefile.inc index f91ac9102ca..6bb0af1d84f 100644 --- a/stand/efi/Makefile.inc +++ b/stand/efi/Makefile.inc @@ -1,3 +1,5 @@ +.include + # Options used when building app-specific efi components # See conf/kern.mk for the correct set of these CFLAGS+= -Wformat @@ -26,7 +28,20 @@ EFI_TARGET= efi-app-x86_64 .else EFI_TARGET= binary .endif + +# GNU or ELF Tool Chain objcopy is usable for building EFI objects. +# LLVM objcopy is not. Use elfcopy if we've bootstrapped it (and thus +# known to be available) or objcopy is LLVM's. +.if ${MK_ELFTOOLCHAIN_BOOTSTRAP} != "no" EFI_OBJCOPY?= elfcopy +.else +_v!= ${OBJCOPY} --version +.if ${_v:Mllvm-objcopy*} == "" +EFI_OBJCOPY?= ${OBJCOPY} +.else +EFI_OBJCOPY?= elfcopy +.endif +.endif # Arbitrarily set the PE/COFF header timestamps to 1 Jan 2024 00:00:00 # for build reproducibility.