Makefile revision 93319
1# $FreeBSD: head/sys/boot/ia64/ski/Makefile 93319 2002-03-28 06:52:10Z marcel $
2
3.PATH: ${.CURDIR}/../common
4
5PROG= 		skiload
6NOMAN=
7NEWVERSWHAT=	"ia64 SKI boot" ${MACHINE_ARCH}
8
9SRCS+=		main.c conf.c
10
11# Enable BootForth
12BOOT_FORTH=	yes
13CFLAGS+=	-g
14CFLAGS+=	-I${.CURDIR}/../../ficl -I${.CURDIR}/../../ficl/alpha
15.if BOOT_FORTH
16CFLAGS+=	-DBOOT_FORTH
17.if exists(${.OBJDIR}/../../ficl/libficl.a)
18LIBFICL=	${.OBJDIR}/../../ficl/libficl.a
19.else
20LIBFICL=	${.CURDIR}/../../ficl/libficl.a
21.endif
22.else
23LIBFICL=
24.endif
25
26# where to get libstand from
27#XXX need a better way to do this
28LIBSTAND=       ${.CURDIR}/../../../../lib/libstand/libstand.a
29.if !exists(${LIBSTAND})
30LIBSTAND=       ${.OBJDIR}/../../../../lib/libstand/libstand.a
31.if !exists(${LIBSTAND})
32LIBSTAND=       -lstand
33.endif
34.endif
35
36.if exists(${.OBJDIR}/../libski/libski.a)
37LIBSKI=		${.OBJDIR}/../libski/libski.a
38.else
39LIBSKI=		${.CURDIR}/../libski/libski.a
40.endif
41
42# Always add MI sources 
43.PATH: ${.CURDIR}/../../common
44.include <${.CURDIR}/../../common/Makefile.inc>
45
46CFLAGS+= -I-
47CFLAGS+= -I${.CURDIR}/../include
48CFLAGS+= -I${.CURDIR}/../include/${MACHINE_ARCH}
49CFLAGS+= -I${.CURDIR}/../../common -I${.CURDIR}
50CFLAGS+= -I${.CURDIR}/../../.. -I.
51CFLAGS+= -I${.CURDIR}/../libski
52CFLAGS+= -DLOADER
53CFLAGS+= -ffreestanding
54
55LDFLAGS=	-nostdlib -T ${.CURDIR}/ldscript.ia64
56
57CLEANFILES+=	vers.c vers.o ${PROG}.list
58CLEANFILES+=	loader.help
59CLEANFILES+=	machine
60
61all: ${PROG}
62
63vers.o: ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version
64	sh ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version ${NEWVERSWHAT}
65	${CC} -c vers.c
66
67${PROG}.help:	help.common help.efi
68	cat ${.ALLSRC} | awk -f ${.CURDIR}/../../common/merge_help.awk \
69	    > ${.TARGET}
70
71beforeinstall:
72.if exists(${.OBJDIR}/loader.help)
73	${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \
74	    ${.OBJDIR}/${PROG}.help ${DESTDIR}/boot
75.else
76	${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \
77	    ${.CURDIR}/${PROG}.help ${DESTDIR}/boot
78.endif
79
80# Other fragments still to be brought in from ../Makfile.booters?
81start.o: ${.CURDIR}/../libefi/arch/${MACHINE_ARCH}/start.S
82	${CC} -c ${CFLAGS} ${.IMPSRC}
83
84machine:
85	ln -sf ${.CURDIR}/../../../${MACHINE_ARCH}/include machine
86
87${PROG}: ${OBJS} ${LIBFICL} ${LIBSKI} vers.o
88	${LD} ${LDFLAGS} -o ${PROG} -M \
89	    ${OBJS} vers.o \
90	    ${LIBFICL} ${LIBSTAND} ${LIBSKI} ${LIBSTAND} \
91	    > ${.OBJDIR}/${PROG}.list
92
93.include <bsd.prog.mk>
94
95beforedepend ${OBJS}: machine
96