Makefile.arm revision 1.16
1#	$NetBSD: Makefile.arm,v 1.16 2002/01/31 09:53:33 chris 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/<arch>/conf/``machineid''
9# after which you should do
10#	config machineid
11# Machine generic makefile changes should be made in
12#	/sys/arch/arm/conf/Makefile.arm
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
20USETOOLS?=	no
21NEED_OWN_INSTALL_TARGET?=no
22.include <bsd.own.mk>
23
24##
25## (1) port identification
26##
27THISARM=	$S/arch/${MACHINE}
28ARM=		$S/arch/arm
29ARM32=		$S/arch/arm32
30GENASSYM=	${ARM}/arm32/genassym.cf
31.-include "$S/arch/${MACHINE}/conf/Makefile.${MACHINE}.inc"
32
33##
34## (2) compile settings
35##
36CPPFLAGS+=	-D${MACHINE}
37## only set if the md Makefile hasn't said otherwise
38LOOSE_PROTOTYPES?= yes
39AFLAGS+=	-x assembler-with-cpp
40
41##
42## (3) libkern and compat
43##
44KERN_AS=	obj
45
46##
47## (4) local objects, compile rules, and dependencies
48##
49MD_OBJS=	${SYSTEM_FIRST_OBJ} locore.o
50MD_CFILES=
51MD_SFILES=	${SYSTEM_FIRST_SFILE} ${ARM}/arm32/locore.S
52
53.if defined(SYSTEM_FIRST_OBJ)
54${SYSTEM_FIRST_OBJ}: ${SYSTEM_FIRST_SFILE} assym.h
55	${NORMAL_S}
56.endif
57
58locore.o: ${ARM}/arm32/locore.S assym.h
59	${NORMAL_S}
60
61##
62## (5) link settings
63##
64LOADADDRESS?=	0xF0000000
65LINKFLAGS_NORMAL=	-X
66
67##
68## (6) port specific target dependencies
69##
70
71# depend on CPU configuration
72cpufunc.o cpufunc_asm.o: Makefile
73
74# depend on DIAGNOSTIC etc.
75cpuswitch.o fault.o machdep.o: Makefile
76
77##
78## (7) misc settings
79##
80
81##
82## (8) config(8) generated machinery
83##
84%INCLUDES
85
86%OBJS
87
88%CFILES
89
90%SFILES
91
92%LOAD
93
94%RULES
95
96##
97## (9) port independent kernel machinery
98##
99.include "$S/conf/Makefile.kern.inc"
100