158713Sjhb# $FreeBSD$
258713Sjhb
3125537Sru# Pick up ../Makefile.inc early.
4125537Sru.include <bsd.init.mk>
558713Sjhb
6128649SobrienPROG=	${LDR}
7125621SruINTERNALPROG=
8125537SruFILES=	${BOOT}
9125537SruMAN=	${BOOT}.8
10125693SruSRCS=	${LDR}.S
11125537SruCLEANFILES= ${BOOT}
1258713Sjhb
13125537SruBOOT=	pxeboot
14125537SruLDR=	pxeldr
15125537SruORG=	0x7c00
16125537SruLOADER=	loader
1758713Sjhb
1869391Sps.if defined(BOOT_PXELDR_PROBE_KEYBOARD)
19125693SruCFLAGS+=-DPROBE_KEYBOARD
2069391Sps.endif
2158713Sjhb
22119714Sphk.if defined(BOOT_PXELDR_ALWAYS_SERIAL)
23125693SruCFLAGS+=-DALWAYS_SERIAL
24119714Sphk.endif
25119714Sphk
26237761SavgCFLAGS+=-I${.CURDIR}/../common
27237761Savg
28125537SruLOADERBIN= ${.OBJDIR}/../loader/loader.bin
2958713Sjhb
30125537SruCLEANFILES+= ${BOOT}.tmp
31102591Speter
3258713Sjhb${BOOT}: ${LDR} ${LOADER}
3358713Sjhb	cat ${LDR} ${LOADER} > ${.TARGET}.tmp
3458713Sjhb	dd if=${.TARGET}.tmp of=${.TARGET} obs=2k conv=osync
3558713Sjhb	rm ${.TARGET}.tmp
3658713Sjhb
37209162SrdivackyLDFLAGS+=-e start -Ttext ${ORG} -Wl,-N,-S,--oformat,binary
3858713Sjhb
39125537SruCLEANFILES+= ${LOADER}
4058713Sjhb
41125537Sru${LOADER}: ${LOADERBIN} ${BTXLDR} ${BTXKERN}
42125537Sru	btxld -v -f aout -e ${LOADER_ADDRESS} -o ${.TARGET} -l ${BTXLDR} \
43125537Sru	    -b ${BTXKERN} ${LOADERBIN}
44125537Sru
4558713Sjhb.include <bsd.prog.mk>
46232930Sdim
47232930Sdim# XXX: clang integrated-as doesn't grok .codeNN directives yet
48232930SdimCFLAGS.pxeldr.S=	${CLANG_NO_IAS}
49232930SdimCFLAGS+=		${CFLAGS.${.IMPSRC:T}}
50