Makefile.mvme68k revision 1.68 1 1.68 rin # $NetBSD: Makefile.mvme68k,v 1.68 2018/09/22 12:24:02 rin Exp $
2 1.1 chuck
3 1.1 chuck # Makefile for NetBSD
4 1.1 chuck #
5 1.1 chuck # This makefile is constructed from a machine description:
6 1.1 chuck # config machineid
7 1.1 chuck # Most changes should be made in the machine description
8 1.1 chuck # /sys/arch/mvme68k/conf/``machineid''
9 1.1 chuck # after which you should do
10 1.6 mycroft # config machineid
11 1.1 chuck # Machine generic makefile changes should be made in
12 1.1 chuck # /sys/arch/mvme68k/conf/Makefile.mvme68k
13 1.1 chuck # after which config should be rerun for all machines of that type.
14 1.55 atatat #
15 1.55 atatat # To specify debugging, add the config line: makeoptions DEBUG="-g"
16 1.55 atatat # A better way is to specify -g only for a few files.
17 1.55 atatat #
18 1.55 atatat # makeoptions DEBUGLIST="uvm* trap if_*"
19 1.52 thorpej
20 1.52 thorpej MACHINE_ARCH=m68k
21 1.53 jmc USETOOLS?= no
22 1.55 atatat NEED_OWN_INSTALL_TARGET?=no
23 1.53 jmc .include <bsd.own.mk>
24 1.1 chuck
25 1.55 atatat ##
26 1.55 atatat ## (1) port identification
27 1.55 atatat ##
28 1.55 atatat MVME68K= $S/arch/mvme68k
29 1.59 christos GENASSYM_CONF= ${MVME68K}/mvme68k/genassym.cf
30 1.55 atatat
31 1.55 atatat ##
32 1.55 atatat ## (2) compile settings
33 1.55 atatat ##
34 1.55 atatat CPPFLAGS+= -Dmvme68k
35 1.49 scw .if empty(IDENT:M-DMVME172) && empty(IDENT:M-DMVME177)
36 1.49 scw .if empty(IDENT:M-DMVME147)
37 1.49 scw CMACHFLAGS= -m68040
38 1.49 scw .else
39 1.49 scw CMACHFLAGS= -m68030
40 1.49 scw .endif
41 1.49 scw .else
42 1.49 scw .if empty(IDENT:M-DMVME147) && empty(IDENT:M-DMVME162) && empty(IDENT:M-DMVME167)
43 1.67 mrg CMACHFLAGS= -m68060 -Wa,-march=68030 -Wa,-m68030 -Wa,-mcpu=68030 -Wa,-m68851
44 1.49 scw .else
45 1.67 mrg CMACHFLAGS= -m68020-60 -Wa,-m68030 -Wa,-mcpu=68030 -Wa,-m68851
46 1.49 scw .endif
47 1.49 scw .endif
48 1.55 atatat CFLAGS+= ${CMACHFLAGS} -msoft-float
49 1.62 joerg AFLAGS+= -x assembler-with-cpp
50 1.25 thorpej
51 1.55 atatat ##
52 1.55 atatat ## (3) libkern and compat
53 1.55 atatat ##
54 1.68 rin OPT_MODULAR= %MODULAR%
55 1.1 chuck
56 1.55 atatat ##
57 1.55 atatat ## (4) local objects, compile rules, and dependencies
58 1.55 atatat ##
59 1.55 atatat # for the Motorola 68040 Floating Point Software Product
60 1.1 chuck .include "$S/arch/m68k/fpsp/Makefile.inc"
61 1.49 scw
62 1.55 atatat # for the Motorola 68060 Software Support Package
63 1.49 scw .include "$S/arch/m68k/060sp/Makefile.inc"
64 1.1 chuck
65 1.66 uebayasi MD_OBJS= locore.o
66 1.66 uebayasi MD_LIBS= ${FPSP}
67 1.55 atatat MD_CFILES=
68 1.55 atatat MD_SFILES= ${MVME68K}/mvme68k/locore.s
69 1.1 chuck
70 1.1 chuck
71 1.55 atatat locore.o: ${MVME68K}/mvme68k/locore.s assym.h
72 1.55 atatat ${NORMAL_S}
73 1.55 atatat ##
74 1.55 atatat ## (5) link settings
75 1.55 atatat ##
76 1.55 atatat LINKFORMAT= -n
77 1.55 atatat TEXTADDR?= 8000
78 1.55 atatat
79 1.55 atatat ##
80 1.55 atatat ## (6) port specific target dependencies
81 1.55 atatat ##
82 1.55 atatat
83 1.55 atatat # depend on CPU configuration
84 1.55 atatat locore.o pmap.o sys_machdep.o trap.o: Makefile
85 1.55 atatat
86 1.61 joerg copy.o copypage.o lock_stubs.o: assym.h
87 1.61 joerg
88 1.55 atatat ##
89 1.55 atatat ## (7) misc settings
90 1.55 atatat ##
91 1.55 atatat
92 1.55 atatat ##
93 1.55 atatat ## (8) config(8) generated machinery
94 1.55 atatat ##
95 1.55 atatat %INCLUDES
96 1.13 mycroft
97 1.1 chuck %OBJS
98 1.1 chuck
99 1.1 chuck %CFILES
100 1.1 chuck
101 1.6 mycroft %SFILES
102 1.6 mycroft
103 1.1 chuck %LOAD
104 1.1 chuck
105 1.55 atatat %RULES
106 1.1 chuck
107 1.55 atatat ##
108 1.55 atatat ## (9) port independent kernel machinery
109 1.55 atatat ##
110 1.55 atatat .include "$S/conf/Makefile.kern.inc"
111 1.58 thorpej
112 1.58 thorpej ##
113 1.58 thorpej ## (10) Appending make options.
114 1.58 thorpej ##
115 1.58 thorpej %MAKEOPTIONSAPPEND
116