Makefile revision 1.2
1#	$OpenBSD: Makefile,v 1.2 2023/03/13 20:20:13 miod Exp $
2#	$NetBSD: Makefile,v 1.17 1997/04/17 07:27:46 thorpej Exp $
3
4MAN?=	boot.8
5MANSUBDIR=alpha
6
7.if ${MACHINE} == "alpha"
8S=	${.CURDIR}/../../../..
9
10PROG=	boot
11INSTALL_STRIP=
12BINMODE= 444
13
14# Needs to be first
15SRCS=	start.S
16
17SRCS+=	conf.c devopen.c disk.c machdep.c prom.c promcons.c \
18	prom_swpal.S rpcc.S
19
20BOOT_RELOC = ${SECONDARY_LOAD_ADDRESS}
21
22CLEANFILES+= ${PROG}.sym ${PROG}.nosym
23
24.PATH: ${.CURDIR}/..
25SRCS+=	OSFpal.c loadfile_subr.c prom_disp.S
26
27.PATH: ${S}/stand/boot
28SRCS+=	boot.c cmd.c vars.c
29
30.PATH:	${S}/lib/libkern/arch/alpha ${S}/lib/libkern
31SRCS+=	__divlu.S __remqu.S __reml.S strlen.c bzero.c __divl.S __divqu.S \
32	__remlu.S __divq.S __remq.S
33SRCS+=	strlcpy.c
34
35.PATH:	${S}/lib/libkern/arch/alpha ${S}/lib/libsa
36SRCS+=	loadfile.c arc4.c ctime.c hexdump.c strtol.c strtoll.c ufs2.c
37
38DEFNS= -DCOMPAT_UFS
39
40AFLAGS += -DASSEMBLER ${DEFNS} -fno-pie
41CPPFLAGS += -I${.CURDIR}/../.. -I${.CURDIR} -I${S} ${DEFNS}
42CFLAGS = -Oz -Werror -mno-fp-regs -fno-pie -msmall-data -msmall-text
43
44${PROG}.nosym: ${PROG}.sym
45	cp ${PROG}.sym ${PROG}.nosym
46	${STRIP} ${PROG}.nosym
47
48${PROG}: ${PROG}.nosym
49	${OBJCOPY} --output-target=binary ${PROG}.nosym ${PROG}
50
51.include <bsd.prog.mk>
52
53### find out what to use for libz
54Z_AS=		library
55ZDST=		${.CURDIR}/../libz/${__objdir}
56.include "${.CURDIR}/../libz/Makefile.inc"
57LIBZ=		${ZLIB}
58
59### find out what to use for libsa
60SA_AS=		library
61SADST=		${.CURDIR}/../libsa/${__objdir}
62SAREL=
63SA_ZLIB=	yes
64.include "${.CURDIR}/../libsa/Makefile.inc"
65LIBSA=		${SALIB}
66
67${PROG}.sym: ${OBJS} ${LIBSA} ${LIBZ}
68	${LD} -nopie -znorelro -Ttext ${BOOT_RELOC} -N -e start \
69	    -o ${PROG}.sym ${OBJS} ${LIBSA} ${LIBZ} ${LIBSA}
70	size ${PROG}.sym
71
72.else
73NOPROG=
74.include <bsd.prog.mk>
75.endif
76
77