Makefile revision 40314
118334Speter#	$Id: Makefile,v 1.2 1998/10/13 18:29:18 rnordier Exp $
250397Sobrien
318334SpeterM4?=	m4
418334Speter
518334Speter.if exists(${.OBJDIR}/../btx)
618334SpeterBTX=	${.OBJDIR}/../btx
718334Speter.else
818334SpeterBTX=	${.CURDIR}/../btx
918334Speter.endif
1018334Speter
1118334SpeterORG1=	0x7c00
1218334SpeterORG2=	0x1000
1318334Speter
1418334SpeterCFLAGS=	-elf -I${BTX}/lib -I. -fno-builtin \
1518334Speter	-O2 -malign-functions=0 -malign-jumps=0 -malign-loops=0 -mrtd \
1618334Speter	-Wall -Waggregate-return -Wbad-function-cast -Wcast-align \
1718334Speter	-Wmissing-declarations -Wmissing-prototypes -Wnested-externs \
1818334Speter	-Wpointer-arith -Wshadow -Wstrict-prototypes -Wwrite-strings
1918334Speter
2018334SpeterLDFLAGS=-nostdlib -static -N
2118334Speter
2218334Speterall: boot1 boot2
2318334Speter
2418334Speterboot1: boot1.out
2518334Speter	objcopy -S -O binary boot1.out ${.TARGET}
2618334Speter
2718334Speterboot1.out: boot1.o
2818334Speter	${LD} ${LDFLAGS} -e start -Ttext ${ORG1} -o ${.TARGET} boot1.o
2918334Speter
3018334Speterboot1.o: boot1.m4 boot1.s
3118334Speter	${M4} boot1.m4 boot1.s | ${AS} ${AFLAGS} -o ${.TARGET}
3218334Speter
3318334Speterboot2: boot2.ldr boot2.bin
3418334Speter	btxld -v -E ${ORG2} -f bin -b ${BTX}/btx/btx -l boot2.ldr \
3518334Speter		-o boot2.ld -P 1 boot2.bin
3618334Speter	@ls -l boot2.ld | awk '{ x = 7680 - $$5; \
3718334Speter		print x " bytes available"; if (x < 0) exit 1 }'
3818334Speter	dd if=boot2.ld of=${.TARGET} obs=7680 conv=osync 2>/dev/null
3918334Speter
4018334Speterboot2.ldr:
4118334Speter	dd if=/dev/zero of=${.TARGET} bs=512 count=1 2>/dev/null
4250397Sobrien
4350397Sobrienboot2.bin: boot2.out
4450397Sobrien	objcopy -S -O binary boot2.out ${.TARGET}
4550397Sobrien
4650397Sobrienboot2.out: boot2.o
4750397Sobrien	${LD} ${LDFLAGS} -Ttext ${ORG2} -o ${.TARGET} \
4850397Sobrien		${BTX}/lib/crt0.o boot2.o
4950397Sobrien
5018334Speterclean:
5118334Speter	rm -f boot1 boot1.out boot1.o boot2 boot2.ldr boot2.bin \
5218334Speter		boot2.ld boot2.out boot2.o
5350397Sobrien