1# $FreeBSD$ 2 3.include <bsd.init.mk> 4 5PROG= ${LDR} 6INTERNALPROG= 7FILES= ${BOOT} 8MAN= ${BOOT}.8 9SRCS= ${LDR}.S 10CLEANFILES+= ${BOOT} 11 12BOOT= pxeboot 13LDR= pxeldr 14ORG= 0x7c00 15LOADER= loader 16PXELDRSIZE?= 510000 # Largest known safe size 17 18.if defined(BOOT_PXELDR_PROBE_KEYBOARD) 19CFLAGS+=-DPROBE_KEYBOARD 20.endif 21 22.if defined(BOOT_PXELDR_ALWAYS_SERIAL) 23CFLAGS+=-DALWAYS_SERIAL 24.endif 25 26CFLAGS+=-I${BOOTSRC}/i386/common 27 28L=${LOADER_DEFAULT_INTERP} 29LOADERBIN= ${BOOTOBJ}/i386/loader_${L}/loader_${L}.bin 30 31CLEANFILES+= ${BOOT}.tmp 32 33${BOOT}: ${LDR} ${LOADER} 34 cat ${LDR} ${LOADER} > ${.TARGET}.tmp 35 ${DD} if=${.TARGET}.tmp of=${.TARGET} bs=2048 conv=sync 36 rm ${.TARGET}.tmp 37 38LDFLAGS+=${LDFLAGS_BIN} 39 40CLEANFILES+= ${LOADER} 41 42${LOADER}: ${LOADERBIN} ${BTXLDR} ${BTXKERN} 43 btxld -v -f elf -e ${LOADER_ADDRESS} -o ${.TARGET} -l ${BTXLDR} \ 44 -b ${BTXKERN} ${LOADERBIN} 45 @set -- `${SIZE} ${.TARGET} | tail -1` ; x=$$((${PXELDRSIZE}-$$4)); \ 46 echo "$$x bytes available"; test $$x -ge 0 47 48.include <bsd.prog.mk> 49