Home | History | Annotate | Line # | Download | only in boot
      1 #	$NetBSD: Makefile,v 1.37 2023/06/03 08:52:56 lukem 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 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 LIBCRTI=
     54 LIBC=
     55 LIBCRTBEGIN=
     56 LIBCRTEND=
     57 
     58 RELOC= 0x700000
     59 
     60 CLEANFILES+= ${PROG}.elf
     61 
     62 LIBS= ${L}/sa/libsa.a ${L}/kern/libkern.a ${L}/z/libz.a
     63 
     64 ${PROG}: ${OBJS} ${LIBS}
     65 	${_MKTARGET_LINK}
     66 	${LD} -o ${PROG}.elf -N -T ${.CURDIR}/../boot/ld.script \
     67 		-Ttext ${RELOC} ${OBJS} ${LIBS}
     68 	${STRIP} -o ${PROG} ${PROG}.elf
     69 
     70 .include "${S}/conf/newvers_stand.mk"
     71 
     72 CWARNFLAGS.gcc+=	${CC_WNO_ADDRESS_OF_PACKED_MEMBER}
     73 
     74 .include <bsd.prog.mk>
     75 .include <bsd.klinks.mk>
     76