Makefile.booters revision 1.30
11.30Sjmc#	$NetBSD: Makefile.booters,v 1.30 2001/11/22 00:14:20 jmc Exp $
21.1Sperry
31.1SperryBINDIR= /usr/mdec
41.2SthorpejSTRIPFLAG=
51.1SperryBINMODE=444
61.29Stls
71.29StlsDBG=    -Os
81.1Sperry
91.8SdrochnerI386_STAND_DIR?= $S/arch/i386/stand
101.8Sdrochner
111.8Sdrochner.PATH: ${I386_STAND_DIR}/lib/crt/bootsect ${I386_STAND_DIR}/lib
121.3SdrochnerBSSTART= start_bootsect.o fraglist.o bootsectmain.o biosdisk_ll.o bios_disk.o diskbuf.o
131.8Sdrochner.PATH: ${I386_STAND_DIR}/lib/crt/rom
141.16SchristosROMSTART= start_rom.o
151.8SdrochnerGENPROMDIR= ${I386_STAND_DIR}/genprom
161.8Sdrochner.PATH: ${I386_STAND_DIR}/lib/crt/dos
171.16SchristosDOSSTART= start_dos.o doscommain.o
181.1Sperry
191.13ScgdCPPFLAGS += -nostdinc -I${.OBJDIR} -I$S -I${I386_STAND_DIR}/lib -I$S/lib/libsa
201.5SdrochnerCPPFLAGS+= -D_STANDALONE
211.1Sperry
221.26SjdolecekCLEANFILES+= vers.c ${BASE}.list
231.26SjdolecekSRCS+=	vers.c
241.7Sthorpej
251.30Sjmc.if !make(obj) && !make(clean) && !make(cleandir)
261.25Smycroft.BEGIN: machine
271.25Smycroft.NOPATH: machine
281.30Sjmc.endif
291.30Sjmc
301.25Smycroftrealdepend realall: machine
311.25SmycroftCLEANFILES+= machine
321.6Sdrochner
331.25Smycroftmachine::
341.10Shubertf	-rm -f $@
351.6Sdrochner	ln -s $S/arch/i386/include $@
361.23Sdrochner
371.25Smycroft${OBJS} ${BSSTART} ${ROMSTART} ${DOSSTART}: machine
381.6Sdrochner
391.1Sperry### find out what to use for libkern
401.1SperryKERN_AS=	library
411.1Sperry.include "${S}/lib/libkern/Makefile.inc"
421.1SperryLIBKERN=	${KERNLIB}
431.1Sperry
441.1Sperry### find out what to use for libz
451.1SperryZ_AS=		library
461.1Sperry.include "${S}/lib/libz/Makefile.inc"
471.1SperryLIBZ=		${ZLIB}
481.1Sperry
491.1Sperry### find out what to use for libsa
501.1SperrySA_AS=		library
511.22SchristosSAMISCMAKEFLAGS+="SA_USE_LOADFILE=yes"
521.1Sperry.include "${S}/lib/libsa/Makefile.inc"
531.1SperryLIBSA=		${SALIB}
541.1Sperry
551.1Sperry### find out what to use for libi386
561.8SdrochnerI386DIR= ${I386_STAND_DIR}/lib
571.1Sperry.include "${I386DIR}/Makefile.inc"
581.1SperryLIBI386=		${I386LIB}
591.17Stron
601.27Senami.include <bsd.own.mk>
611.27Senami
621.18Stroncleandir distclean: cleanlibdir
631.17Stron
641.17Stroncleanlibdir:
651.17Stron	rm -rf lib
661.16Schristos
671.16Schristos.if ${OBJECT_FMT} == "ELF"
681.16SchristosLDFLAGS=-M -e start 	# -N does not work properly.
691.16Schristos.else
701.16SchristosLDFLAGS=-N -M -e _start 
711.16Schristos.endif
721.16Schristos
731.22SchristosLIBLIST=${LIBI386} ${LIBSA} ${LIBZ} ${LIBSA} ${LIBKERN} ${LIBI386} ${LIBSA}
741.22Schristos
751.26Sjdolecek.PHONY: vers.c
761.26Sjdolecekvers.c: ${VERSIONFILE}
771.26Sjdolecek	sh ${S}conf/newvers_stand.sh ${.ALLSRC} 'i386' ${NEWVERSWHAT}
781.7Sthorpej
791.26Sjdolecek${BASE}.sym: ${BSSTART} ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBI386}
801.20Stron	${LD} -o ${BASE}.sym ${LDFLAGS} -Ttext 0 ${BSSTART} ${OBJS} \
811.26Sjdolecek	${LIBLIST} >${BASE}.list
821.9Sdrochner
831.26Sjdolecek${BASE}.rom: ${GENPROM} ${ROMSTART} ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBI386}
841.20Stron	${LD} -o ${BASE}.sym ${LDFLAGS} -Ttext ${RELOC} ${ROMSTART} ${OBJS} \
851.26Sjdolecek	${LIBLIST} >${BASE}.list
861.28Stv	${OBJCOPY} --output-target=binary ${BASE}.sym ${BASE}.bin
871.9Sdrochner	(cd ${GENPROMDIR}; ${MAKE} rom BINFILE=${.OBJDIR:Q}/${BASE:Q}.bin \
881.9Sdrochner		ROMFILE=${.OBJDIR:Q}/${BASE:Q}.rom ROM_SIZE=${ROM_SIZE:Q})
891.9Sdrochner	rm -f ${BASE}.bin
901.9Sdrochner
911.26Sjdolecek${BASE}.com: ${DOSSTART} ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBI386}
921.20Stron	${LD} -o ${BASE}.sym ${LDFLAGS} -Ttext 0x100 ${DOSSTART} ${OBJS} \
931.26Sjdolecek	${LIBLIST} >${BASE}.list
941.28Stv	${OBJCOPY} --output-target=binary ${BASE}.sym ${BASE}.com
951.9Sdrochner
961.9Sdrochner.include <bsd.prog.mk>
97