Home | History | Annotate | Line # | Download | only in boot
Makefile revision 1.30
      1 #	$NetBSD: Makefile,v 1.30 2011/01/21 15:59:05 joerg 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} ${.CURDIR}/../../../powerpc/powerpc
     11 
     12 S= ${.CURDIR}/../../../..
     13 L= ${COMMONOBJ}/lib
     14 
     15 ELF2PEF= ${.CURDIR}/../../../powerpc/stand/mkbootimage
     16 
     17 COMMONLIBDIR= ${.CURDIR}/../../../../../common
     18 
     19 BASE?=		boot
     20 PROG=		${BASE}
     21 NEWVERSWHAT=	"BOOT"
     22 
     23 SRCS= srt0.s
     24 SRCS+= boot.c clock.c com.c conf.c cons.c cpu.c devopen.c
     25 SRCS+= fd.c filesystem.c inkernel.c io.c kbd.c monitor.c ns16550.c
     26 SRCS+= pci.c prf.c sd.c siop.c tgets.c vers.c vga.c video.c vreset.c wdc.c wd.c
     27 SRCS+= setjmp.S
     28 
     29 CFLAGS= -Wno-main -ffreestanding
     30 AFLAGS= -x assembler-with-cpp
     31 
     32 CPPFLAGS= -nostdinc
     33 CPPFLAGS+= -I${.OBJDIR} -I${S} -I${COMMONLIBDIR}/include -I${S}/lib/libsa
     34 CPPFLAGS+= -I${ELF2PEF}
     35 CPPFLAGS+= -Werror -Wall -Wstrict-prototypes -Wmissing-prototypes
     36 CPPFLAGS+= -D_STANDALONE -DRELOC=${RELOC} -DUSE_SCAN
     37 CPPFLAGS+= -D__daddr_t=int32_t
     38 #CPPFLAGS+= -DDBMONITOR
     39 
     40 .if (${BASE} == "boot")
     41 CPPFLAGS+= -DCONS_BE
     42 .elif (${BASE} == "boot_com0")
     43 CPPFLAGS+= -DCONS_SERIAL -DCOMSPEED=9600 -DCOMPORT=0x3f8
     44 .elif (${BASE} == "boot_vga")
     45 CPPFLAGS+= -DCONS_VGA
     46 .endif
     47 
     48 STRIPFLAG=
     49 BINMODE= 444
     50 
     51 # XXX SHOULD NOT NEED TO DEFINE THESE!
     52 LIBCRT0=
     53 LIBC=
     54 LIBCRTBEGIN=
     55 LIBCRTEND=
     56 
     57 RELOC= 0x700000
     58 
     59 CLEANFILES+= vers.c machine powerpc ${PROG}.elf
     60 
     61 LIBS= ${L}/sa/libsa.a ${L}/kern/libkern.a ${L}/z/libz.a
     62 
     63 .if !make(obj) && !make(clean) && !make(cleandir)
     64 .BEGIN: machine powerpc
     65 .NOPATH: machine powerpc
     66 
     67 machine::
     68 	-rm -f $@
     69 	ln -s ${S}/arch/${MACHINE}/include $@
     70 
     71 powerpc::
     72 	-rm -f $@
     73 	ln -s ${S}/arch/powerpc/include $@
     74 .endif
     75 
     76 vers.c: ${.CURDIR}/../boot/version
     77 	${HOST_SH} ${S}/conf/newvers_stand.sh ${.CURDIR}/../boot/version \
     78 		"bebox" ${NEWVERSWHAT}
     79 
     80 ${PROG}: ${OBJS} ${LIBS}
     81 	${LD} -o ${PROG}.elf -N -T ${.CURDIR}/../boot/ld.script \
     82 		-Ttext ${RELOC} ${OBJS} ${LIBS}
     83 	${STRIP} -o ${PROG} ${PROG}.elf
     84 
     85 .include <bsd.prog.mk>
     86