xref: /netbsd-src/sys/arch/alpha/conf/Makefile.alpha (revision 8585484ef87f5a04d32332313cdb799625f4faf8)
1#	$NetBSD: Makefile.alpha,v 1.83 2013/03/10 07:18:20 christos 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.if !empty(OPT_MODULAR)
46KERN_AS=	obj
47.else
48KERN_AS=	library
49.endif
50
51##
52## (4) local objects, compile rules, and dependencies
53##
54MD_OBJS=	locore.o transfer.o
55MD_CFILES=
56MD_SFILES=	${ALPHA}/alpha/locore.s ${ALPHA}/alpha/transfer.s
57
58locore.o: ${ALPHA}/alpha/locore.s assym.h
59	${NORMAL_S}
60
61transfer.o: ${ALPHA}/alpha/transfer.s
62	${NORMAL_S}
63
64lock_stubs.o: assym.h
65
66##
67## (5) link settings
68##
69LINKFORMAT=	-N
70TEXTADDR?=	fffffc0000430000
71ENTRYPOINT=	__transfer
72EXTRA_LINKFLAGS=	-G 4
73STRIPFLAGS=	-g -X
74
75##
76## (6) port specific target dependencies
77##
78
79# depend on CPU configuration
80clock.o apecs.o cia.o lca.o ioasic.o icasic.o: Makefile
81
82##
83## (7) misc settings
84##
85MKDEP_AFLAGS=	-x assembler-with-cpp ${AFLAGS}
86
87##
88## (8) config(8) generated machinery
89##
90%INCLUDES
91
92%OBJS
93
94%CFILES
95
96%SFILES
97
98%LOAD
99
100%RULES
101
102##
103## (9) port independent kernel machinery
104##
105.include "$S/conf/Makefile.kern.inc"
106
107##
108## (10) Appending make options.
109##
110%MAKEOPTIONSAPPEND
111