1 # $NetBSD: Makefile,v 1.10 2003/10/08 01:40:23 simonb Exp $ 2 3 NOMAN= # defined 4 5 .include <bsd.own.mk> 6 7 COMMON= ${.CURDIR}/../common 8 COMMONOBJ!= cd ${COMMON} && ${PRINTOBJDIR} 9 10 .PATH: ${.CURDIR}/../boot ${COMMONOBJ} 11 12 S= ${.CURDIR}/../../../.. 13 L= ${COMMONOBJ}/lib 14 15 BASE?= boot 16 PROG= ${BASE} 17 NEWVERSWHAT= "BOOT" 18 19 SRCS= srt0.s 20 SRCS+= boot.c clock.c com.c conf.c cons.c devopen.c fd.c 21 SRCS+= filesystem.c inkernel.c io.c tgets.c prf.c monitor.c 22 SRCS+= kbd.c ns16550.c vers.c vreset.c vga.c video.c 23 24 CFLAGS+= -ffreestanding 25 AFLAGS= -x assembler-with-cpp -traditional-cpp 26 27 CPPFLAGS= -nostdinc -I${.OBJDIR} -I${.CURDIR}/../mkbootimage -I${S} 28 CPPFLAGS+= -Werror -Wall -Wstrict-prototypes -Wmissing-prototypes 29 CPPFLAGS+= -D_STANDALONE -DDBMONITOR -DRELOC=${RELOC} -DUSE_SCAN 30 31 .if (${BASE} == "boot") 32 CPPFLAGS+= -DCONS_VGA 33 #CPPFLAGS+= -DCONS_FB 34 .elif (${BASE} == "boot_com0") 35 CPPFLAGS+= -DCONS_SERIAL -DCOMSPEED=9600 -DCOMPORT=0x3f8 36 .endif 37 38 OBJDUMP?= objdump 39 STRIPFLAG= 40 BINMODE= 444 41 42 # XXX SHOULD NOT NEED TO DEFINE THESE! 43 LIBCRT0= 44 LIBC= 45 LIBCRTBEGIN= 46 LIBCRTEND= 47 48 RELOC= 0x800000 49 HEAD_SIZE= `${OBJDUMP} -h ${.OBJDIR}/${PROG} | grep \.text | awk '{print $$6}'` 50 KERN_OFFSET= `ls -l ${.OBJDIR}/${PROG} | awk '{print $$5}'` 51 52 CLEANFILES+= vers.c machine powerpc 53 54 LIBS= ${L}/sa/libsa.a ${L}/kern/libkern.a ${L}/z/libz.a 55 56 .BEGIN: machine powerpc 57 .NOPATH: machine powerpc 58 realdepend realall: machine powerpc 59 60 machine:: 61 -rm -f $@ 62 ln -s ${S}/arch/${MACHINE}/include $@ 63 64 powerpc:: 65 -rm -f $@ 66 ln -s ${S}/arch/powerpc/include $@ 67 68 vers.c: ${.CURDIR}/../boot/version 69 sh ${S}/conf/newvers_stand.sh ${.CURDIR}/../boot/version "prep" ${NEWVERSWHAT} 70 71 ${PROG}: ${OBJS} machine powerpc 72 ${LD} -o ${PROG} -s -N -T ${.CURDIR}/../boot/ld.script \ 73 -Ttext ${RELOC} ${OBJS} ${LIBS} 74 ${COMPILE.c} -DKERN_OFFSET=${KERN_OFFSET} -DHEAD_SIZE=0x${HEAD_SIZE} \ 75 ${.CURDIR}/../boot/inkernel.c 76 ${LD} -o ${PROG} -s -N -T ${.CURDIR}/../boot/ld.script \ 77 -Ttext ${RELOC} ${OBJS} ${LIBS} 78 79 .include <bsd.prog.mk> 80