Changeset View
Changeset View
Standalone View
Standalone View
stand/efi/boot1/Makefile
Show First 20 Lines • Show All 56 Lines • ▼ Show 20 Lines | |||||
.PATH: ${EFISRC}/loader/arch/${MACHINE} | .PATH: ${EFISRC}/loader/arch/${MACHINE} | ||||
.PATH: ${EFISRC}/loader | .PATH: ${EFISRC}/loader | ||||
.PATH: ${LDRSRC} | .PATH: ${LDRSRC} | ||||
.PATH: ${EFISRC}/libefi | .PATH: ${EFISRC}/libefi | ||||
CFLAGS+= -I${LDRSRC} | CFLAGS+= -I${LDRSRC} | ||||
FILES= ${BOOT1}.efi | FILES= ${BOOT1}.efi | ||||
FILESMODE_${BOOT1}.efi= ${BINMODE} | FILESMODE_${BOOT1}.efi= ${BINMODE} | ||||
.ifndef(NOFAT) | |||||
FILES+= ${BOOT1}.efifat | |||||
imp: This needs an entry in OBSOLETE_FILES.
Also don't we need to actually delete them from the tree… | |||||
Done Inline ActionsOh, yeah it needs an entry in OBSOLETE_FILES and removed from OPTIONAL_OBSOLETE_FILES. bcran: Oh, yeah it needs an entry in OBSOLETE_FILES and removed from OPTIONAL_OBSOLETE_FILES.
And yes… | |||||
.endif | |||||
LDSCRIPT= ${EFISRC}/loader/arch/${MACHINE}/ldscript.${MACHINE} | LDSCRIPT= ${EFISRC}/loader/arch/${MACHINE}/ldscript.${MACHINE} | ||||
LDFLAGS+= -Wl,-T${LDSCRIPT},-Bsymbolic,-znotext -shared | LDFLAGS+= -Wl,-T${LDSCRIPT},-Bsymbolic,-znotext -shared | ||||
.if ${MACHINE_CPUARCH} == "aarch64" | .if ${MACHINE_CPUARCH} == "aarch64" | ||||
CFLAGS+= -mgeneral-regs-only | CFLAGS+= -mgeneral-regs-only | ||||
.endif | .endif | ||||
.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386" | .if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386" | ||||
Show All 18 Lines | if ${NM} ${.ALLSRC} | grep ' U '; then \ | ||||
echo "Undefined symbols in ${.ALLSRC}"; \ | echo "Undefined symbols in ${.ALLSRC}"; \ | ||||
exit 1; \ | exit 1; \ | ||||
fi | fi | ||||
SOURCE_DATE_EPOCH=${SOURCE_DATE_EPOCH} \ | SOURCE_DATE_EPOCH=${SOURCE_DATE_EPOCH} \ | ||||
${OBJCOPY} -j .peheader -j .text -j .sdata -j .data \ | ${OBJCOPY} -j .peheader -j .text -j .sdata -j .data \ | ||||
-j .dynamic -j .dynsym -j .rel.dyn \ | -j .dynamic -j .dynsym -j .rel.dyn \ | ||||
-j .rela.dyn -j .reloc -j .eh_frame \ | -j .rela.dyn -j .reloc -j .eh_frame \ | ||||
--output-target=${EFI_TARGET} ${.ALLSRC} ${.TARGET} | --output-target=${EFI_TARGET} ${.ALLSRC} ${.TARGET} | ||||
.ifndef(NOFAT) | |||||
# The following inserts our objects into a template FAT file system | |||||
# created by generate-fat.sh | |||||
.include "Makefile.fat" | |||||
${BOOT1}.efifat: ${BOOT1}.efi | |||||
@set -- `ls -l ${.ALLSRC}`; \ | |||||
x=$$(($$5-${BOOT1_MAXSIZE})); \ | |||||
if [ $$x -ge 0 ]; then \ | |||||
echo "boot1 $$x bytes too large; regenerate FAT templates?" >&2 ;\ | |||||
exit 1; \ | |||||
fi | |||||
echo ${.OBJDIR} | |||||
xz -d -c ${BOOTSRC}/efi/boot1/fat-${MACHINE}.tmpl.xz > ${.TARGET} | |||||
${DD} if=${.ALLSRC} of=${.TARGET} seek=${BOOT1_OFFSET} conv=notrunc | |||||
CLEANFILES+= ${BOOT1}.efi ${BOOT1}.efifat | |||||
.endif | |||||
.include <bsd.prog.mk> | .include <bsd.prog.mk> |
This needs an entry in OBSOLETE_FILES.
Also don't we need to actually delete them from the tree too?