]> git.sur5r.net Git - cc65/blob - libsrc/c128/Makefile
18b7af1a7616fd7bb076c43f1012b9e0ccbc3d80
[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) -o $@ -t module $^
31
32 %.joy:  %.o ../runtime/zeropage.o
33         @$(LD) -o $@ -t module $^
34
35 %.mou:  %.o ../runtime/zeropage.o
36         @$(LD) -o $@ -t module $^
37
38 %.ser:  %.o ../runtime/zeropage.o
39         @$(LD) -o $@ -t module $^
40
41 %.tgi:  %.o ../runtime/zeropage.o
42         @$(LD) -o $@ -t module $^
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         devnum.o                \
57         fast.o                  \
58         get_tv.o                \
59         joy_stddrv.o            \
60         kbhit.o                 \
61         kernal.o                \
62         mainargs.o              \
63         mcbdefault.o            \
64         mouse_stddrv.o          \
65         randomize.o             \
66         revers.o                \
67         slow.o                  \
68         systime.o               \
69         sysuname.o              \
70         tgi_colors.o            \
71         tgi_mode_table.o        \
72         toggle_videomode.o      \
73         videomode.o
74
75 #--------------------------------------------------------------------------
76 # Drivers
77
78 EMDS =  c128-georam.emd         \
79         c128-ram.emd            \
80         c128-ram2.emd           \
81         c128-ramcart.emd        \
82         c128-reu.emd            \
83         c128-vdc.emd
84
85 JOYS =  c128-ptvjoy.joy         \
86         c128-stdjoy.joy
87
88 MOUS =  c128-1351.mou           \
89         c128-joymouse.mou       \
90         c128-potmouse.mou
91
92 SERS =  c128-swlink.ser
93
94 TGIS =  c128-640-200-2.tgi      \
95         c128-640-480-2.tgi
96
97 #--------------------------------------------------------------------------
98 # Targets
99
100 .PHONY: all clean zap
101
102 all:    $(OBJS) $(EMDS) $(JOYS) $(MOUS) $(SERS) $(TGIS)
103
104 ../runtime/zeropage.o:
105         $(MAKE) -C $(dir $@) $(notdir $@)
106
107 clean:
108         @$(RM) $(OBJS) $(EMDS:.emd=.o) $(JOYS:.joy=.o) $(MOUS:.mou=.o) $(SERS:.ser=.o) $(TGIS:.tgi=.o)
109
110
111 zap:    clean
112         @$(RM) $(EMDS) $(JOYS) $(MOUS) $(SERS) $(TGIS)
113
114