xref: /netbsd-src/sys/arch/alpha/stand/boot/Makefile (revision 1394f01b4a9e99092957ca5d824d67219565d9b5)
1# $NetBSD: Makefile,v 1.18 1997/05/09 07:50:26 mycroft Exp $
2
3S=	${.CURDIR}/../../../..
4
5.PATH: ${.CURDIR}/../common
6
7PROG = boot
8
9SRCS = start.S boot.c loadfile.c disk.c conf.c prom.c prom_disp.S OSFpal.c
10SRCS+= devopen.c filesystem.c prom_swpal.S
11NOMAN=
12STRIPFLAG=
13BINMODE= 444
14
15BOOT_RELOC = ${SECONDARY_LOAD_ADDRESS}
16HEADERSIZE_PROG = headersize
17
18CLEANFILES+= vers.c vers.o ${PROG}.sym ${PROG}.nosym ${HEADERSIZE_PROG}
19
20AFLAGS += -DASSEMBLER
21CPPFLAGS += -I${.CURDIR}/../.. -I${.CURDIR}/../../../.. \
22	-DALPHA_BOOT_ECOFF -DALPHA_BOOT_ELF
23CFLAGS = -Werror -mno-fp-regs -g
24
25${PROG}.nosym: ${PROG}.sym
26	cp ${PROG}.sym ${PROG}.nosym
27	strip ${PROG}.nosym
28
29${PROG}: ${PROG}.nosym ${HEADERSIZE_PROG}
30	dd if=${PROG}.nosym of=${PROG} \
31	    bs=`./${HEADERSIZE_PROG} ${BOOT_RELOC} ${PROG}.nosym` skip=1
32
33.include <bsd.prog.mk>
34
35### find out what to use for libkern
36KERN_AS=	library
37.include "${S}/lib/libkern/Makefile.inc"
38LIBKERN=	${KERNLIB}
39
40### find out what to use for libz
41Z_AS=		library
42.include "${S}/lib/libz/Makefile.inc"
43LIBZ=		${ZLIB}
44
45### find out what to use for libsa
46SA_AS=		library
47SAMISCMAKEFLAGS= SA_USE_CREAD=yes
48.include "${S}/lib/libsa/Makefile.inc"
49LIBSA=		${SALIB}
50
51${PROG}.sym: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN}
52	sh ${.CURDIR}/newvers.sh ${.CURDIR}/version
53	${COMPILE.c} vers.c
54	${LD} -Ttext ${BOOT_RELOC} -N -e start -o ${PROG}.sym \
55	    ${OBJS} vers.o ${LIBSA} ${LIBZ} ${LIBSA} ${LIBKERN}
56	size ${PROG}.sym
57