Makefile revision 1.11
11.4Sbrezak#	from: @(#)Makefile	8.1 (Berkeley) 6/10/93
21.11Smycroft#	     $Id: Makefile,v 1.11 1994/08/15 06:42:04 mycroft Exp $
31.1Scgd
41.4Sbrezak# RELOC=FFF00000 allows for boot prog up to FF000 (1044480) bytes long
51.4SbrezakRELOC=	FFF00000
61.1Scgd
71.1ScgdCONS= -DDCACONSOLE -DITECONSOLE -DDCMCONSOLE
81.7ShpeyerlDEFS= -DSTANDALONE -DCOMPAT_NOLABEL ${CONS} -Dhp300 # -DROMPRF
91.1ScgdCFLAGS=	-O ${INCPATH} ${DEFS}
101.1Scgd
111.4SbrezakSRCS=   autoconf.c cons.c ct.c devopen.c dca.c dcm.c fhpib.c hil.c hpib.c \
121.7Shpeyerl	ite.c ite_dv.c ite_gb.c ite_rb.c ite_subr.c ite_tc.c ite_hy.c \
131.4Sbrezak	nhpib.c rd.c scsi.c sd.c
141.4SbrezakSRCS+=	conf.c machdep.c prf.c tgets.c
151.4Sbrezak
161.4SbrezakS=	${.CURDIR}/../../..
171.4Sbrezak
181.4Sbrezak.PATH: ${S}/arch/${MACHINE_ARCH}/${MACHINE_ARCH}
191.5Scgd.PATH: ${S}/stand ${S}/lib/libsa
201.4Sbrezak
211.4SbrezakINCPATH=-I${.CURDIR} -I${.CURDIR}/../.. -I${S} -I${S}/lib/libsa
221.4Sbrezak
231.4Sbrezak### find out what to use for libkern
241.4Sbrezak.include "$S/lib/libkern/Makefile.inc"
251.4SbrezakLIBKERN=	${KERNLIB}
261.4Sbrezak
271.4Sbrezak.include "$S/lib/libsa/Makefile.inc"
281.4SbrezakLIBSA=	${SA_LIB}
291.1Scgd
301.4SbrezakLIBS=	${LIBSA} ${.OBJDIR}/libdrive.a \
311.7Shpeyerl	${LIBSA} ${LIBKERN}
321.4Sbrezak
331.4SbrezakBOOTS=	pboot dboot nboot dcopy tboot tcopy cat #ls
341.4SbrezakALL=	${BOOTS} mkboot installboot
351.1Scgd
361.1Scgdall: ${ALL}
371.1Scgd
381.4Sbrezak${BOOTS}: ${LIBS}
391.1Scgd
401.4SbrezakOBJS=	${SRCS:N*.h:R:S/$/.o/g}
411.4Sbrezak${.OBJDIR}/libdrive.a: ${OBJS}
421.1Scgd	ar crv $@ $?
431.1Scgd	ranlib $@
441.1Scgd
451.4Sbrezak# depend on DEFS
461.4Sbrezak
471.4Sbrezakdevopen.o machdep.o srt0.o: Makefile
481.4Sbrezakcons.o dca.o hil.o: Makefile
491.4Sbrezakite.o ite_subr.o ite_dv.o ite_gb.o ite_hy.o ite_rb.o ite_tc.o: Makefile
501.1Scgd
511.1Scgd# startups
521.1Scgd
531.4Sbrezaksrt0.o: ${.CURDIR}/srt0.s
541.4Sbrezak	${CC} ${INCPATH} ${DEFS} -c ${.CURDIR}/srt0.s
551.1Scgd
561.4Sbrezaktpsrt0.o: ${.CURDIR}/srt0.s
571.4Sbrezak	${CC} ${INCPATH} ${DEFS} -DTP -c ${.CURDIR}/srt0.s -o tpsrt0.o
581.4Sbrezak
591.4Sbrezak# new boot
601.4Sbrezakpboot:	pboot.o srt0.o ${LIBS}
611.4Sbrezak	ld -N -T ${RELOC} -e begin srt0.o pboot.o ${LIBS} -o $@
621.4Sbrezak	@size pboot
631.4Sbrezak	@echo pboot total size should not exceed 1044480 bytes
641.4Sbrezak
651.4Sbrezakls:	ls.o srt0.o ${LIBS}
661.4Sbrezak	ld -N -T ${RELOC} -e begin srt0.o ls.o ${LIBS} -o $@
671.4Sbrezak	@size ls
681.4Sbrezak	@echo ls total size should not exceed 1044480 bytes
691.4Sbrezak
701.4Sbrezakcat:	cat.o srt0.o ${LIBS}
711.4Sbrezak	ld -N -T ${RELOC} -e begin srt0.o cat.o ${LIBS} -o $@
721.4Sbrezak	@size cat
731.4Sbrezak	@echo cat total size should not exceed 1044480 bytes
741.1Scgd
751.1Scgd# bootable from tape
761.1Scgd
771.1Scgdtboot:	tboot.o srt0.o ${LIBS}
781.1Scgd	ld -N -T ${RELOC} -e begin srt0.o tboot.o ${LIBS} -o $@
791.1Scgd	@size tboot
801.4Sbrezak	@echo tboot total size should not exceed 1044480 bytes
811.1Scgd
821.4Sbrezaktboot.o: boot.c
831.4Sbrezak	cp ${.CURDIR}/boot.c tboot.c; chmod +w tboot.c
841.4Sbrezak	${CC} -c ${CFLAGS} -DJUSTASK tboot.c
851.1Scgd	rm -f tboot.c
861.1Scgd
871.1Scgdtcopy:	copy.o tpsrt0.o ${LIBS}
881.1Scgd	ld -N -T ${RELOC} -e begin tpsrt0.o copy.o ${LIBS} -o $@
891.1Scgd	@size tcopy
901.4Sbrezak	@echo tcopy total size should not exceed 1044480 bytes
911.1Scgd
921.1Scgd# bootable from floppy or real disks
931.1Scgd
941.1Scgddboot:	boot.o srt0.o bootconf.o ${LIBS}
951.1Scgd	ld -N -T ${RELOC} -e begin srt0.o boot.o bootconf.o ${LIBS} -o $@ 
961.1Scgd	@size dboot
971.1Scgd	@echo dboot text+data size should not exceed 57344 bytes
981.4Sbrezak	@echo dboot total size should not exceed 1044480 bytes
991.1Scgd
1001.4Sbrezakbootconf.o: ${.CURDIR}/conf.c
1011.1Scgd	rm -f bootconf.c
1021.4Sbrezak	ln -s ${.CURDIR}/conf.c bootconf.c
1031.4Sbrezak	${CC} -c ${CFLAGS} -DBOOT bootconf.c
1041.1Scgd	rm -f bootconf.c
1051.1Scgd
1061.4Sbrezak# non-secure boot (allows booting non-root owned or world writable kernels)
1071.1Scgd
1081.1Scgdnboot:	nboot.o srt0.o bootconf.o ${LIBS}
1091.1Scgd	ld -N -T ${RELOC} -e begin -o nboot srt0.o nboot.o bootconf.o ${LIBS}
1101.1Scgd	@size nboot
1111.1Scgd	@echo nboot text+data size should not exceed 57344 bytes
1121.4Sbrezak	@echo nboot total size should not exceed 1044480 bytes
1131.1Scgd
1141.4Sbrezaknboot.o: ${.CURDIR}/boot.c
1151.1Scgd	rm -f nboot.c
1161.4Sbrezak	ln -s ${.CURDIR}/boot.c nboot.c
1171.4Sbrezak	${CC} -c ${CFLAGS} -DINSECURE nboot.c
1181.1Scgd	rm -f nboot.c
1191.1Scgd
1201.4Sbrezakdcopy:	copy.o srt0.o conf.o ${LIBS}
1211.1Scgd	ld -N -T ${RELOC} -e begin -o dcopy srt0.o copy.o conf.o ${LIBS}
1221.1Scgd
1231.4Sbrezakmkboot: ${.CURDIR}/mkboot.c
1241.4Sbrezak	${CC} ${CFLAGS} -o mkboot ${.CURDIR}/mkboot.c
1251.1Scgd
1261.10Sbrezakinstallboot: ${.CURDIR}/installboot.sh
1271.10Sbrezak	@rm -f installboot
1281.10Sbrezak	cp -p ${.CURDIR}/installboot.sh installboot
1291.1Scgd
1301.1Scgd# utilities
1311.1Scgd
1321.4Sbrezakclean cleandir:
1331.1Scgd	rm -f *.o *.exe *.i errs make.out
1341.4Sbrezak	rm -f a.out pboot cat ls tboot tcopy
1351.1Scgd	rm -f boot[a-z]? boot[a-wyz][a-z].c conf[a-wyz][a-z].c
1361.4Sbrezak	rm -f core sboot bootconf.c nboot.c
1371.4Sbrezak	rm -f libdrive.a mkboot dboot dcopy nboot installboot *.lif
1381.1Scgd
1391.1Scgdinstall: mkboot installboot ${ALL}
1401.4Sbrezak	./mkboot pboot netbsdboot.lif
1411.4Sbrezak	./mkboot dboot diskboot.lif
1421.4Sbrezak	./mkboot nboot ndiskboot.lif
1431.4Sbrezak	./mkboot tboot tcopy tapeboot.lif
1441.4Sbrezak	install -c -o bin -g bin -m 555 installboot ${DESTDIR}/usr/mdec
1451.4Sbrezak	install -c -o bin -g bin -m 444 netbsdboot.lif ${DESTDIR}/usr/mdec/rdboot
1461.4Sbrezak	rm -f ${DESTDIR}/usr/mdec/bootrd
1471.4Sbrezak	ln ${DESTDIR}/usr/mdec/rdboot ${DESTDIR}/usr/mdec/bootrd
1481.4Sbrezak	rm -f ${DESTDIR}/usr/mdec/sdboot
1491.4Sbrezak	ln ${DESTDIR}/usr/mdec/rdboot ${DESTDIR}/usr/mdec/sdboot
1501.1Scgd	rm -f ${DESTDIR}/usr/mdec/bootsd
1511.4Sbrezak	ln ${DESTDIR}/usr/mdec/sdboot ${DESTDIR}/usr/mdec/bootsd
1521.4Sbrezak	install -c -o bin -g bin -m 644 tapeboot.lif ${DESTDIR}/usr/mdec/bootct
1531.9Smycroft#	install -o bin -g bin -m 755 -d ${DESTDIR}/sys/hpdist/tp
1541.9Smycroft#	install -o bin -g bin -m 444 netbsdboot.lif ${DESTDIR}/sys/hpdist/tp
1551.9Smycroft#	install -o bin -g bin -m 444 tapeboot.lif ${DESTDIR}/sys/hpdist/tp
1561.9Smycroft#	install -o bin -g bin -m 444 diskboot.lif ${DESTDIR}/sys/hpdist/tp
1571.9Smycroft#	install -o bin -g bin -m 444 ndiskboot.lif ${DESTDIR}/sys/hpdist/tp
1581.4Sbrezak
1591.4Sbrezak.include <bsd.dep.mk>
1601.4Sbrezak.include <bsd.obj.mk>
1611.11Smycroft# XXX This should not be necessary.
1621.11Smycroft.include <bsd.subdir.mk>
1631.1Scgd
1641.4SbrezakFRC:
165