]> git.sur5r.net Git - cc65/blob - libsrc/c128/Makefile
248c36fd29a013d289fa0e90e19179c498d412ca
[cc65] / libsrc / c128 / Makefile
1 #
2 # makefile for CC65 runtime library
3 #
4
5 .SUFFIXES: .o .s .c
6
7 #--------------------------------------------------------------------------
8 # Programs and flags
9
10 SYS     = c128
11
12 AS      = ../../src/ca65/ca65
13 CC      = ../../src/cc65/cc65
14 LD      = ../../src/ld65/ld65
15
16 AFLAGS  = -t $(SYS) --forget-inc-paths -I../../asminc
17 CFLAGS  = -Osir -g -T -t $(SYS) --forget-inc-paths -I . -I ../../include
18
19 #--------------------------------------------------------------------------
20 # Rules
21
22 %.o:    %.c
23         @$(CC) $(CFLAGS) $<
24         @$(AS) -o $@ $(AFLAGS) $(*).s
25
26 %.o:    %.s
27         @$(AS) -g -o $@ $(AFLAGS) $<
28
29 %.emd:  %.o ../runtime/zeropage.o
30         @$(LD) -t module -o $@ $^
31
32 %.joy:  %.o ../runtime/zeropage.o
33         @$(LD) -t module -o $@ $^
34
35 %.mou:  %.o ../runtime/zeropage.o
36         @$(LD) -t module -o $@ $^
37
38 %.ser:  %.o ../runtime/zeropage.o
39         @$(LD) -t module -o $@ $^
40
41 %.tgi:  %.o ../runtime/zeropage.o
42         @$(LD) -t module -o $@ $^
43
44 #--------------------------------------------------------------------------
45 # Object files
46
47 OBJS =  _scrsize.o              \
48         break.o                 \
49         c64mode.o               \
50         cgetc.o                 \
51         clrscr.o                \
52         conio.o                 \
53         crt0.o                  \
54         color.o                 \
55         cputc.o                 \
56         fast.o                  \
57         get_tv.o                \
58         joy_stddrv.o            \
59         kbhit.o                 \
60         kernal.o                \
61         mainargs.o              \
62         mcbdefault.o            \
63         mouse_stddrv.o          \
64         randomize.o             \
65         revers.o                \
66         slow.o                  \
67         systime.o               \
68         sysuname.o              \
69         tgi_mode_table.o        \
70         toggle_videomode.o      \
71         videomode.o
72
73 #--------------------------------------------------------------------------
74 # Drivers
75
76 EMDS =  c128-georam.emd         \
77         c128-ram.emd            \
78         c128-ram2.emd           \
79         c128-ramcart.emd        \
80         c128-reu.emd            \
81         c128-vdc.emd
82
83 JOYS =  c128-ptvjoy.joy         \
84         c128-stdjoy.joy
85
86 MOUS =  c128-1351.mou           \
87         c128-joymouse.mou       \
88         c128-potmouse.mou
89
90 SERS =  c128-swlink.ser
91
92 TGIS =  c128-640-200-2.tgi      \
93         c128-640-480-2.tgi
94
95 #--------------------------------------------------------------------------
96 # Targets
97
98 .PHONY: all clean zap
99
100 all:    $(OBJS) $(EMDS) $(JOYS) $(MOUS) $(SERS) $(TGIS)
101
102 ../runtime/zeropage.o:
103         $(MAKE) -C $(dir $@) $(notdir $@)
104
105 clean:
106         @$(RM) $(OBJS) $(EMDS:.emd=.o) $(JOYS:.joy=.o) $(MOUS:.mou=.o) $(SERS:.ser=.o) $(TGIS:.tgi=.o)
107
108
109 zap:    clean
110         @$(RM) $(EMDS) $(JOYS) $(MOUS) $(SERS) $(TGIS)
111
112