1# $NetBSD: Makefile,v 1.23 2007/10/17 19:54:06 garbled Exp $ 2 3S= ${.CURDIR}/../../../.. 4 5PROG= boot 6NEWVERSWHAT= "BOOT" 7 8BINMODE?= 444 9 10# XXX SHOULD NOT NEED TO DEFINE THESE! 11LIBCRT0= 12LIBC= 13LIBCRTBEGIN= 14LIBCRTEND= 15 16realall: ${PROG} 17 18ASRCS+= srt0.s 19CSRCS+= boot.c clock.c com.c conf.c cons.c cpu.c devopen.c 20CSRCS+= fd.c filesystem.c inkernel.c io.c tgets.c prf.c monitor.c 21CSRCS+= kbd.c ns16550.c vreset.c vga.c video.c 22 23SRCS= ${ASRCS} ${CSRCS} 24 25CLEANFILES+= vers.c vers.o 26 27COPTS+= -ffreestanding 28CPPFLAGS= -I. -I${.CURDIR} -I${.CURDIR}/../elf2pef -I${.CURDIR}/../../.. 29CPPFLAGS+= -I${S} -I${S}/lib/libsa 30CPPFLAGS+= -D_STANDALONE -DDBMONITOR -DRELOC=${RELOC} 31CPPFLAGS+= -DUSE_SCAN 32#CPPFLAGS+= -DCONS_BE 33#CPPFLAGS+= -DCONS_VGA 34CPPFLAGS+= -DCONS_SERIAL -DCOMSPEED=9600 -DCOMPORT=0x3F8 35 36CFLAGS= -Wno-main 37AFLAGS= -x assembler-with-cpp -traditional-cpp 38NOMAN= # defined 39STRIPFLAG= 40BINMODE= 444 41 42RELOC= 0x700000 43 44.if !make(obj) && !make(clean) && !make(cleandir) 45.BEGIN: 46 @[ -h machine ] || ln -s ${S}/arch/${MACHINE}/include machine 47 @[ -h powerpc ] || ln -s ${S}/arch/powerpc/include powerpc 48.endif 49.NOPATH: machine powerpc 50CLEANFILES+= machine powerpc 51 52### find out what to use for libkern 53KERN_AS= library 54.include "${S}/lib/libkern/Makefile.inc" 55LIBKERN= ${KERNLIB} 56 57### find out what to use for libz 58Z_AS= library 59.include "${S}/lib/libz/Makefile.inc" 60LIBZ= ${ZLIB} 61 62### find out what to use for libsa 63SA_AS= library 64SAMISCMAKEFLAGS= SA_USE_CREAD=yes SA_USE_LOADFILE=yes 65.include "${S}/lib/libsa/Makefile.inc" 66LIBSA= ${SALIB} 67 68.PHONY: vers.c 69vers.c: version 70 ${HOST_SH} ${S}/conf/newvers_stand.sh ${.CURDIR}/version "bebox" \ 71 ${NEWVERSWHAT} 72 73${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} vers.o 74 ${LD} -o ${PROG} -s -N -T ${.CURDIR}/ld.script -Ttext ${RELOC} ${OBJS} \ 75 ${LIBSA} ${LIBZ} ${LIBKERN} vers.o 76 77cleandir distclean: cleanlibdir 78 79cleanlibdir: 80 -rm -rf lib 81 82.include <bsd.prog.mk> 83