Makefile revision 1.8
11.8Sjmc# $NetBSD: Makefile,v 1.8 2004/06/21 18:20:08 jmc Exp $ 21.3Slukem 31.4StsutsuiNOMAN= # defined 41.4Stsutsui 51.4Stsutsui.include <bsd.own.mk> 61.3Slukem.include <bsd.sys.mk> # for HOST_SH 71.1Scdi 81.1ScdiS= ${.CURDIR}/../../../.. 91.1ScdiMIPS= ${S}/arch/mips 101.1ScdiCOBALT= ${S}/arch/cobalt 111.1Scdi 121.1Scdi# .PATH: ${.CURDIR}/../common 131.1Scdi 141.1ScdiBINMODE?= 444 151.2Ssimonb 161.2Ssimonb# XXX SHOULD NOT NEED TO DEFINE THESE! 171.2SsimonbLIBCRT0= 181.2SsimonbLIBC= 191.2SsimonbLIBCRTBEGIN= 201.2SsimonbLIBCRTEND= 211.1Scdi 221.1Scdi.PHONY: machine-links 231.1Scdibeforedepend: machine-links 241.1Scdi 251.1Scdimachine-links: machine cobalt mips 261.1Scdimachine cobalt: 271.1Scdi -rm -f ${.TARGET} 281.1Scdi ln -s ${COBALT}/include ${.TARGET} 291.1Scdi 301.1Scdimips: 311.1Scdi -rm -f ${.TARGET} 321.1Scdi ln -s ${MIPS}/include ${.TARGET} 331.1Scdi 341.1ScdiCLEANFILES+= machine cobalt mips 351.1Scdi 361.1Scdirealall: machine-links ${PROG} 371.1Scdi 381.6Scdi# Load @15Mb boundary as most (all?) of the Cobalt boxes 391.6Scdi# had been shipped with at least 16Mb. 401.6Scdi# 411.6Scdi# XXX The proper fix is to load at the kernel base address 421.6Scdi# and to relocate itself at the end of available memory. 431.6ScdiLOAD_ADDRESS?=0x80F00000 441.1Scdi 451.1ScdiCOMPORT?=0x0 461.1ScdiCOMBASE?=0xbc800000 471.1ScdiCOMSPEED?=115200 481.1ScdiCOMPROBE?=0xa020001c 491.1Scdi 501.1ScdiAFLAGS+= -D_LOCORE -D_KERNEL -DASSEMBLER -mno-abicalls 511.1Scdi 521.1Scdi# -I${.CURDIR}/../.. done by Makefile.inc 531.1ScdiCPPFLAGS+= -nostdinc -D_STANDALONE -DNO_ABICALLS -D_NO_PROM_DEFINES 541.1Scdi# CPPFLAGS+= -D_DEBUG 551.1ScdiCPPFLAGS+= -I${.OBJDIR} -I${S} -I${S}/lib/libsa 561.1ScdiCPPFLAGS+= -DCONS_SERIAL -DCOMBASE=${COMBASE} -DCOMPORT=${COMPORT} 571.1ScdiCPPFLAGS+= -DCOMSPEED=${COMSPEED} -DCOMPROBE=${COMPROBE} 581.1Scdi 591.1Scdi# compiler flags for smallest code size 601.1ScdiCFLAGS= -Os -mmemcpy -ffreestanding -mno-abicalls -msoft-float -G 128 611.1ScdiOFORMAT= --oformat elf32-littlemips 621.1Scdi 631.3SlukemNETBSD_VERS!= ${HOST_SH} ${S}/conf/osrelease.sh 641.1ScdiCPPFLAGS+= -DNETBSD_VERS='"${NETBSD_VERS}"' 651.1Scdi 661.1ScdiLDSCRIPT?= ${MIPS}/conf/stand.ldscript 671.1Scdi 681.1ScdiPROG= boot 691.1Scdi# common sources 701.5ScdiSRCS+= start.S boot.c devopen.c conf.c clock.c bootinfo.c 711.7StsutsuiSRCS+= prf.c com.c cons.c ns16550.c pciide.c tgets.c wdc.c wd.c 721.1Scdi 731.1ScdiSRCS+= vers.c 741.1ScdiCLEANFILES+= vers.c 751.1Scdi 761.1Scdi### find out what to use for libkern 771.1ScdiKERN_AS= library 781.1Scdi.include "${S}/lib/libkern/Makefile.inc" 791.1Scdi 801.1Scdi### find out what to use for libz 811.1ScdiZ_AS= library 821.1Scdi.include "${S}/lib/libz/Makefile.inc" 831.1Scdi 841.1Scdi### find out what to use for libsa 851.1ScdiSA_AS= library 861.1ScdiSAMISCMAKEFLAGS+=SA_USE_LOADFILE=yes SA_USE_CREAD=yes 871.1Scdi.include "${S}/lib/libsa/Makefile.inc" 881.1Scdi 891.4StsutsuiLIBS= ${KERNLIB} ${SALIB} ${ZLIB} 901.1Scdi 911.1Scdi.PHONY: vers.c 921.1Scdivers.c: ${.CURDIR}/version 931.3Slukem ${HOST_SH} ${S}/conf/newvers_stand.sh ${.CURDIR}/version "cobalt" 941.1Scdi 951.1Scdi${PROG}: machine-links ${LDSCRIPT} ${OBJS} ${LIBS} 961.1Scdi ${LD} ${OFORMAT} -Map ${PROG}.map -N -x -Ttext ${LOAD_ADDRESS} \ 971.1Scdi -T ${LDSCRIPT} -e start -o ${PROG} ${OBJS} ${LIBS} 981.1Scdi gzip -c9 ${PROG} > ${PROG}.gz 991.1Scdi @${SIZE} ${PROG} 1001.1Scdi 1011.1ScdiCLEANFILES+= ${PROG}.map ${PROG}.elf ${PROG}.gz 1021.1Scdi 1031.1Scdicleandir distclean: cleanlibdir 1041.1Scdi 1051.1Scdicleanlibdir: 1061.8Sjmc -rm -rf lib 1071.1Scdi 1081.1Scdi.include <bsd.prog.mk> 109