xref: /openbsd/sys/arch/alpha/stand/boot/Makefile (revision 9b7c3dbb)
1#	$OpenBSD: Makefile,v 1.21 2016/07/30 03:25:48 guenther Exp $
2#	$NetBSD: Makefile,v 1.17 1997/04/17 07:27:46 thorpej Exp $
3
4S=	${.CURDIR}/../../../..
5
6.PATH: ${.CURDIR}/..
7
8PROG = boot
9
10SRCS = start.S boot.c disk.c conf.c prom.c prom_disp.S OSFpal.c
11SRCS+= devopen.c filesystem.c loadfile_subr.c prom_swpal.S
12NOMAN=
13INSTALL_STRIP=
14BINMODE= 444
15
16BOOT_RELOC = ${SECONDARY_LOAD_ADDRESS}
17
18CLEANFILES+= vers.c vers.o ${PROG}.sym ${PROG}.nosym
19
20.PATH:	${S}/lib/libkern/arch/alpha ${S}/lib/libkern
21SRCS+=	__divlu.S __remqu.S __reml.S strlen.c bzero.c __divl.S __divqu.S \
22	__remlu.S
23
24.PATH:	${S}/lib/libkern/arch/alpha ${S}/lib/libsa
25SRCS+=	loadfile.c
26
27DEFNS= -DCOMPAT_UFS
28
29AFLAGS += -DASSEMBLER ${DEFNS} -fno-pie
30CPPFLAGS += -I${.CURDIR}/../../../../lib/libsa -I${.CURDIR}/../.. -I${S} ${DEFNS}
31CFLAGS = -Os -Werror -mno-fp-regs -fno-pie \
32	-msmall-data -msmall-text
33
34${PROG}.nosym: ${PROG}.sym
35	cp ${PROG}.sym ${PROG}.nosym
36	strip ${PROG}.nosym
37
38${PROG}: ${PROG}.nosym
39	objcopy --output-target=binary ${PROG}.nosym ${PROG}
40
41# no lint here (yet?)
42lint:
43
44.include <bsd.prog.mk>
45
46### find out what to use for libz
47Z_AS=		library
48ZDST=		${.CURDIR}/../libz/${__objdir}
49.include "${.CURDIR}/../libz/Makefile.inc"
50LIBZ=		${ZLIB}
51
52### find out what to use for libsa
53SA_AS=		library
54SADST=		${.CURDIR}/../libsa/${__objdir}
55SAREL=
56SA_ZLIB=	yes
57.include "${.CURDIR}/../libsa/Makefile.inc"
58LIBSA=		${SALIB}
59
60${PROG}.sym: ${OBJS} ${LIBSA} ${LIBZ}
61	sh ${.CURDIR}/newvers.sh ${.CURDIR}/version
62	${COMPILE.c} vers.c
63	${LD} -nopie -znorelro -Ttext ${BOOT_RELOC} -N -e start \
64	    -o ${PROG}.sym ${OBJS} vers.o ${LIBSA} ${LIBZ} ${LIBSA}
65	size ${PROG}.sym
66