2 # makefile for CC65 runtime library
5 .SUFFIXES: .o .obj .s .c
7 # Defines for executables. AR is used within this makefile, the others are
8 # passed to the submakes and contain paths relative to the subdirectories
9 # handled by the make subprocesses.
11 AS = ../../src/ca65/ca65
12 CC = ../../src/cc65/cc65
13 LD = ../../src/ld65/ld65
16 ALLTARGETS = apple2lib \
28 #-----------------------------------------------------------------------------
31 for tgt in $(ALLTARGETS); do \
32 $(MAKE) clean $$tgt || exit 1; \
35 #-----------------------------------------------------------------------------
39 for i in apple2 common runtime conio dbg; do \
42 CFLAGS="-Osir -g -T -t apple2 -I../../include" \
43 AFLAGS="-t apple2 -I../../asminc" \
44 $(MAKE) -C $$i || exit 1; \
46 mv apple2/crt0.o apple2.o
47 for i in apple2 common runtime conio dbg; do \
48 $(AR) a apple2.lib $$i/*.o;\
51 #-----------------------------------------------------------------------------
55 for i in atari common runtime conio dbg; do \
58 CFLAGS="-Osir -g -T -t atari -I../../include" \
59 AFLAGS="-t atari -I../../asminc" \
60 $(MAKE) -C $$i || exit 1; \
62 mv atari/crt0.o atari.o
63 for i in atari common runtime conio dbg; do \
64 $(AR) a atari.lib $$i/*.o;\
67 #-----------------------------------------------------------------------------
71 for i in atmos common runtime; do \
74 CFLAGS="-Osir -g -T -t atmos -I../../include" \
75 AFLAGS="-t atmos -I../../asminc" \
76 $(MAKE) -C $$i || exit 1; \
78 mv atmos/crt0.o atmos.o
79 for i in atmos common runtime; do \
80 $(AR) a atmos.lib $$i/*.o;\
83 #-----------------------------------------------------------------------------
87 for i in vic20 cbm common runtime conio dbg; do \
90 AFLAGS="-t vic20 -I../../asminc" \
91 CFLAGS="-Osir -g -T -t vic20 -I../../include" \
92 $(MAKE) -C $$i || exit 1; \
94 mv vic20/crt0.o vic20.o
95 for i in vic20 cbm common runtime conio dbg; do \
96 $(AR) a vic20.lib $$i/*.o;\
99 #-----------------------------------------------------------------------------
103 for i in c64 cbm common runtime conio dbg tgi; do \
107 AFLAGS="-t c64 -I../../asminc" \
108 CFLAGS="-Osir -g -T -t c64 -I../../include" \
109 $(MAKE) -C $$i || exit 1; \
113 for i in c64 cbm common runtime conio dbg tgi; do \
114 $(AR) a c64.lib $$i/*.o;\
117 #-----------------------------------------------------------------------------
121 for i in c128 cbm common runtime conio dbg tgi; do \
124 CFLAGS="-Osir -g -T -t c128 -I../../include" \
125 AFLAGS="-t c128 -I../../asminc" \
126 $(MAKE) -C $$i || exit 1; \
128 mv c128/crt0.o c128.o
129 for i in c128 cbm common runtime conio dbg tgi; do \
130 $(AR) a c128.lib $$i/*.o;\
133 #-----------------------------------------------------------------------------
134 # Commdore P500 / CBM 5x0
137 for i in cbm510 cbm common runtime conio dbg tgi; do \
140 CFLAGS="-Osir -g -T -t cbm510 -I../../include" \
141 AFLAGS="-t cbm510 -I../../asminc" \
142 $(MAKE) -C $$i || exit 1; \
144 mv cbm510/crt0.o cbm510.o
145 for i in cbm510 cbm common runtime conio dbg tgi; do \
146 $(AR) a cbm510.lib $$i/*.o;\
149 #-----------------------------------------------------------------------------
153 for i in cbm610 cbm common runtime conio dbg; do \
156 CFLAGS="-Osir -g -T -t cbm610 -I../../include" \
157 AFLAGS="-t cbm610 -I../../asminc" \
158 $(MAKE) -C $$i || exit 1; \
160 mv cbm610/crt0.o cbm610.o
161 for i in cbm610 cbm common runtime conio dbg; do \
162 $(AR) a cbm610.lib $$i/*.o;\
165 #-----------------------------------------------------------------------------
166 # GEOS on the C64/128
172 CFLAGS="-Osir -g -T -t geos -I../../../include" \
173 AFLAGS="-t geos -I../../../asminc" \
174 $(MAKE) -C geos || exit 1
175 for i in common runtime; do \
179 CFLAGS="-Osir -g -T -t geos -I../../include" \
180 AFLAGS="-t geos -I../../asminc" \
181 $(MAKE) -C $$i || exit 1; \
183 for i in common runtime; do \
184 for objfile in $$i/*.o; do \
185 if [ -f geos/$$objfile ]; then \
186 $(AR) a geos.lib geos/$$objfile; \
188 $(AR) a geos.lib $$objfile; \
193 #-----------------------------------------------------------------------------
197 for i in pet cbm common runtime conio dbg; do \
200 CFLAGS="-Osir -g -T -t pet -I../../include" \
201 AFLAGS="-t pet -I../../asminc" \
202 $(MAKE) -C $$i || exit 1; \
205 for i in pet cbm common runtime conio dbg; do \
206 $(AR) a pet.lib $$i/*.o;\
209 #-----------------------------------------------------------------------------
210 # Commodore C116, C16 and Plus/4
213 for i in plus4 cbm common runtime conio dbg tgi; do \
216 CFLAGS="-Osir -g -T -t plus4 -I../../include" \
217 AFLAGS="-t plus4 -I../../asminc" \
218 $(MAKE) -C $$i || exit 1; \
220 mv plus4/crt0.o plus4.o
221 for i in plus4 cbm common runtime conio dbg tgi; do \
222 $(AR) a plus4.lib $$i/*.o;\
225 #-----------------------------------------------------------------------------
230 @for i in apple2 atari c128 c64 cbm cbm510 cbm610 common conio dbg geos pet plus4 runtime tgi; do \
231 $(MAKE) -C $$i clean; \