xref: /netbsd-src/sys/arch/bebox/stand/boot/Makefile (revision f937c412f371bc14cc109a4768482c4850abc7a5)
1#	$NetBSD: Makefile,v 1.37 2023/06/03 08:52:56 lukem Exp $
2
3NOMAN= # defined
4
5.include <bsd.own.mk>
6
7COMMON= ${.CURDIR}/../common
8COMMONOBJ!=	cd ${COMMON} && ${PRINTOBJDIR}
9
10.PATH: ${.CURDIR}/../boot ${COMMONOBJ} ${.CURDIR}/../../../powerpc/powerpc
11
12S= ${.CURDIR}/../../../..
13L= ${COMMONOBJ}/lib
14
15ELF2PEF= ${.CURDIR}/../../../powerpc/stand/mkbootimage
16
17COMMONLIBDIR= ${.CURDIR}/../../../../../common
18
19BASE?=		boot
20PROG=		${BASE}
21NEWVERSWHAT=	"BOOT"
22
23SRCS= srt0.s
24SRCS+= boot.c clock.c com.c conf.c cons.c cpu.c devopen.c
25SRCS+= fd.c filesystem.c inkernel.c io.c kbd.c monitor.c ns16550.c
26SRCS+= pci.c prf.c sd.c siop.c tgets.c vga.c video.c vreset.c wdc.c wd.c
27SRCS+= setjmp.S
28
29CFLAGS= -Wno-main -ffreestanding
30AFLAGS= -x assembler-with-cpp
31
32CPPFLAGS= -nostdinc
33CPPFLAGS+= -I${.OBJDIR} -I${S} -I${COMMONLIBDIR}/include -I${S}/lib/libsa
34CPPFLAGS+= -I${ELF2PEF}
35CPPFLAGS+= -Werror -Wall -Wstrict-prototypes -Wmissing-prototypes
36CPPFLAGS+= -D_STANDALONE -DRELOC=${RELOC} -DUSE_SCAN
37CPPFLAGS+= -D__daddr_t=int32_t
38#CPPFLAGS+= -DDBMONITOR
39
40.if (${BASE} == "boot")
41CPPFLAGS+= -DCONS_BE
42.elif (${BASE} == "boot_com0")
43CPPFLAGS+= -DCONS_SERIAL -DCOMSPEED=9600 -DCOMPORT=0x3f8
44.elif (${BASE} == "boot_vga")
45CPPFLAGS+= -DCONS_VGA
46.endif
47
48STRIPFLAG=
49BINMODE= 444
50
51# XXX SHOULD NOT NEED TO DEFINE THESE!
52LIBCRT0=
53LIBCRTI=
54LIBC=
55LIBCRTBEGIN=
56LIBCRTEND=
57
58RELOC= 0x700000
59
60CLEANFILES+= ${PROG}.elf
61
62LIBS= ${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
72CWARNFLAGS.gcc+=	${CC_WNO_ADDRESS_OF_PACKED_MEMBER}
73
74.include <bsd.prog.mk>
75.include <bsd.klinks.mk>
76