Makefile revision 1.14
11.14Stsutsui# $NetBSD: Makefile,v 1.14 2014/01/12 15:26:28 tsutsui 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.12Smatt.PATH:		${S}/dev/arcbios
161.12Smatt
171.12SmattSRCS=	start.S arcbios_calls.S
181.1StsutsuiSRCS+=	boot.c bootinfo.c conf.c devopen.c disk.c getchar.c getopt.c putchar.c
191.1Stsutsui
201.12Smatt.include "${S}/dev/arcbios/Makefile.inc"
211.12Smatt
221.1Stsutsui# XXX SHOULD NOT NEED TO DEFINE THESE!
231.1StsutsuiLIBCRT0=
241.14StsutsuiLIBCRTI=
251.1StsutsuiLIBC=
261.1StsutsuiLIBCRTBEGIN=
271.1StsutsuiLIBCRTEND=
281.1Stsutsui
291.13SmrgAFLAGS=    -x assembler-with-cpp -mno-abicalls -mips2 -mabi=32
301.1StsutsuiAFLAGS+=   -D_LOCORE -D_KERNEL
311.1StsutsuiCFLAGS=    -Os -mmemcpy -G 1024
321.12SmattCFLAGS+=   -ffreestanding -mno-abicalls -msoft-float -mips2 -mabi=32
331.1StsutsuiCFLAGS+=   -Werror -Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith
341.6StsutsuiCPPFLAGS+= -nostdinc -I. -I${S}
351.1StsutsuiCPPFLAGS+= -D_STANDALONE -DNO_ABICALLS -D${MACHINE}
361.1StsutsuiCPPFLAGS+= -DNETBSD_VERS='"${NETBSD_VERS}"'
371.1Stsutsui#CPPFLAGS+= -DBOOT_DEBUG
381.1StsutsuiLDSCRIPT=  ${S}/arch/mips/conf/stand.ldscript
391.1StsutsuiTEXTADDR=  0x80f00000
401.13SmrgLD+=		-m elf32ltsmip
411.1Stsutsui
421.1Stsutsui# if there is a 'version' file, add rule for vers.c and add it to SRCS
431.1Stsutsui# and CLEANFILES
441.1Stsutsui.if exists(version)
451.1Stsutsui.PHONY: vers.c
461.1Stsutsuivers.c: ${.CURDIR}/version
471.11Sjoerg	${HOST_SH} ${S}/conf/newvers_stand.sh ${${MKREPRO} == "yes" :?:-D} \
481.11Sjoerg	    ${.CURDIR}/version ${MACHINE}
491.1Stsutsui
501.1StsutsuiSRCS+=	vers.c
511.1StsutsuiCLEANFILES+= vers.c
521.1Stsutsui.endif
531.1Stsutsui
541.1Stsutsui### find out what to use for libsa
551.1StsutsuiSAMISCMAKEFLAGS= SA_USE_CREAD=yes SA_USE_LOADFILE=yes
561.1Stsutsui.include "${S}/lib/libsa/Makefile.inc"
571.1StsutsuiLIBSA=   ${SALIB}
581.1Stsutsui
591.1Stsutsui### find out what to use for libkern
601.1Stsutsui.include "${S}/lib/libkern/Makefile.inc"
611.1StsutsuiLIBKERN= ${KERNLIB}
621.1Stsutsui
631.1Stsutsui### find out what to use for libz
641.1Stsutsui.include "${S}/lib/libz/Makefile.inc"
651.1StsutsuiLIBZ=    ${ZLIB}
661.1Stsutsui
671.1StsutsuiLIBS=  ${LIBSA} ${LIBKERN} ${LIBZ}
681.1Stsutsui
691.9Sdhollandcleandir distclean: .WAIT cleanlibdir
701.1Stsutsuicleanlibdir:
711.1Stsutsui	-rm -rf lib
721.1Stsutsui
731.1Stsutsui${PROG}: ${OBJS} ${LIBS}
741.1Stsutsui	${LD} -Map ${PROG}.map -N -x -Ttext ${TEXTADDR} -T ${LDSCRIPT} \
751.1Stsutsui	    -e start -o ${PROG}.elf ${OBJS} ${LIBS}
761.1Stsutsui	@${SIZE} ${PROG}.elf
771.1Stsutsui	${OBJCOPY} --impure -O ecoff-littlemips \
781.1Stsutsui	    -R .pdr -R .mdebug.abi32 -R .comment -R .ident \
791.1Stsutsui	    ${PROG}.elf ${.TARGET}
801.1Stsutsui
811.1StsutsuiCLEANFILES+=	${PROG}.elf ${PROG}.map
821.1Stsutsui
831.7Stsutsui.include <bsd.klinks.mk>
841.1Stsutsui.include <bsd.prog.mk>
85