Makefile revision 1.3
1# $NetBSD: Makefile,v 1.3 2006/01/08 15:34:18 tsutsui Exp $ 2 3NOMAN = 4 5BINMODE = 444 6 7S = ${.CURDIR}/../../../.. 8COMMON = ${.CURDIR}/../common 9 10LIBSADIR = ${S}/lib/libsa 11SYSVBFSDIR = ${S}/fs/sysvbfs 12EWS4800MIPSDIR = ${.CURDIR}/../../ews4800mips 13DEVDIR = ${.CURDIR}/../../dev 14 15.PATH: ${COMMON} ${LIBSADIR} ${SYSVBFSDIR} \ 16 ${EWS4800MIPSDIR} ${SBDDIR} ${DEVDIR} 17 18COFFHDRFIX = ${.OBJDIR}/coffhdrfix 19 20PROG = boot 21BOOT_KERNEL = boot_kernel 22FILES += ${PROG}.coff ${BOOT_KERNEL}.gz # XXX hack to install these 23SRCS = start.S boot.c prompt.c delay.c cmd.c loader.c 24SRCS += bfs_subr.o disk.c diskutil.c 25SRCS += devopen.c datafs.c bootfs.c ustarfs.c 26SRCS += lance.c ether_if.c 27SRCS += device_test.c cop0.c mem.c 28SRCS += boot_device.c floppy_2d.c floppy_2hd_ibmpc.c 29#SRCS += floppy_2hc.c 30SRCS += console.c cons_rom.c cons_fb.c cons_zskbd.c cons_zs.c 31BINKERNEL_C = ${COMMON}/binkernel.c 32BINKERNEL_SIZE = '2 * 1024 * 1024' 33BINKERNEL_O = binkernel.o 34BINKERNEL_DUMMY_O= binkernel_dummy.o 35 36# ${S}/lib/libsa 37SRCS += dev_net.c 38# ${S}/fs/sysvbfs 39SRCS += bfs.c 40# ../../dev 41SRCS += ga.c 42# ../../ews4800mips 43SRCS += pdinfo.c vtoc.c 44 45.PHONY: vers.c 46vers.c: version 47 ${HOST_SH} ${S}/conf/newvers_stand.sh ${.CURDIR}/version ${MACHINE} 48 49SRCS+= vers.c 50CLEANFILES+= vers.c 51 52TEXTADDR = 0xa0a00000 53LDFLAGS = -T ${S}/arch/mips/conf/stand.ldscript -Ttext ${TEXTADDR} \ 54 -e start -N 55COFFLDFLAGS = -T ${COMMON}/coffboot.ldscript -N 56 57MIPSFLAGS = -mips1 -G 0 -mno-abicalls 58DEBUGFLAGS = -Wall -Werror 59DEBUGFLAGS += -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith 60DEBUGFLAGS += -Wno-format-zero-length -Wno-sign-compare 61OPTFLAGS = -Os -mmemcpy 62FLAGS = ${MIPSFLAGS} ${DEBUGFLAGS} ${OPTFLAGS} 63AFLAGS = -xassembler-with-cpp -D_LOCORE ${FLAGS} 64CFLAGS = ${FLAGS} -ffreestanding 65 66CPPFLAGS += -D_STANDALONE -DSUPPORT_BOOTP 67CPPFLAGS += -nostdinc -I${.OBJDIR} -I${.CURDIR} -I${COMMON} -I${S} 68CPPFLAGS += -D__daddr_t=int32_t 69#CPPFLAGS += -DBOOTP_DEBUG -DNETIF_DEBUG -DETHER_DEBUG -DNFS_DEBUG 70#CPPFLAGS += -DRPC_DEBUG -DRARP_DEBUG -DNET_DEBUG -DDEBUG -DPARANOID 71 72CLEANFILES += ${BINKERNEL_DUMMY_O} ${BINKERNEL_O} 73CLEANFILES += ${PROG} ${PROG}.elf ${PROG}.coff ${PROG}.tmp ${PROG}.dis 74CLEANFILES += ${COFFHDRFIX} 75CLEANFILES += ${BOOT_KERNEL} ${BOOT_KERNEL}.elf ${BOOT_KERNEL}.tmp 76CLEANFILES += ${BOOT_KERNEL}.gz ${BOOT_KERNEL}.gz.tmp 77CLEANFILES += machine mips 78 79.include "${S}/lib/libkern/Makefile.inc" 80LIBKERN= ${KERNLIB} 81 82.include "${S}/lib/libz/Makefile.inc" 83LIBZ= ${ZLIB} 84 85SAMISCMAKEFLAGS= SA_USE_CREAD=yes SA_USE_LOADFILE=yes 86.include "${S}/lib/libsa/Makefile.inc" 87LIBSA= ${SALIB} 88 89LIBS = ${LIBSA} ${LIBZ} ${LIBKERN} 90 91# fixup GNU binutils file offset error. 92coffhdrfix: ${COMMON}/coffhdrfix.c 93 ${HOST_CC} -o ${COFFHDRFIX} ${COMMON}/coffhdrfix.c 94 95.if !make(obj) && !make(clean) && !make(cleandir) 96.BEGIN: 97 @[ -h machine ] || ln -s $S/arch/${MACHINE}/include machine 98 @[ -h mips ] || ln -s $S/arch/mips/include mips 99.NOPATH: machine mips 100.endif 101 102clean cleandir distclean: cleanlibdir 103 104cleanlibdir: 105 -rm -rf lib 106 107${BINKERNEL_DUMMY_O}: ${BINKERNEL_C} 108 ${COMPILE.c} -DKERNEL_SIZE=0 ${BINKERNEL_C} -o ${.TARGET} 109 110${BINKERNEL_O}: ${BINKERNEL_C} 111 ${COMPILE.c} -DKERNEL_SIZE=${BINKERNEL_SIZE} ${BINKERNEL_C} \ 112 -o ${.TARGET} 113 114all realall: ${PROG}.coff ${BOOT_KERNEL}.gz 115 116${PROG}: ${BINKERNEL_DUMMY_O} ${OBJS} ${LIBS} 117 ${LD} ${LDFLAGS} -S -o ${PROG}.elf ${OBJS} ${LIBS} ${BINKERNEL_DUMMY_O} 118 ${OBJDUMP} -h ${PROG}.elf 119# ${OBJDUMP} -m mips:4000 -d ${PROG}.elf > ${PROG}.dis 120 mv ${PROG}.elf ${PROG} 121 ls -al ${PROG} 122 123.include <bsd.prog.mk> 124 125${PROG}.coff: ${PROG} 126 ${ELF2ECOFF} ${PROG} ${.TARGET}.tmp 127 mv ${.TARGET}.tmp ${.TARGET} 128 129${BOOT_KERNEL}.gz: ${BINKERNEL_O} ${OBJS} ${LIBS} 130 ${LD} ${LDFLAGS} -o ${BOOT_KERNEL}.elf ${OBJS} ${LIBS} \ 131 ${BINKERNEL_O} 132 mv ${BOOT_KERNEL}.elf ${BOOT_KERNEL} 133 ${OBJDUMP} -h ${BOOT_KERNEL} 134 gzip -9c ${BOOT_KERNEL} > ${.TARGET}.tmp 135 mv ${.TARGET}.tmp ${.TARGET} 136 ls -al ${.TARGET} 137