Makefile.booters revision 1.28
11.28Stv#	$NetBSD: Makefile.booters,v 1.28 2001/09/22 03:34:19 tv 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.26SjdolecekCLEANFILES+= vers.c ${BASE}.list
211.26SjdolecekSRCS+=	vers.c
221.7Sthorpej
231.25Smycroft.BEGIN: machine
241.25Smycroft.NOPATH: machine
251.25Smycroftrealdepend realall: machine
261.25SmycroftCLEANFILES+= machine
271.6Sdrochner
281.25Smycroftmachine::
291.10Shubertf	-rm -f $@
301.6Sdrochner	ln -s $S/arch/i386/include $@
311.23Sdrochner
321.25Smycroft${OBJS} ${BSSTART} ${ROMSTART} ${DOSSTART}: machine
331.6Sdrochner
341.1Sperry### find out what to use for libkern
351.1SperryKERN_AS=	library
361.1Sperry.include "${S}/lib/libkern/Makefile.inc"
371.1SperryLIBKERN=	${KERNLIB}
381.1Sperry
391.1Sperry### find out what to use for libz
401.1SperryZ_AS=		library
411.1Sperry.include "${S}/lib/libz/Makefile.inc"
421.1SperryLIBZ=		${ZLIB}
431.1Sperry
441.1Sperry### find out what to use for libsa
451.1SperrySA_AS=		library
461.22SchristosSAMISCMAKEFLAGS+="SA_USE_LOADFILE=yes"
471.1Sperry.include "${S}/lib/libsa/Makefile.inc"
481.1SperryLIBSA=		${SALIB}
491.1Sperry
501.1Sperry### find out what to use for libi386
511.8SdrochnerI386DIR= ${I386_STAND_DIR}/lib
521.1Sperry.include "${I386DIR}/Makefile.inc"
531.1SperryLIBI386=		${I386LIB}
541.17Stron
551.27Senami.include <bsd.own.mk>
561.27Senami
571.18Stroncleandir distclean: cleanlibdir
581.17Stron
591.17Stroncleanlibdir:
601.17Stron	rm -rf lib
611.16Schristos
621.16Schristos.if ${OBJECT_FMT} == "ELF"
631.16SchristosLDFLAGS=-M -e start 	# -N does not work properly.
641.16Schristos.else
651.16SchristosLDFLAGS=-N -M -e _start 
661.16Schristos.endif
671.16Schristos
681.22SchristosLIBLIST=${LIBI386} ${LIBSA} ${LIBZ} ${LIBSA} ${LIBKERN} ${LIBI386} ${LIBSA}
691.22Schristos
701.26Sjdolecek.PHONY: vers.c
711.26Sjdolecekvers.c: ${VERSIONFILE}
721.26Sjdolecek	sh ${S}conf/newvers_stand.sh ${.ALLSRC} 'i386' ${NEWVERSWHAT}
731.7Sthorpej
741.26Sjdolecek${BASE}.sym: ${BSSTART} ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBI386}
751.20Stron	${LD} -o ${BASE}.sym ${LDFLAGS} -Ttext 0 ${BSSTART} ${OBJS} \
761.26Sjdolecek	${LIBLIST} >${BASE}.list
771.9Sdrochner
781.26Sjdolecek${BASE}.rom: ${GENPROM} ${ROMSTART} ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBI386}
791.20Stron	${LD} -o ${BASE}.sym ${LDFLAGS} -Ttext ${RELOC} ${ROMSTART} ${OBJS} \
801.26Sjdolecek	${LIBLIST} >${BASE}.list
811.28Stv	${OBJCOPY} --output-target=binary ${BASE}.sym ${BASE}.bin
821.9Sdrochner	(cd ${GENPROMDIR}; ${MAKE} rom BINFILE=${.OBJDIR:Q}/${BASE:Q}.bin \
831.9Sdrochner		ROMFILE=${.OBJDIR:Q}/${BASE:Q}.rom ROM_SIZE=${ROM_SIZE:Q})
841.9Sdrochner	rm -f ${BASE}.bin
851.9Sdrochner
861.26Sjdolecek${BASE}.com: ${DOSSTART} ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBI386}
871.20Stron	${LD} -o ${BASE}.sym ${LDFLAGS} -Ttext 0x100 ${DOSSTART} ${OBJS} \
881.26Sjdolecek	${LIBLIST} >${BASE}.list
891.28Stv	${OBJCOPY} --output-target=binary ${BASE}.sym ${BASE}.com
901.9Sdrochner
911.9Sdrochner.include <bsd.prog.mk>
92