Makefile revision 1.8
11.8Sjoerg#	$NetBSD: Makefile,v 1.8 2011/01/22 19:19:23 joerg Exp $
21.1Ssekiya
31.1SsekiyaPROG=	ip30boot
41.1Ssekiya
51.1SsekiyaSRCS=	start64.S boot.c bootinfo.c conf.c devopen.c putchar.c getchar.c \
61.1Ssekiya	getopt.c disk.c
71.1Ssekiya
81.1SsekiyaCLEANFILES+=	boot.map
91.1Ssekiya
101.8Sjoerg.include <bsd.own.mk>
111.1Ssekiya.include <bsd.sys.mk>		# for HOST_SH
121.1Ssekiya
131.1Ssekiya# $S must correspond to the top of the 'sys' tree
141.1SsekiyaS=	${.CURDIR}/../../../..
151.1Ssekiya
161.1SsekiyaBINMODE?=	444
171.1Ssekiya
181.1Ssekiyarealall: ${PROG}
191.1Ssekiya
201.1Ssekiya.PATH:		${.CURDIR}/../common
211.1SsekiyaAFLAGS+=	-D_LOCORE -D_KERNEL -mno-abicalls -mabi=64 -D_LP64
221.1SsekiyaCPPFLAGS+=	-nostdinc -D_STANDALONE -DNO_ABICALLS -I${.OBJDIR} -I${S}
231.1Ssekiya# compiler flags for smallest code size
241.1SsekiyaCFLAGS=		-ffreestanding -Os -Wall -Werror -mno-abicalls -msoft-float -G 1024 -mabi=64 -D_LP64
251.1SsekiyaLDBUG=		-T $S/arch/mips/conf/stand.ldscript
261.1SsekiyaNETBSD_VERS!=	${HOST_SH} ${.CURDIR}/../../../../conf/osrelease.sh
271.1SsekiyaCPPFLAGS+=	-DNETBSD_VERS='"${NETBSD_VERS}"'
281.1Ssekiya
291.1SsekiyaCPPFLAGS+=	-Dsgimips
301.1Ssekiya
311.1Ssekiya# PROG set by parent.
321.1SsekiyaNOMAN=		# defined
331.1Ssekiya
341.1Ssekiya# We load the kernel at 420K in from the start of RAM to give the boot
351.1Ssekiya# loader plenty of breathing room.  Load the boot loader starting at
361.1Ssekiya# the second page of RAM.
371.1Ssekiya
381.1SsekiyaLOAD_ADDRESS_IP30?=	0xa800000020080000
391.1Ssekiya
401.1Ssekiya# if there is a 'version' file, add rule for vers.c and add it to SRCS
411.1Ssekiya# and CLEANFILES
421.1Ssekiya.if exists(version)
431.1Ssekiya.PHONY: vers.c
441.1Ssekiyavers.c: ${.CURDIR}/version
451.8Sjoerg	${HOST_SH} ${S}/conf/newvers_stand.sh ${${MKREPRO} == "yes" :?:-D} \
461.8Sjoerg	    ${.CURDIR}/version "sgimips"
471.1Ssekiya
481.1SsekiyaSRCS+=	vers.c
491.1SsekiyaCLEANFILES+= vers.c
501.1Ssekiya.endif
511.1Ssekiya
521.1Ssekiya### find out what to use for libkern
531.1SsekiyaKERN_AS=	library
541.2SskrllKERNMISCMAKEFLAGS+=	LD="${LD} -m elf64btsmip" RANLIB="true"
551.1Ssekiya.include "${S}/lib/libkern/Makefile.inc"
561.1SsekiyaLIBKERN=	${KERNLIB}
571.1Ssekiya
581.1Ssekiya### find out what to use for libz
591.1SsekiyaZ_AS=		library
601.2SskrllZMISCMAKEFLAGS+=	LD="${LD} -m elf64btsmip" RANLIB="true"
611.1Ssekiya.include "${S}/lib/libz/Makefile.inc"
621.1SsekiyaLIBZ=		${ZLIB}
631.1Ssekiya
641.1Ssekiya### find out what to use for libsa
651.1SsekiyaSA_AS=		library
661.1SsekiyaSAMISCMAKEFLAGS+=	SA_USE_LOADFILE=yes SA_USE_CREAD=yes \
671.2Sskrll			LD="${LD} -m elf64btsmip" RANLIB="true"
681.1Ssekiya.include "${S}/lib/libsa/Makefile.inc"
691.1SsekiyaLIBSA=		${SALIB}
701.1Ssekiya
711.1Ssekiya
721.1SsekiyaLIBS=		${LIBSA} ${LIBZ} ${LIBSA} ${LIBKERN}
731.1Ssekiya
741.1Ssekiyaip30boot: ${OBJS} ${LIBS}
751.2Sskrll	${LD} -m elf64btsmip -Map boot.map -x -Ttext ${LOAD_ADDRESS_IP30} \
761.4Stsutsui		${LDBUG} -e start -o ${.TARGET} ${OBJS} ${LIBS}
771.1Ssekiya
781.7Sdhollandcleandir distclean: .WAIT cleanlibdir
791.6Stsutsuicleanlibdir:
801.6Stsutsui	-rm -rf lib
811.6Stsutsui
821.6Stsutsui.include <bsd.klinks.mk>
831.1Ssekiya.include <bsd.prog.mk>
84