Makefile revision 1.3
101e04c3fSmrg# $NetBSD: Makefile,v 1.3 2006/01/08 15:34:18 tsutsui Exp $ 201e04c3fSmrg 37117f1b4SmrgNOMAN = 47117f1b4Smrg 57117f1b4SmrgBINMODE = 444 67117f1b4Smrg 77117f1b4SmrgS = ${.CURDIR}/../../../.. 87117f1b4SmrgCOMMON = ${.CURDIR}/../common 97117f1b4Smrg 107117f1b4SmrgLIBSADIR = ${S}/lib/libsa 117117f1b4SmrgSYSVBFSDIR = ${S}/fs/sysvbfs 127117f1b4SmrgEWS4800MIPSDIR = ${.CURDIR}/../../ews4800mips 137117f1b4SmrgDEVDIR = ${.CURDIR}/../../dev 147117f1b4Smrg 157117f1b4Smrg.PATH: ${COMMON} ${LIBSADIR} ${SYSVBFSDIR} \ 167117f1b4Smrg ${EWS4800MIPSDIR} ${SBDDIR} ${DEVDIR} 177117f1b4Smrg 187117f1b4SmrgCOFFHDRFIX = ${.OBJDIR}/coffhdrfix 197117f1b4Smrg 20c1f859d4SmrgPROG = boot 21c1f859d4SmrgBOOT_KERNEL = boot_kernel 2201e04c3fSmrgFILES += ${PROG}.coff ${BOOT_KERNEL}.gz # XXX hack to install these 2301e04c3fSmrgSRCS = start.S boot.c prompt.c delay.c cmd.c loader.c 247ec681f3SmrgSRCS += bfs_subr.o disk.c diskutil.c 257ec681f3SmrgSRCS += devopen.c datafs.c bootfs.c ustarfs.c 267ec681f3SmrgSRCS += lance.c ether_if.c 277ec681f3SmrgSRCS += device_test.c cop0.c mem.c 287ec681f3SmrgSRCS += boot_device.c floppy_2d.c floppy_2hd_ibmpc.c 297ec681f3Smrg#SRCS += floppy_2hc.c 307ec681f3SmrgSRCS += console.c cons_rom.c cons_fb.c cons_zskbd.c cons_zs.c 317ec681f3SmrgBINKERNEL_C = ${COMMON}/binkernel.c 327ec681f3SmrgBINKERNEL_SIZE = '2 * 1024 * 1024' 337ec681f3SmrgBINKERNEL_O = binkernel.o 347ec681f3SmrgBINKERNEL_DUMMY_O= binkernel_dummy.o 357ec681f3Smrg 367ec681f3Smrg# ${S}/lib/libsa 377ec681f3SmrgSRCS += dev_net.c 387ec681f3Smrg# ${S}/fs/sysvbfs 397ec681f3SmrgSRCS += bfs.c 407ec681f3Smrg# ../../dev 417ec681f3SmrgSRCS += ga.c 427ec681f3Smrg# ../../ews4800mips 437ec681f3SmrgSRCS += pdinfo.c vtoc.c 447ec681f3Smrg 457ec681f3Smrg.PHONY: vers.c 467ec681f3Smrgvers.c: version 477ec681f3Smrg ${HOST_SH} ${S}/conf/newvers_stand.sh ${.CURDIR}/version ${MACHINE} 487ec681f3Smrg 497ec681f3SmrgSRCS+= vers.c 507ec681f3SmrgCLEANFILES+= vers.c 517ec681f3Smrg 527ec681f3SmrgTEXTADDR = 0xa0a00000 537ec681f3SmrgLDFLAGS = -T ${S}/arch/mips/conf/stand.ldscript -Ttext ${TEXTADDR} \ 547ec681f3Smrg -e start -N 557ec681f3SmrgCOFFLDFLAGS = -T ${COMMON}/coffboot.ldscript -N 567ec681f3Smrg 577ec681f3SmrgMIPSFLAGS = -mips1 -G 0 -mno-abicalls 587ec681f3SmrgDEBUGFLAGS = -Wall -Werror 597ec681f3SmrgDEBUGFLAGS += -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith 607ec681f3SmrgDEBUGFLAGS += -Wno-format-zero-length -Wno-sign-compare 617ec681f3SmrgOPTFLAGS = -Os -mmemcpy 627ec681f3SmrgFLAGS = ${MIPSFLAGS} ${DEBUGFLAGS} ${OPTFLAGS} 637ec681f3SmrgAFLAGS = -xassembler-with-cpp -D_LOCORE ${FLAGS} 647ec681f3SmrgCFLAGS = ${FLAGS} -ffreestanding 657ec681f3Smrg 667ec681f3SmrgCPPFLAGS += -D_STANDALONE -DSUPPORT_BOOTP 677ec681f3SmrgCPPFLAGS += -nostdinc -I${.OBJDIR} -I${.CURDIR} -I${COMMON} -I${S} 687ec681f3SmrgCPPFLAGS += -D__daddr_t=int32_t 697ec681f3Smrg#CPPFLAGS += -DBOOTP_DEBUG -DNETIF_DEBUG -DETHER_DEBUG -DNFS_DEBUG 707ec681f3Smrg#CPPFLAGS += -DRPC_DEBUG -DRARP_DEBUG -DNET_DEBUG -DDEBUG -DPARANOID 717ec681f3Smrg 727ec681f3SmrgCLEANFILES += ${BINKERNEL_DUMMY_O} ${BINKERNEL_O} 737ec681f3SmrgCLEANFILES += ${PROG} ${PROG}.elf ${PROG}.coff ${PROG}.tmp ${PROG}.dis 747ec681f3SmrgCLEANFILES += ${COFFHDRFIX} 757ec681f3SmrgCLEANFILES += ${BOOT_KERNEL} ${BOOT_KERNEL}.elf ${BOOT_KERNEL}.tmp 767ec681f3SmrgCLEANFILES += ${BOOT_KERNEL}.gz ${BOOT_KERNEL}.gz.tmp 777ec681f3SmrgCLEANFILES += machine mips 787ec681f3Smrg 797ec681f3Smrg.include "${S}/lib/libkern/Makefile.inc" 807ec681f3SmrgLIBKERN= ${KERNLIB} 817ec681f3Smrg 827ec681f3Smrg.include "${S}/lib/libz/Makefile.inc" 837ec681f3SmrgLIBZ= ${ZLIB} 847ec681f3Smrg 857ec681f3SmrgSAMISCMAKEFLAGS= SA_USE_CREAD=yes SA_USE_LOADFILE=yes 867ec681f3Smrg.include "${S}/lib/libsa/Makefile.inc" 877ec681f3SmrgLIBSA= ${SALIB} 887ec681f3Smrg 897ec681f3SmrgLIBS = ${LIBSA} ${LIBZ} ${LIBKERN} 907ec681f3Smrg 917ec681f3Smrg# fixup GNU binutils file offset error. 927ec681f3Smrgcoffhdrfix: ${COMMON}/coffhdrfix.c 937ec681f3Smrg ${HOST_CC} -o ${COFFHDRFIX} ${COMMON}/coffhdrfix.c 947ec681f3Smrg 957ec681f3Smrg.if !make(obj) && !make(clean) && !make(cleandir) 967ec681f3Smrg.BEGIN: 977ec681f3Smrg @[ -h machine ] || ln -s $S/arch/${MACHINE}/include machine 987ec681f3Smrg @[ -h mips ] || ln -s $S/arch/mips/include mips 997ec681f3Smrg.NOPATH: machine mips 1007ec681f3Smrg.endif 1017ec681f3Smrg 1027ec681f3Smrgclean cleandir distclean: cleanlibdir 1037ec681f3Smrg 1047ec681f3Smrgcleanlibdir: 1057ec681f3Smrg -rm -rf lib 1067ec681f3Smrg 1077ec681f3Smrg${BINKERNEL_DUMMY_O}: ${BINKERNEL_C} 1087ec681f3Smrg ${COMPILE.c} -DKERNEL_SIZE=0 ${BINKERNEL_C} -o ${.TARGET} 1097ec681f3Smrg 1107ec681f3Smrg${BINKERNEL_O}: ${BINKERNEL_C} 1117ec681f3Smrg ${COMPILE.c} -DKERNEL_SIZE=${BINKERNEL_SIZE} ${BINKERNEL_C} \ 1127ec681f3Smrg -o ${.TARGET} 1137ec681f3Smrg 1147ec681f3Smrgall realall: ${PROG}.coff ${BOOT_KERNEL}.gz 1157ec681f3Smrg 1167ec681f3Smrg${PROG}: ${BINKERNEL_DUMMY_O} ${OBJS} ${LIBS} 1177ec681f3Smrg ${LD} ${LDFLAGS} -S -o ${PROG}.elf ${OBJS} ${LIBS} ${BINKERNEL_DUMMY_O} 1187ec681f3Smrg ${OBJDUMP} -h ${PROG}.elf 1197ec681f3Smrg# ${OBJDUMP} -m mips:4000 -d ${PROG}.elf > ${PROG}.dis 1207ec681f3Smrg mv ${PROG}.elf ${PROG} 1217ec681f3Smrg ls -al ${PROG} 1227ec681f3Smrg 1237ec681f3Smrg.include <bsd.prog.mk> 1247ec681f3Smrg 1257ec681f3Smrg${PROG}.coff: ${PROG} 1267ec681f3Smrg ${ELF2ECOFF} ${PROG} ${.TARGET}.tmp 1277ec681f3Smrg mv ${.TARGET}.tmp ${.TARGET} 1287ec681f3Smrg 1297ec681f3Smrg${BOOT_KERNEL}.gz: ${BINKERNEL_O} ${OBJS} ${LIBS} 1307ec681f3Smrg ${LD} ${LDFLAGS} -o ${BOOT_KERNEL}.elf ${OBJS} ${LIBS} \ 1317ec681f3Smrg ${BINKERNEL_O} 1327ec681f3Smrg mv ${BOOT_KERNEL}.elf ${BOOT_KERNEL} 1337ec681f3Smrg ${OBJDUMP} -h ${BOOT_KERNEL} 1347ec681f3Smrg gzip -9c ${BOOT_KERNEL} > ${.TARGET}.tmp 1357ec681f3Smrg mv ${.TARGET}.tmp ${.TARGET} 1367ec681f3Smrg ls -al ${.TARGET} 1377ec681f3Smrg