xref: /freebsd/stand/i386/pxeldr/Makefile (revision 4c8ea3efe73c12d595472a7fc37177432a77858e)
1ca987d46SWarner Losh# $FreeBSD$
2ca987d46SWarner Losh
3ca987d46SWarner Losh.include <bsd.init.mk>
4ca987d46SWarner Losh
5ca987d46SWarner LoshPROG=	${LDR}
6ca987d46SWarner LoshINTERNALPROG=
7ca987d46SWarner LoshFILES=	${BOOT}
8ca987d46SWarner LoshMAN=	${BOOT}.8
9ca987d46SWarner LoshSRCS=	${LDR}.S
10ca987d46SWarner LoshCLEANFILES+= ${BOOT}
11ca987d46SWarner Losh
12ca987d46SWarner LoshBOOT=	pxeboot
13ca987d46SWarner LoshLDR=	pxeldr
14ca987d46SWarner LoshORG=	0x7c00
15ca987d46SWarner LoshLOADER=	loader
16ca987d46SWarner Losh
17ca987d46SWarner Losh.if defined(BOOT_PXELDR_PROBE_KEYBOARD)
18ca987d46SWarner LoshCFLAGS+=-DPROBE_KEYBOARD
19ca987d46SWarner Losh.endif
20ca987d46SWarner Losh
21ca987d46SWarner Losh.if defined(BOOT_PXELDR_ALWAYS_SERIAL)
22ca987d46SWarner LoshCFLAGS+=-DALWAYS_SERIAL
23ca987d46SWarner Losh.endif
24ca987d46SWarner Losh
25ca987d46SWarner LoshCFLAGS+=-I${BOOTSRC}/i386/common
26ca987d46SWarner Losh
279d45c24cSWarner LoshL=${LOADER_DEFAULT_INTERP}
289d45c24cSWarner LoshLOADERBIN= ${BOOTOBJ}/i386/loader_${L}/loader_${L}.bin
29ca987d46SWarner Losh
30ca987d46SWarner LoshCLEANFILES+= ${BOOT}.tmp
31ca987d46SWarner Losh
32ca987d46SWarner Losh${BOOT}: ${LDR} ${LOADER}
33ca987d46SWarner Losh	cat ${LDR} ${LOADER} > ${.TARGET}.tmp
3487c5e64cSAlex Richardson	${DD} if=${.TARGET}.tmp of=${.TARGET} bs=2048 conv=sync
35ca987d46SWarner Losh	rm ${.TARGET}.tmp
36ca987d46SWarner Losh
37ca987d46SWarner LoshLDFLAGS+=${LDFLAGS_BIN}
38ca987d46SWarner Losh
39ca987d46SWarner LoshCLEANFILES+= ${LOADER}
40ca987d46SWarner Losh
41*4c8ea3efSWarner Losh# Note: pxeldr.S assumes a.out and will require changes for ELF if the output
42*4c8ea3efSWarner Losh# format is changed to ELF.
43ca987d46SWarner Losh${LOADER}: ${LOADERBIN} ${BTXLDR} ${BTXKERN}
44*4c8ea3efSWarner Losh	btxld -v -f aout -e ${LOADER_ADDRESS} -o ${.TARGET} -l ${BTXLDR} \
45ca987d46SWarner Losh	    -b ${BTXKERN} ${LOADERBIN}
46ca987d46SWarner Losh
47ca987d46SWarner Losh.include <bsd.prog.mk>
48