xref: /NextBSD/sys/boot/pc98/loader/Makefile (revision c21ffb8d6aca32c9584cfa072f309a5890a21aea)
1# $FreeBSD$
2
3.include <src.opts.mk>
4MK_SSP=		no
5MAN=
6
7LOADER?=	loader
8PROG=		${LOADER}.sym
9INTERNALPROG=
10NEWVERSWHAT=	"bootstrap loader" pc98
11
12# architecture-specific loader code
13SRCS=		main.c conf.c vers.c
14.PATH:		${.CURDIR}/../../i386/loader
15
16# Enable PXE TFTP or NFS support, not both.
17.if defined(LOADER_TFTP_SUPPORT)
18CFLAGS+=	-DLOADER_TFTP_SUPPORT
19.else
20CFLAGS+=	-DLOADER_NFS_SUPPORT
21.endif
22
23# Include bcache code.
24HAVE_BCACHE=	yes
25
26# Enable PnP and ISA-PnP code.
27HAVE_PNP=	yes
28HAVE_ISABUS=	yes
29
30.if ${MK_FORTH} != "no"
31# Enable BootForth
32BOOT_FORTH=	yes
33CFLAGS+=	-DBOOT_FORTH -I${.CURDIR}/../../ficl -I${.CURDIR}/../../ficl/i386
34LIBFICL=	${.OBJDIR}/../../ficl/libficl.a
35.endif
36
37.if defined(LOADER_BZIP2_SUPPORT)
38CFLAGS+=	-DLOADER_BZIP2_SUPPORT
39.endif
40.if !defined(LOADER_NO_GZIP_SUPPORT)
41CFLAGS+=	-DLOADER_GZIP_SUPPORT
42.endif
43
44# Always add MI sources
45.PATH:		${.CURDIR}/../../common
46.include	"${.CURDIR}/../../common/Makefile.inc"
47CFLAGS+=	-I${.CURDIR}/../../common
48CFLAGS+=	-I${.CURDIR}/../../i386
49CFLAGS+=	-I.
50
51CLEANFILES=	vers.c ${LOADER} ${LOADER}.bin loader.help
52
53CFLAGS+=	-Wall
54LDFLAGS=	-static -Ttext 0x0
55
56# pc98 standalone support library
57LIBPC98=	${.OBJDIR}/../libpc98/libpc98.a
58CFLAGS+=	-I${.CURDIR}/..
59
60LIBSTAND=	${.OBJDIR}/../../libstand32/libstand.a
61
62# BTX components
63CFLAGS+=	-I${.CURDIR}/../btx/lib
64
65# Debug me!
66#CFLAGS+=	-g
67#LDFLAGS+=	-g
68
69# Pick up ../Makefile.inc early.
70.include <bsd.init.mk>
71
72vers.c:	${.CURDIR}/../../common/newvers.sh ${.CURDIR}/../../i386/loader/version
73	sh ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/../../i386/loader/version ${NEWVERSWHAT}
74
75${LOADER}: ${LOADER}.bin ${BTXLDR} ${BTXKERN}
76	btxld -v -f aout -e ${LOADER_ADDRESS} -o ${.TARGET} -l ${BTXLDR} \
77		-b ${BTXKERN} ${LOADER}.bin
78
79${LOADER}.bin: ${LOADER}.sym
80	cp ${.ALLSRC} ${.TARGET}
81	strip -R .comment -R .note ${.TARGET}
82
83loader.help: help.common help.pc98
84	cat ${.ALLSRC} | awk -f ${.CURDIR}/../../common/merge_help.awk > ${.TARGET}
85
86FILES=	${LOADER}
87# XXX INSTALLFLAGS_loader= -b
88FILESMODE_${LOADER}= ${BINMODE} -b
89
90.PATH: ${.CURDIR}/../../forth
91.include	"${.CURDIR}/../../forth/Makefile.inc"
92
93FILES+=	${.CURDIR}/../../i386/loader/loader.rc menu.rc
94
95# XXX crt0.o needs to be first for pxeboot(8) to work
96OBJS=	${BTXCRT}
97
98DPADD=	${LIBFICL} ${LIBPC98} ${LIBSTAND}
99LDADD=	${LIBFICL} ${LIBPC98} ${LIBSTAND}
100
101.include <bsd.prog.mk>
102