1#         $NetBSD: Makefile.alpha,v 1.88 2023/07/26 03:41:57 rin Exp $
2
3# Makefile for NetBSD
4#
5# This makefile is constructed from a machine description:
6#         config machineid
7# Most changes should be made in the machine description
8#         /sys/arch/alpha/conf/``machineid''
9# after which you should do
10#         config machineid
11# Machine generic makefile changes should be made in
12#         /sys/arch/alpha/conf/Makefile.alpha
13# after which config should be rerun for all machines of that type.
14#
15# To specify debugging, add the config line: makeoptions DEBUG="-g"
16# A better way is to specify -g only for a few files.
17#
18#         makeoptions DEBUGLIST="uvm* trap if_*"
19
20MACHINE_ARCH=       alpha
21USETOOLS?=          no
22NEED_OWN_INSTALL_TARGET?=no
23.include <bsd.own.mk>
24
25##
26## (1) port identification
27##
28ALPHA=              $S/arch/alpha
29GENASSYM_CONF=      ${ALPHA}/alpha/genassym.cf
30
31##
32## (2) compile settings
33##
34CPPFLAGS+=          -Dalpha
35CFLAGS+=  -mno-fp-regs
36AFLAGS+=  -traditional
37
38NORMAL_S= ${CPP} ${AFLAGS} ${CPPFLAGS} $< | ${TOOL_SED} -e 's,^\#.*,,' | \
39                    ${AS} -o ${.TARGET}
40
41##
42## (3) libkern and compat
43##
44OPT_MODULAR=        %MODULAR%
45
46##
47## (4) local objects, compile rules, and dependencies
48##
49MD_OBJS=  locore.o transfer.o
50MD_CFILES=
51MD_SFILES=          ${ALPHA}/alpha/locore.s ${ALPHA}/alpha/transfer.s
52
53locore.o: ${ALPHA}/alpha/locore.s assym.h
54          ${NORMAL_S}
55
56transfer.o: ${ALPHA}/alpha/transfer.s
57          ${NORMAL_S}
58
59lock_stubs.o: assym.h
60
61##
62## (5) link settings
63##
64TEXTADDR?=          fffffc0000a00000
65ENTRYPOINT=         __transfer
66KERNLDSCRIPT?=      ${ALPHA}/conf/kern.ldscript
67EXTRA_LINKFLAGS=    -G 4
68OBJCOPY_STRIPFLAGS= -g -X
69
70##
71## (6) port specific target dependencies
72##
73
74##
75## (7) misc settings
76##
77MKDEP_AFLAGS=       -x assembler-with-cpp ${AFLAGS}
78
79##
80## (8) config(8) generated machinery
81##
82%INCLUDES
83
84%OBJS
85
86%CFILES
87
88%SFILES
89
90%LOAD
91
92%RULES
93
94##
95## (9) port independent kernel machinery
96##
97.include "$S/conf/Makefile.kern.inc"
98
99##
100## (10) Appending make options.
101##
102%MAKEOPTIONSAPPEND
103