Makefile revision 1.9
11.9Sdholland# $NetBSD: Makefile,v 1.9 2010/05/27 06:58:12 dholland Exp $
21.1Stsutsui
31.1Stsutsui.include <bsd.own.mk>
41.1Stsutsui.include <bsd.sys.mk>	# for ${HOST_SH}
51.1Stsutsui
61.1StsutsuiS!= cd ${.CURDIR}/../../../..; pwd
71.1Stsutsui
81.1StsutsuiPROG= boot
91.1StsutsuiMKMAN= no		# defined
101.1StsutsuiSTRIPFLAG=
111.1StsutsuiBINMODE= 444
121.1Stsutsui
131.1StsutsuiNETBSD_VERS!=	${HOST_SH} ${S}/conf/osrelease.sh
141.1Stsutsui
151.1StsutsuiSRCS=	start.S
161.1StsutsuiSRCS+=	boot.c bootinfo.c conf.c devopen.c disk.c getchar.c getopt.c putchar.c
171.1Stsutsui
181.1Stsutsui# XXX SHOULD NOT NEED TO DEFINE THESE!
191.1StsutsuiLIBCRT0=
201.1StsutsuiLIBC=
211.1StsutsuiLIBCRTBEGIN=
221.1StsutsuiLIBCRTEND=
231.1Stsutsui
241.1StsutsuiAFLAGS=    -x assembler-with-cpp -traditional-cpp -mno-abicalls -mips2
251.1StsutsuiAFLAGS+=   -D_LOCORE -D_KERNEL
261.1StsutsuiCFLAGS=    -Os -mmemcpy -G 1024
271.1StsutsuiCFLAGS+=   -ffreestanding -mno-abicalls -msoft-float -mips2
281.1StsutsuiCFLAGS+=   -Werror -Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith
291.6StsutsuiCPPFLAGS+= -nostdinc -I. -I${S}
301.1StsutsuiCPPFLAGS+= -D_STANDALONE -DNO_ABICALLS -D${MACHINE}
311.1StsutsuiCPPFLAGS+= -DNETBSD_VERS='"${NETBSD_VERS}"'
321.1Stsutsui#CPPFLAGS+= -DBOOT_DEBUG
331.1StsutsuiLDSCRIPT=  ${S}/arch/mips/conf/stand.ldscript
341.1StsutsuiTEXTADDR=  0x80f00000
351.1Stsutsui
361.1Stsutsui# if there is a 'version' file, add rule for vers.c and add it to SRCS
371.1Stsutsui# and CLEANFILES
381.1Stsutsui.if exists(version)
391.1Stsutsui.PHONY: vers.c
401.1Stsutsuivers.c: ${.CURDIR}/version
411.1Stsutsui	${HOST_SH} ${S}/conf/newvers_stand.sh ${.CURDIR}/version ${MACHINE}
421.1Stsutsui
431.1StsutsuiSRCS+=	vers.c
441.1StsutsuiCLEANFILES+= vers.c
451.1Stsutsui.endif
461.1Stsutsui
471.1Stsutsui### find out what to use for libsa
481.1StsutsuiSAMISCMAKEFLAGS= SA_USE_CREAD=yes SA_USE_LOADFILE=yes
491.1Stsutsui.include "${S}/lib/libsa/Makefile.inc"
501.1StsutsuiLIBSA=   ${SALIB}
511.1Stsutsui
521.1Stsutsui### find out what to use for libkern
531.1Stsutsui.include "${S}/lib/libkern/Makefile.inc"
541.1StsutsuiLIBKERN= ${KERNLIB}
551.1Stsutsui
561.1Stsutsui### find out what to use for libz
571.1Stsutsui.include "${S}/lib/libz/Makefile.inc"
581.1StsutsuiLIBZ=    ${ZLIB}
591.1Stsutsui
601.1StsutsuiLIBS=  ${LIBSA} ${LIBKERN} ${LIBZ}
611.1Stsutsui
621.9Sdhollandcleandir distclean: .WAIT cleanlibdir
631.1Stsutsuicleanlibdir:
641.1Stsutsui	-rm -rf lib
651.1Stsutsui
661.1Stsutsui${PROG}: ${OBJS} ${LIBS}
671.1Stsutsui	${LD} -Map ${PROG}.map -N -x -Ttext ${TEXTADDR} -T ${LDSCRIPT} \
681.1Stsutsui	    -e start -o ${PROG}.elf ${OBJS} ${LIBS}
691.1Stsutsui	@${SIZE} ${PROG}.elf
701.1Stsutsui	${OBJCOPY} --impure -O ecoff-littlemips \
711.1Stsutsui	    -R .pdr -R .mdebug.abi32 -R .comment -R .ident \
721.1Stsutsui	    ${PROG}.elf ${.TARGET}
731.1Stsutsui
741.1StsutsuiCLEANFILES+=	${PROG}.elf ${PROG}.map
751.1Stsutsui
761.7Stsutsui.include <bsd.klinks.mk>
771.1Stsutsui.include <bsd.prog.mk>
78