Makefile revision 1.13
11.13Schristos# $NetBSD: Makefile,v 1.13 2016/09/08 14:43:48 christos Exp $ 21.1Ssekiya 31.1SsekiyaPROG= ip30boot 41.9SjoergNOMAN= # defined 51.1Ssekiya 61.10SmattSRCS= start.S boot.c bootinfo.c conf.c devopen.c putchar.c getchar.c \ 71.10Smatt getopt.c disk.c arcbios_calls.S 81.10Smatt 91.1Ssekiya 101.1SsekiyaCLEANFILES+= boot.map 111.1Ssekiya 121.13Schristos.include <bsd.init.mk> 131.1Ssekiya 141.1Ssekiya# $S must correspond to the top of the 'sys' tree 151.1SsekiyaS= ${.CURDIR}/../../../.. 161.1Ssekiya 171.1SsekiyaBINMODE?= 444 181.1Ssekiya 191.1Ssekiyarealall: ${PROG} 201.1Ssekiya 211.1Ssekiya.PATH: ${.CURDIR}/../common 221.10Smatt.PATH.S: ${S}/dev/arcbios 231.1SsekiyaAFLAGS+= -D_LOCORE -D_KERNEL -mno-abicalls -mabi=64 -D_LP64 241.1SsekiyaCPPFLAGS+= -nostdinc -D_STANDALONE -DNO_ABICALLS -I${.OBJDIR} -I${S} 251.1Ssekiya# compiler flags for smallest code size 261.1SsekiyaCFLAGS= -ffreestanding -Os -Wall -Werror -mno-abicalls -msoft-float -G 1024 -mabi=64 -D_LP64 271.1SsekiyaLDBUG= -T $S/arch/mips/conf/stand.ldscript 281.1SsekiyaNETBSD_VERS!= ${HOST_SH} ${.CURDIR}/../../../../conf/osrelease.sh 291.1SsekiyaCPPFLAGS+= -DNETBSD_VERS='"${NETBSD_VERS}"' 301.1Ssekiya 311.1SsekiyaCPPFLAGS+= -Dsgimips 321.1Ssekiya 331.11SmattLDFLAGS+= -m elf64btsmip 341.11SmattLINKFORMAT+= -m elf64btsmip 351.10Smatt 361.10Smatt.include "${S}/dev/arcbios/Makefile.inc" 371.10Smatt 381.1Ssekiya# We load the kernel at 420K in from the start of RAM to give the boot 391.1Ssekiya# loader plenty of breathing room. Load the boot loader starting at 401.1Ssekiya# the second page of RAM. 411.1Ssekiya 421.1SsekiyaLOAD_ADDRESS_IP30?= 0xa800000020080000 431.1Ssekiya 441.1Ssekiya# if there is a 'version' file, add rule for vers.c and add it to SRCS 451.1Ssekiya# and CLEANFILES 461.1Ssekiya.if exists(version) 471.1Ssekiya.PHONY: vers.c 481.1Ssekiyavers.c: ${.CURDIR}/version 491.8Sjoerg ${HOST_SH} ${S}/conf/newvers_stand.sh ${${MKREPRO} == "yes" :?:-D} \ 501.8Sjoerg ${.CURDIR}/version "sgimips" 511.1Ssekiya 521.1SsekiyaSRCS+= vers.c 531.1SsekiyaCLEANFILES+= vers.c 541.1Ssekiya.endif 551.1Ssekiya 561.1Ssekiya### find out what to use for libkern 571.1SsekiyaKERN_AS= library 581.2SskrllKERNMISCMAKEFLAGS+= LD="${LD} -m elf64btsmip" RANLIB="true" 591.1Ssekiya.include "${S}/lib/libkern/Makefile.inc" 601.1SsekiyaLIBKERN= ${KERNLIB} 611.1Ssekiya 621.1Ssekiya### find out what to use for libz 631.1SsekiyaZ_AS= library 641.2SskrllZMISCMAKEFLAGS+= LD="${LD} -m elf64btsmip" RANLIB="true" 651.1Ssekiya.include "${S}/lib/libz/Makefile.inc" 661.1SsekiyaLIBZ= ${ZLIB} 671.1Ssekiya 681.1Ssekiya### find out what to use for libsa 691.1SsekiyaSA_AS= library 701.1SsekiyaSAMISCMAKEFLAGS+= SA_USE_LOADFILE=yes SA_USE_CREAD=yes \ 711.2Sskrll LD="${LD} -m elf64btsmip" RANLIB="true" 721.1Ssekiya.include "${S}/lib/libsa/Makefile.inc" 731.1SsekiyaLIBSA= ${SALIB} 741.1Ssekiya 751.1Ssekiya 761.1SsekiyaLIBS= ${LIBSA} ${LIBZ} ${LIBSA} ${LIBKERN} 771.1Ssekiya 781.1Ssekiyaip30boot: ${OBJS} ${LIBS} 791.10Smatt ${_MKTARGET_LINK} 801.2Sskrll ${LD} -m elf64btsmip -Map boot.map -x -Ttext ${LOAD_ADDRESS_IP30} \ 811.4Stsutsui ${LDBUG} -e start -o ${.TARGET} ${OBJS} ${LIBS} 821.10Smatt ${SIZE} ${.TARGET} 831.1Ssekiya 841.7Sdhollandcleandir distclean: .WAIT cleanlibdir 851.6Stsutsuicleanlibdir: 861.6Stsutsui -rm -rf lib 871.6Stsutsui 881.6Stsutsui.include <bsd.klinks.mk> 891.1Ssekiya.include <bsd.prog.mk> 90