]> git.sur5r.net Git - cc65/blob - src/cc65/make/watcom.mak
Initialize translation tables
[cc65] / src / cc65 / make / watcom.mak
1 #
2 # CC65 Makefile for the Watcom compiler
3 #
4
5 # ------------------------------------------------------------------------------
6 # Generic stuff
7
8 .AUTODEPEND
9 .SUFFIXES       .ASM .C .CC .CPP
10 .SWAP
11
12 AR      = WLIB
13 LD      = WLINK
14
15 !if !$d(TARGET)
16 !if $d(__OS2__)
17 TARGET = OS2
18 !else
19 TARGET = NT
20 !endif
21 !endif
22
23 # target specific macros.
24 !if $(TARGET)==OS2
25
26 # --------------------- OS2 ---------------------
27 SYSTEM = os2v2
28 CC = WCC386
29 CCCFG  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
30
31 !elif $(TARGET)==DOS32
32
33 # -------------------- DOS4G --------------------
34 SYSTEM = dos4g
35 CC = WCC386
36 CCCFG  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
37
38 !elif $(TARGET)==DOS
39
40 # --------------------- DOS ---------------------
41 SYSTEM = dos
42 CC = WCC
43 CCCFG  = -bt=$(TARGET) -d1 -onatx -zp2 -2 -ml -zq -w2
44
45 !elif $(TARGET)==NT
46
47 # --------------------- NT ----------------------
48 SYSTEM = nt
49 CC = WCC386
50 CCCFG  = -bt=$(TARGET) -d1 -onatx -zp4 -5 -zq -w2
51
52 !else
53 !error
54 !endif
55
56 # Add the include dir
57 CCCFG   = $(CCCFG) -i=..\common
58
59
60 # ------------------------------------------------------------------------------
61 # Implicit rules
62
63 .c.obj:
64   $(CC) $(CCCFG) $<
65
66
67 # ------------------------------------------------------------------------------
68 # All library OBJ files
69
70 OBJS =  anonname.obj    \
71         asmcode.obj     \
72         asmlabel.obj    \
73         asmline.obj     \
74         codegen.obj     \
75         compile.obj     \
76         cpu.obj         \
77         datatype.obj    \
78         declare.obj     \
79         declattr.obj    \
80         error.obj       \
81         expr.obj        \
82         exprheap.obj    \
83         exprnode.obj    \
84         funcdesc.obj    \
85         function.obj    \
86         global.obj      \
87         goto.obj        \
88         ident.obj       \
89         incpath.obj     \
90         input.obj       \
91         litpool.obj     \
92         locals.obj      \
93         loop.obj        \
94         macrotab.obj    \
95         main.obj        \
96         optimize.obj    \
97         pragma.obj      \
98         preproc.obj     \
99         stmt.obj        \
100         scanner.obj     \
101         segname.obj     \
102         stdfunc.obj     \
103         symentry.obj    \
104         symtab.obj      \
105         typecmp.obj     \
106         util.obj
107
108 LIBS = ..\common\common.lib
109
110 .PRECIOUS $(OBJS:.obj=.c)
111
112 # ------------------------------------------------------------------------------
113 # Main targets
114
115 all:            cc65
116
117 cc65:           cc65.exe
118
119
120 # ------------------------------------------------------------------------------
121 # Other targets
122
123
124 cc65.exe:       $(OBJS) $(LIBS)
125         $(LD) system $(SYSTEM) @&&|
126 DEBUG ALL
127 OPTION QUIET
128 NAME $<
129 FILE anonname.obj
130 FILE asmcode.obj
131 FILE asmlabel.obj
132 FILE asmline.obj
133 FILE codegen.obj
134 FILE compile.obj
135 FILE cpu.obj
136 FILE datatype.obj
137 FILE declare.obj
138 FILE declattr.obj
139 FILE error.obj
140 FILE expr.obj
141 FILE exprheap.obj
142 FILE exprnode.obj
143 FILE funcdesc.obj
144 FILE function.obj
145 FILE global.obj
146 FILE goto.obj
147 FILE ident.obj
148 FILE incpath.obj
149 FILE input.obj
150 FILE litpool.obj
151 FILE locals.obj
152 FILE loop.obj
153 FILE macrotab.obj
154 FILE main.obj
155 FILE optimize.obj
156 FILE pragma.obj
157 FILE preproc.obj
158 FILE stmt.obj
159 FILE scanner.obj
160 FILE segname.obj
161 FILE stdfunc.obj
162 FILE symentry.obj
163 FILE symtab.obj
164 FILE typecmp.obj
165 FILE util.obj
166 LIBRARY ..\common\common.lib
167 |
168
169 clean:
170         @if exist *.obj del *.obj
171         @if exist cc65.exe del cc65.exe
172
173 strip:
174         @-wstrip cc65.exe
175
176