Makefile revision 1.4
11.4Stsutsui# $NetBSD: Makefile,v 1.4 2008/02/23 05:43:27 tsutsui 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.1Ssekiya.include <bsd.sys.mk> # for HOST_SH 111.1Ssekiya 121.1Ssekiya# $S must correspond to the top of the 'sys' tree 131.1SsekiyaS= ${.CURDIR}/../../../.. 141.1Ssekiya 151.1SsekiyaBINMODE?= 444 161.1Ssekiya 171.1Ssekiyarealall: ${PROG} 181.1Ssekiya 191.1Ssekiya.PATH: ${.CURDIR}/../common 201.1SsekiyaAFLAGS+= -D_LOCORE -D_KERNEL -mno-abicalls -mabi=64 -D_LP64 211.1SsekiyaCPPFLAGS+= -nostdinc -D_STANDALONE -DNO_ABICALLS -I${.OBJDIR} -I${S} 221.1Ssekiya# compiler flags for smallest code size 231.1SsekiyaCFLAGS= -ffreestanding -Os -Wall -Werror -mno-abicalls -msoft-float -G 1024 -mabi=64 -D_LP64 241.1SsekiyaLDBUG= -T $S/arch/mips/conf/stand.ldscript 251.1SsekiyaNETBSD_VERS!= ${HOST_SH} ${.CURDIR}/../../../../conf/osrelease.sh 261.1SsekiyaCPPFLAGS+= -DNETBSD_VERS='"${NETBSD_VERS}"' 271.1Ssekiya 281.1SsekiyaCPPFLAGS+= -Dsgimips 291.1Ssekiya 301.1Ssekiya# PROG set by parent. 311.1SsekiyaNOMAN= # defined 321.1Ssekiya 331.1Ssekiya# We load the kernel at 420K in from the start of RAM to give the boot 341.1Ssekiya# loader plenty of breathing room. Load the boot loader starting at 351.1Ssekiya# the second page of RAM. 361.1Ssekiya 371.1SsekiyaLOAD_ADDRESS_IP30?= 0xa800000020080000 381.1Ssekiya 391.1Ssekiya# if there is a 'version' file, add rule for vers.c and add it to SRCS 401.1Ssekiya# and CLEANFILES 411.1Ssekiya.if exists(version) 421.1Ssekiya.PHONY: vers.c 431.1Ssekiyavers.c: ${.CURDIR}/version 441.1Ssekiya ${HOST_SH} ${S}/conf/newvers_stand.sh -N ${.CURDIR}/version "sgimips" 451.1Ssekiya 461.1SsekiyaSRCS+= vers.c 471.1SsekiyaCLEANFILES+= vers.c 481.1Ssekiya.endif 491.1Ssekiya 501.1Ssekiya### find out what to use for libkern 511.1SsekiyaKERN_AS= library 521.2SskrllKERNMISCMAKEFLAGS+= LD="${LD} -m elf64btsmip" RANLIB="true" 531.1Ssekiya.include "${S}/lib/libkern/Makefile.inc" 541.1SsekiyaLIBKERN= ${KERNLIB} 551.1Ssekiya 561.1Ssekiya### find out what to use for libz 571.1SsekiyaZ_AS= library 581.2SskrllZMISCMAKEFLAGS+= LD="${LD} -m elf64btsmip" RANLIB="true" 591.1Ssekiya.include "${S}/lib/libz/Makefile.inc" 601.1SsekiyaLIBZ= ${ZLIB} 611.1Ssekiya 621.1Ssekiya### find out what to use for libsa 631.1SsekiyaSA_AS= library 641.1SsekiyaSAMISCMAKEFLAGS+= SA_USE_LOADFILE=yes SA_USE_CREAD=yes \ 651.2Sskrll LD="${LD} -m elf64btsmip" RANLIB="true" 661.1Ssekiya.include "${S}/lib/libsa/Makefile.inc" 671.1SsekiyaLIBSA= ${SALIB} 681.1Ssekiya 691.1Ssekiya.if !make(obj) && !make(clean) && !make(cleandir) 701.1Ssekiya.BEGIN: 711.1Ssekiya @([ -h machine ] || ln -s ${S}/arch/${MACHINE}/include machine) 721.1Ssekiya @([ -h mips ] || ln -s ${S}/arch/mips/include mips) 731.1Ssekiya.NOPATH: machine mips 741.1Ssekiya.endif 751.1SsekiyaCLEANFILES+= machine mips 761.1Ssekiya 771.1Ssekiya 781.1SsekiyaLIBS= ${LIBSA} ${LIBZ} ${LIBSA} ${LIBKERN} 791.1Ssekiya 801.1Ssekiyaip30boot: ${OBJS} ${LIBS} 811.2Sskrll ${LD} -m elf64btsmip -Map boot.map -x -Ttext ${LOAD_ADDRESS_IP30} \ 821.4Stsutsui ${LDBUG} -e start -o ${.TARGET} ${OBJS} ${LIBS} 831.1Ssekiya 841.1Ssekiya.include <bsd.prog.mk> 85