]> git.sur5r.net Git - cc65/blob - src/ca65/make/watcom.mak
Added .REPEAT pseudo instruction
[cc65] / src / ca65 / make / watcom.mak
1 #
2 # CA65 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 # ------------------------------------------------------------------------------
57 # Implicit rules
58
59 .c.obj:
60   $(CC) $(CCCFG) $<
61
62
63 # ------------------------------------------------------------------------------
64 # All library OBJ files
65
66 OBJS =  condasm.obj     \
67         ea.obj          \
68         error.obj       \
69         expr.obj        \
70         fragment.obj    \
71         global.obj      \
72         incpath.obj     \
73         instr.obj       \
74         istack.obj      \
75         listing.obj     \
76         macpack.obj     \
77         macro.obj       \
78         main.obj        \
79         nexttok.obj     \
80         objcode.obj     \
81         objfile.obj     \
82         options.obj     \
83         pseudo.obj      \
84         repeat.obj      \
85         scanner.obj     \
86         symtab.obj      \
87         toklist.obj     \
88         ulabel.obj
89
90 LIBS = ..\common\common.lib
91
92
93 # ------------------------------------------------------------------------------
94 # Main targets
95
96 all:            ca65
97
98 ca65:           ca65.exe
99
100
101 # ------------------------------------------------------------------------------
102 # Other targets
103
104
105 ca65.exe:       $(OBJS) $(LIBS)
106         $(LD) system $(SYSTEM) @&&|
107 DEBUG ALL
108 OPTION QUIET
109 NAME $<
110 FILE condasm.obj
111 FILE ea.obj
112 FILE error.obj
113 FILE expr.obj
114 FILE fragment.obj
115 FILE global.obj
116 FILE incpath.obj
117 FILE instr.obj
118 FILE istack.obj
119 FILE listing.obj
120 FILE macpack.obj
121 FILE macro.obj
122 FILE main.obj
123 FILE nexttok.obj
124 FILE objcode.obj
125 FILE objfile.obj
126 FILE options.obj
127 FILE pseudo.obj
128 FILE repeat.obj
129 FILE scanner.obj
130 FILE symtab.obj
131 FILE toklist.obj
132 FILE ulabel.obj
133 LIBRARY ..\common\common.lib
134 |
135
136 clean:
137         @if exist *.obj del *.obj
138         @if exist ca65.exe del ca65.exe
139
140 strip:
141         @-wstrip ca65.exe
142