11.15Srin# $NetBSD: Makefile,v 1.15 2024/06/29 08:06:56 rin 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.15Srin 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### find out what to use for libkern 451.1SsekiyaKERN_AS= library 461.2SskrllKERNMISCMAKEFLAGS+= LD="${LD} -m elf64btsmip" RANLIB="true" 471.1Ssekiya.include "${S}/lib/libkern/Makefile.inc" 481.1SsekiyaLIBKERN= ${KERNLIB} 491.1Ssekiya 501.1Ssekiya### find out what to use for libz 511.1SsekiyaZ_AS= library 521.2SskrllZMISCMAKEFLAGS+= LD="${LD} -m elf64btsmip" RANLIB="true" 531.1Ssekiya.include "${S}/lib/libz/Makefile.inc" 541.1SsekiyaLIBZ= ${ZLIB} 551.1Ssekiya 561.1Ssekiya### find out what to use for libsa 571.1SsekiyaSA_AS= library 581.1SsekiyaSAMISCMAKEFLAGS+= SA_USE_LOADFILE=yes SA_USE_CREAD=yes \ 591.2Sskrll LD="${LD} -m elf64btsmip" RANLIB="true" 601.1Ssekiya.include "${S}/lib/libsa/Makefile.inc" 611.1SsekiyaLIBSA= ${SALIB} 621.1Ssekiya 631.1Ssekiya 641.1SsekiyaLIBS= ${LIBSA} ${LIBZ} ${LIBSA} ${LIBKERN} 651.1Ssekiya 661.1Ssekiyaip30boot: ${OBJS} ${LIBS} 671.10Smatt ${_MKTARGET_LINK} 681.2Sskrll ${LD} -m elf64btsmip -Map boot.map -x -Ttext ${LOAD_ADDRESS_IP30} \ 691.4Stsutsui ${LDBUG} -e start -o ${.TARGET} ${OBJS} ${LIBS} 701.10Smatt ${SIZE} ${.TARGET} 711.1Ssekiya 721.7Sdhollandcleandir distclean: .WAIT cleanlibdir 731.6Stsutsuicleanlibdir: 741.6Stsutsui -rm -rf lib 751.6Stsutsui 761.14Schristos.include "${S}/conf/newvers_stand.mk" 771.14Schristos 781.6Stsutsui.include <bsd.klinks.mk> 791.1Ssekiya.include <bsd.prog.mk> 80