Makefile revision 93677
1# $FreeBSD: head/sys/boot/sparc64/loader/Makefile 93677 2002-04-02 17:08:37Z tmm $
2
3BASE=		loader
4PROG=		${BASE}
5NEWVERSWHAT=	"bootstrap loader" sparc64
6BINDIR?=	/boot
7INSTALLFLAGS=	-b
8
9CFLAGS=		-mno-app-regs 
10
11LOADER_DISK_SUPPORT?=	yes
12LOADER_UFS_SUPPORT?=	yes
13LOADER_CD9660_SUPPORT?=	no
14LOADER_NET_SUPPORT?=	no
15LOADER_NFS_SUPPORT?=	no
16LOADER_TFTP_SUPPORT?=	no
17
18.if ${LOADER_DISK_SUPPORT} == "yes"
19CFLAGS+=	-DLOADER_DISK_SUPPORT
20.endif
21.if ${LOADER_UFS_SUPPORT} == "yes"
22CFLAGS+=	-DLOADER_UFS_SUPPORT
23.endif
24.if ${LOADER_CD9660_SUPPORT} == "yes"
25CFLAGS+=	-DLOADER_CD9660_SUPPORT
26.endif
27.if ${LOADER_NET_SUPPORT} == "yes"
28CFLAGS+=	-DLOADER_NET_SUPPORT
29.endif
30.if ${LOADER_NFS_SUPPORT} == "yes"
31CFLAGS+=	-DLOADER_NFS_SUPPORT
32.endif
33.if ${LOADER_TFTP_SUPPORT} == "yes"
34CFLAGS+=	-DLOADER_TFTP_SUPPORT
35.endif
36
37# Architecture-specific loader code
38SRCS=		locore.S main.c metadata.c
39
40# Always add MI sources 
41.PATH:		${.CURDIR}/../../common
42.include	<${.CURDIR}/../../common/Makefile.inc>
43CFLAGS+=	-I${.CURDIR}/../../common
44CFLAGS+=	-I${.CURDIR}/../../.. -I.
45
46CLEANFILES+=	${PROG}.help
47
48CFLAGS+=	-W -Wall -ffreestanding
49LDFLAGS=	-nostdlib -static
50LDADD=		${LIBSTAND} ${LIBOFW}
51
52# where to get libstand from
53#XXX need a better way to do this
54LIBSTAND=	${.CURDIR}/../../../../lib/libstand/libstand.a
55.if !exists(${LIBSTAND})
56LIBSTAND=	${.OBJDIR}/../../../../lib/libstand/libstand.a
57.if !exists(${LIBSTAND})
58LIBSTAND=	-lstand
59.endif
60.endif
61LIBOFW=		${.OBJDIR}/../../ofw/libofw/libofw.a
62CFLAGS+=	-I${.CURDIR}/../../../../lib/libstand/
63CFLAGS+=	-I${.CURDIR}/../../ofw/libofw/
64
65${BASE}.help: help.common help.sparc64
66	cat ${.ALLSRC} | \
67	    awk -f ${.CURDIR}/../../common/merge_help.awk > ${.TARGET}
68
69beforeinstall: ${PROG}.help
70.if exists(${DESTDIR}/boot/loader)
71	mv ${DESTDIR}/boot/loader ${DESTDIR}/boot/loader.old
72.endif
73#.if exists(${.OBJDIR}/loader.help)
74	${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \
75		${.OBJDIR}/${BASE}.help ${DESTDIR}/boot
76#.else
77#	${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \
78#		${.CURDIR}/${BASE}.help ${DESTDIR}/boot
79#.endif
80.if !exists(${DESTDIR}/boot/loader.rc)
81	${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \
82		${.CURDIR}/../../forth/loader.rc ${DESTDIR}/boot
83.endif
84	${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \
85		${.CURDIR}/../../forth/loader.4th ${DESTDIR}/boot
86	${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \
87		${.CURDIR}/../../forth/support.4th ${DESTDIR}/boot
88	${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \
89		${.CURDIR}/../../forth/loader.conf ${DESTDIR}/boot/defaults
90
91# There are no things relevant to all boot parts of FreeBSD/sparc64 yet.
92#.include <${.CURDIR}/../Makefile.inc>
93
94.include <bsd.prog.mk>
95