2 # makefile for CC65 runtime library
7 #--------------------------------------------------------------------------
12 AS = ../../src/ca65/ca65
13 CC = ../../src/cc65/cc65
14 CO = ../../src/co65/co65
15 LD = ../../src/ld65/ld65
17 AFLAGS = -t $(SYS) --forget-inc-paths -I../../asminc
18 CFLAGS = -Osir -g -T -t $(SYS) --forget-inc-paths -I . -I ../../include
20 #--------------------------------------------------------------------------
25 @$(AS) -o $@ $(AFLAGS) $(*).s
28 @$(AS) -g -o $@ $(AFLAGS) $<
31 @$(CO) -o $(*)-emd.s --code-label _$(subst -,_,$(*)) $<
32 @$(AS) -o $@ $(AFLAGS) $(*)-emd.s
35 @$(CO) -o $(*)-joy.s --code-label _$(subst -,_,$(*)) $<
36 @$(AS) -o $@ $(AFLAGS) $(*)-joy.s
39 @$(CO) -o $(*)-tgi.s --code-label _$(subst -,_,$(*)) $<
40 @$(AS) -o $@ $(AFLAGS) $(*)-tgi.s
42 %.emd: %.o ../runtime/zeropage.o
43 @$(LD) -o $@ -t module $^
45 %.joy: %.o ../runtime/zeropage.o
46 @$(LD) -o $@ -t module $^
48 %.tgi: %.o ../runtime/zeropage.o
49 @$(LD) -o $@ -t module $^
51 #--------------------------------------------------------------------------
89 #--------------------------------------------------------------------------
94 JOYS = pet-ptvjoy.joy pet-stdjoy.joy
98 #--------------------------------------------------------------------------
101 .PHONY: all clean zap
103 all: $(OBJS) $(EMDS) $(JOYS) $(TGIS)
105 ../runtime/zeropage.o:
106 $(MAKE) -C $(dir $@) $(notdir $@)
110 $(EMDS:.emd=.o) $(EMDS:.emd=-emd.s) \
111 $(JOYS:.joy=.o) $(JOYS:.joy=-joy.s) \
112 $(TGIS:.tgi=.o) $(TGIS:.tgi=-tgi.s)
115 @$(RM) $(EMDS) $(JOYS) $(TGIS)