Makefile.booters revision 1.25
11.25Smycroft#	$NetBSD: Makefile.booters,v 1.25 2000/01/23 16:44:18 mycroft Exp $
21.1Sperry
31.1SperryBINDIR= /usr/mdec
41.2SthorpejSTRIPFLAG=
51.1SperryBINMODE=444
61.1Sperry
71.8SdrochnerI386_STAND_DIR?= $S/arch/i386/stand
81.8Sdrochner
91.8Sdrochner.PATH: ${I386_STAND_DIR}/lib/crt/bootsect ${I386_STAND_DIR}/lib
101.3SdrochnerBSSTART= start_bootsect.o fraglist.o bootsectmain.o biosdisk_ll.o bios_disk.o diskbuf.o
111.8Sdrochner.PATH: ${I386_STAND_DIR}/lib/crt/rom
121.16SchristosROMSTART= start_rom.o
131.8SdrochnerGENPROMDIR= ${I386_STAND_DIR}/genprom
141.8Sdrochner.PATH: ${I386_STAND_DIR}/lib/crt/dos
151.16SchristosDOSSTART= start_dos.o doscommain.o
161.1Sperry
171.13ScgdCPPFLAGS += -nostdinc -I${.OBJDIR} -I$S -I${I386_STAND_DIR}/lib -I$S/lib/libsa
181.5SdrochnerCPPFLAGS+= -D_STANDALONE
191.1Sperry
201.9SdrochnerCLEANFILES+= vers.c vers.o ${BASE}.list
211.7Sthorpej
221.25Smycroft.BEGIN: machine
231.25Smycroft.NOPATH: machine
241.25Smycroftrealdepend realall: machine
251.25SmycroftCLEANFILES+= machine
261.6Sdrochner
271.25Smycroftmachine::
281.10Shubertf	-rm -f $@
291.6Sdrochner	ln -s $S/arch/i386/include $@
301.23Sdrochner
311.25Smycroft${OBJS} ${BSSTART} ${ROMSTART} ${DOSSTART}: machine
321.6Sdrochner
331.1Sperry### find out what to use for libkern
341.1SperryKERN_AS=	library
351.1Sperry.include "${S}/lib/libkern/Makefile.inc"
361.1SperryLIBKERN=	${KERNLIB}
371.1Sperry
381.1Sperry### find out what to use for libz
391.1SperryZ_AS=		library
401.1Sperry.include "${S}/lib/libz/Makefile.inc"
411.1SperryLIBZ=		${ZLIB}
421.1Sperry
431.1Sperry### find out what to use for libsa
441.1SperrySA_AS=		library
451.22SchristosSAMISCMAKEFLAGS+="SA_USE_LOADFILE=yes"
461.1Sperry.include "${S}/lib/libsa/Makefile.inc"
471.1SperryLIBSA=		${SALIB}
481.1Sperry
491.1Sperry### find out what to use for libi386
501.8SdrochnerI386DIR= ${I386_STAND_DIR}/lib
511.1Sperry.include "${I386DIR}/Makefile.inc"
521.1SperryLIBI386=		${I386LIB}
531.17Stron
541.18Stroncleandir distclean: cleanlibdir
551.17Stron
561.17Stroncleanlibdir:
571.17Stron	rm -rf lib
581.1Sperry
591.16Schristos.include <bsd.own.mk>
601.16Schristos
611.16Schristos.if ${OBJECT_FMT} == "ELF"
621.16SchristosLDFLAGS=-M -e start 	# -N does not work properly.
631.16Schristos.else
641.16SchristosLDFLAGS=-N -M -e _start 
651.16Schristos.endif
661.16Schristos
671.22SchristosLIBLIST=${LIBI386} ${LIBSA} ${LIBZ} ${LIBSA} ${LIBKERN} ${LIBI386} ${LIBSA}
681.22Schristos
691.21Sfvdlvers.o: ${VERSIONFILE}
701.19Ssommerfe	sh ${I386_STAND_DIR}/newvers.sh ${.ALLSRC} ${NEWVERSWHAT}
711.7Sthorpej	${COMPILE.c} vers.c
721.7Sthorpej
731.9Sdrochner${BASE}.sym: ${BSSTART} ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBI386} vers.o
741.20Stron	${LD} -o ${BASE}.sym ${LDFLAGS} -Ttext 0 ${BSSTART} ${OBJS} \
751.22Schristos	vers.o ${LIBLIST} >${BASE}.list
761.9Sdrochner
771.9Sdrochner${BASE}.rom: ${GENPROM} ${ROMSTART} ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBI386} vers.o
781.20Stron	${LD} -o ${BASE}.sym ${LDFLAGS} -Ttext ${RELOC} ${ROMSTART} ${OBJS} \
791.22Schristos	vers.o ${LIBLIST} >${BASE}.list
801.24Sdrochner	objcopy --output-target=binary ${BASE}.sym ${BASE}.bin
811.9Sdrochner	(cd ${GENPROMDIR}; ${MAKE} rom BINFILE=${.OBJDIR:Q}/${BASE:Q}.bin \
821.9Sdrochner		ROMFILE=${.OBJDIR:Q}/${BASE:Q}.rom ROM_SIZE=${ROM_SIZE:Q})
831.9Sdrochner	rm -f ${BASE}.bin
841.9Sdrochner
851.9Sdrochner${BASE}.com: ${DOSSTART} ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBI386} vers.o
861.20Stron	${LD} -o ${BASE}.sym ${LDFLAGS} -Ttext 0x100 ${DOSSTART} ${OBJS} \
871.22Schristos	vers.o ${LIBLIST} >${BASE}.list
881.24Sdrochner	objcopy --output-target=binary ${BASE}.sym ${BASE}.com
891.9Sdrochner
901.9Sdrochner.include <bsd.prog.mk>
91