Makefile revision 125722
1# $FreeBSD: head/sys/boot/i386/loader/Makefile 125722 2004-02-11 22:25:25Z ru $
2
3PROG=		loader.sym
4INTERNALPROG=
5NEWVERSWHAT=	"bootstrap loader" i386
6
7# architecture-specific loader code
8SRCS=		main.c conf.c vers.c
9
10# Enable PXE TFTP or NFS support, not both.
11.if defined(LOADER_TFTP_SUPPORT)
12CFLAGS+=	-DLOADER_TFTP_SUPPORT
13.else
14CFLAGS+=	-DLOADER_NFS_SUPPORT
15.endif
16
17# Enable PnP and ISA-PnP code.
18HAVE_PNP=	yes
19HAVE_ISABUS=	yes
20
21.if !defined(NOFORTH)
22# Enable BootForth
23BOOT_FORTH=	yes
24CFLAGS+=	-DBOOT_FORTH -I${.CURDIR}/../../ficl -I${.CURDIR}/../../ficl/i386
25LIBFICL=	${.OBJDIR}/../../ficl/libficl.a
26.endif
27
28.if defined(LOADER_BZIP2_SUPPORT)
29CFLAGS+=	-DLOADER_BZIP2_SUPPORT
30.endif
31.if !defined(LOADER_NO_GZIP_SUPPORT)
32CFLAGS+=	-DLOADER_GZIP_SUPPORT
33.endif
34
35# Always add MI sources 
36.PATH:		${.CURDIR}/../../common
37.include	"${.CURDIR}/../../common/Makefile.inc"
38CFLAGS+=	-I${.CURDIR}/../../common
39CFLAGS+=	-I.
40
41CLEANFILES=	vers.c loader loader.list loader.bin loader.help
42
43CFLAGS+=	-Wall
44LDFLAGS=	-static -Ttext 0x0
45
46# i386 standalone support library
47LIBI386=	${.OBJDIR}/../libi386/libi386.a
48CFLAGS+=	-I${.CURDIR}/..
49
50# BTX components
51CFLAGS+=	-I${.CURDIR}/../btx/lib
52
53# Debug me!
54#CFLAGS+=	-g
55#LDFLAGS+=	-g
56
57# Pick up ../Makefile.inc early.
58.include <bsd.init.mk>
59
60vers.c:	${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version
61	sh ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version ${NEWVERSWHAT}
62
63loader: loader.bin ${BTXLDR} ${BTXKERN}
64	btxld -v -f aout -e ${LOADER_ADDRESS} -o ${.TARGET} -l ${BTXLDR} \
65		-b ${BTXKERN} loader.bin
66
67loader.bin: loader.sym
68	cp ${.ALLSRC} ${.TARGET}
69	strip -R .comment -R .note ${.TARGET}
70
71loader.help: help.common help.i386
72	cat ${.ALLSRC} | awk -f ${.CURDIR}/../../common/merge_help.awk > ${.TARGET}
73
74.PATH: ${.CURDIR}/../../forth 
75FILES=	loader loader.help loader.4th support.4th loader.conf
76FILES+= screen.4th frames.4th beastie.4th
77# XXX INSTALLFLAGS_loader= -b
78FILESMODE_loader= ${BINMODE} -b
79FILESDIR_loader.conf=	/boot/defaults
80
81.if !exists(${DESTDIR}/boot/loader.rc)
82FILES+=	${.CURDIR}/loader.rc
83.endif
84
85DPADD=	${BTXCRT} ${LIBFICL} ${LIBI386} ${LIBSTAND}
86LDADD=	${BTXCRT} ${LIBFICL} ${LIBI386} -lstand
87
88.include <bsd.prog.mk>
89
90.if ${MACHINE_ARCH} == "amd64"
91beforedepend ${OBJS}: machine
92CLEANFILES+=	machine
93machine:
94	ln -sf ${.CURDIR}/../../../i386/include machine
95.endif
96