freebsd-dev/sys/boot/ia64/skiload/Makefile
Doug Rabson 3a19b480c8 Add a version of the loader which runs under SKI, the HP ia64 simulator.
This loader is quite functional and can load and run kernels. The kernels
don't quite work right after loading but that should be easily fixable.
2001-09-12 08:34:27 +00:00

82 lines
1.9 KiB
Makefile

# $FreeBSD$
.PATH: ${.CURDIR}/../common
PROG= skiload
NOMAN=
NEWVERSWHAT= "ia64 SKI boot" ${MACHINE_ARCH}
SRCS+= main.c conf.c
# Enable BootForth
BOOT_FORTH= yes
CFLAGS+= -g
CFLAGS+= -I${.CURDIR}/../../ficl -I${.CURDIR}/../../ficl/alpha
.if BOOT_FORTH
CFLAGS+= -DBOOT_FORTH
.if exists(${.OBJDIR}/../../ficl/libficl.a)
LIBFICL= ${.OBJDIR}/../../ficl/libficl.a
.else
LIBFICL= ${.CURDIR}/../../ficl/libficl.a
.endif
.else
LIBFICL=
.endif
LIBSTAND= -lstand
LIBSKI= ${.CURDIR}/../libski/libski.a
# Always add MI sources
.PATH: ${.CURDIR}/../../common
.include <${.CURDIR}/../../common/Makefile.inc>
CFLAGS+= -I-
CFLAGS+= -I${.CURDIR}/../include
CFLAGS+= -I${.CURDIR}/../include/${MACHINE_ARCH}
CFLAGS+= -I${.CURDIR}/../../common -I${.CURDIR}
CFLAGS+= -I${.CURDIR}/../../.. -I.
CFLAGS+= -I${.CURDIR}/../libski
CFLAGS+= -DLOADER
LDFLAGS= -nostdlib -T ldscript.ia64
CLEANFILES+= vers.c vers.o ${PROG}.list
CLEANFILES+= loader.help
CLEANFILES+= machine
all: ${PROG}
vers.o: ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version
sh ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version ${NEWVERSWHAT}
${CC} -c vers.c
${PROG}.help: help.common help.efi
cat ${.ALLSRC} | awk -f ${.CURDIR}/../../common/merge_help.awk \
> ${.TARGET}
beforeinstall:
.if exists(${.OBJDIR}/loader.help)
${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \
${.OBJDIR}/${PROG}.help ${DESTDIR}/boot
.else
${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \
${.CURDIR}/${PROG}.help ${DESTDIR}/boot
.endif
# Other fragments still to be brought in from ../Makfile.booters?
start.o: ${.CURDIR}/../libefi/arch/${MACHINE_ARCH}/start.S
${CC} -c ${CFLAGS} ${.IMPSRC}
machine:
ln -sf ${.CURDIR}/../../../${MACHINE_ARCH}/include machine
${PROG}: ${OBJS} ${LIBFICL} ${LIBSTAND} ${LIBSKI} vers.o
${LD} ${LDFLAGS} -o ${PROG} -M \
${OBJS} vers.o \
${LIBFICL} ${LIBSTAND} ${LIBSKI} ${LIBSTAND} \
> ${.OBJDIR}/${PROG}.list
.include <bsd.prog.mk>
beforedepend ${OBJS}: machine