summaryrefslogtreecommitdiffstats
path: root/sys/boot/alpha/common
diff options
context:
space:
mode:
authormsmith <msmith@FreeBSD.org>1999-09-06 08:38:10 +0000
committermsmith <msmith@FreeBSD.org>1999-09-06 08:38:10 +0000
commitfbe3b5e298cf635eb2cb1766b6cfa7a1001fcf59 (patch)
treeab71386b94b8cd8280c6d3647e0b04c384c0ed95 /sys/boot/alpha/common
parent8d8f84be506e8e04f9a780939c7b495db1ac22fc (diff)
downloadFreeBSD-src-fbe3b5e298cf635eb2cb1766b6cfa7a1001fcf59.zip
FreeBSD-src-fbe3b5e298cf635eb2cb1766b6cfa7a1001fcf59.tar.gz
Common Alpha loader Makefile, omitted accidentally from the previous set
of commits.
Diffstat (limited to 'sys/boot/alpha/common')
-rw-r--r--sys/boot/alpha/common/Makefile.common83
1 files changed, 83 insertions, 0 deletions
diff --git a/sys/boot/alpha/common/Makefile.common b/sys/boot/alpha/common/Makefile.common
new file mode 100644
index 0000000..16ce249
--- /dev/null
+++ b/sys/boot/alpha/common/Makefile.common
@@ -0,0 +1,83 @@
+# $FreeBSD$
+#
+# Common Alpha loader build rules
+
+.PATH: ${.CURDIR}/../common
+
+# Alpha-specific bootstrap sources
+SRCS+= main.c conf.c
+
+# Always add MI sources
+.PATH: ${.CURDIR}/../../common
+.include <${.CURDIR}/../../common/Makefile.inc>
+CFLAGS+= -mno-fp-regs
+CFLAGS+= -I${.CURDIR}/../../common -I${.CURDIR}
+CFLAGS+= -I${.CURDIR}/../../.. -I.
+CFLAGS+= -DPRIMARY_LOAD_ADDRESS=${PRIMARY_LOAD_ADDRESS} \
+ -DSECONDARY_LOAD_ADDRESS=${SECONDARY_LOAD_ADDRESS}
+
+CLEANFILES+= vers.c vers.o gensetdefs.o gensetdefs setdef0.o setdef1.o \
+ setdefs.h start.o
+CLEANFILES+= ${BASE} ${BASE}.sym ${BASE}.list
+
+CFLAGS+= -Wall
+
+CFLAGS+= -I${LIBSTANDDIR}
+CFLAGS+= -I${.CURDIR}/..
+CRT= start.o
+STRIP=
+BINDIR?= /boot
+
+all: ${BASE}
+
+vers.o: ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version
+ sh ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version ${NEWVERSWHAT}
+ ${CC} -c vers.c
+
+${BASE}: ${BASE}.sym ${BASE}.help
+ objcopy -O binary ${BASE}.sym ${BASE}
+
+${BASE}.sym: ${OBJS} ${LIBSTAND} ${LIBALPHA} ${CRT} vers.o setdef0.o setdef1.o
+ ${LD} -o ${BASE}.sym -M -e start -N -Ttext ${LOAD_ADDRESS} \
+ ${CRT} setdef0.o ${OBJS} setdef1.o \
+ vers.o ${LIBSTAND} ${LIBALPHA} ${LIBSTAND} >${.OBJDIR}/${BASE}.list
+
+${BASE}.help: help.common help.alpha
+ cat ${.ALLSRC} | awk -f ${.CURDIR}/../../common/merge_help.awk > ${.TARGET}
+
+.ifdef INSTALL_HELP
+beforeinstall:
+.if exists(${.OBJDIR}/loader.help)
+ ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \
+ ${.OBJDIR}/${BASE}.help ${DESTDIR}/boot
+.else
+ ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \
+ ${.CURDIR}/${BASE}.help ${DESTDIR}/boot
+.endif
+.endif
+
+start.o: ${.CURDIR}/../libalpha/start.S
+ ${CC} -c ${CFLAGS} $<
+
+setdef0.o: setdefs.h
+
+setdef1.o: setdefs.h
+
+machine:
+ ln -sf ${.CURDIR}/../../../alpha/include machine
+
+CLEANFILES+= machine
+
+.include <bsd.prog.mk>
+
+setdefs.h: gensetdefs ${OBJS}
+ @echo Generating linker sets
+ @./gensetdefs ${OBJS} >setdefs.h
+
+gensetdefs: gensetdefs.o
+ ${CC} -static gensetdefs.o -o $@
+
+gensetdefs.o: gensetdefs.c
+ ${CC} -c $<
+
+beforedepend ${OBJS}: machine
OpenPOWER on IntegriCloud