]> git.sur5r.net Git - cc65/blob - libsrc/Makefile
3ff1bad4fd75208c9a4137821e7592c695ce17d0
[cc65] / libsrc / Makefile
1 #
2 # makefile for CC65 runtime library
3 #
4
5 .SUFFIXES: .o .obj .s .c
6
7 # Defines used by the submakes:
8 export CC = ../../src/cc65/cc65
9 export AS = ../../src/ca65/ca65
10
11 # Define used within this makefile
12 AR = ../src/ar65/ar65
13
14 # List of all targets
15 ALLTARGETS =    apple2lib       \
16                 atarilib        \
17                 c64lib          \
18                 c128lib         \
19                 cbm610lib       \
20                 geoslib         \
21                 petlib          \
22                 plus4lib
23
24 #-----------------------------------------------------------------------------
25
26 all:
27         for tgt in $(ALLTARGETS); do            \
28             $(MAKE) clean $$tgt || exit 1;      \
29         done
30
31 #-----------------------------------------------------------------------------
32 # Apple ][
33
34 apple2lib:
35         export CFLAGS="-Osir -g -t apple2 -I../../include";\
36         for i in apple2 common runtime conio dbg; do \
37             $(MAKE) -C $$i || exit 1; \
38         done
39         mv apple2/crt0.o apple2.o
40         for i in apple2 common runtime conio dbg; do \
41             $(AR) a apple2.lib $$i/*.o;\
42         done
43
44 #-----------------------------------------------------------------------------
45 # Atari
46
47 atarilib:
48         export CFLAGS="-Osir -g -t atari -I../../include";\
49         for i in atari common runtime conio dbg; do \
50             $(MAKE) -C $$i || exit 1; \
51         done
52         mv atari/crt0.o atari.o
53         for i in atari common runtime conio dbg; do \
54             $(AR) a atari.lib $$i/*.o;\
55         done
56
57 #-----------------------------------------------------------------------------
58 # C64
59
60 c64lib:
61         export CFLAGS="-Osir -g -t c64 -I../../include";\
62         for i in c64 cbm common runtime conio dbg; do \
63             $(MAKE) -C $$i || exit 1; \
64         done
65         mv c64/crt0.o c64.o
66         for i in c64 cbm common runtime conio dbg; do \
67             $(AR) a c64.lib $$i/*.o;\
68         done
69
70 #-----------------------------------------------------------------------------
71 # C128
72
73 c128lib:
74         export CFLAGS="-Osir -g -t c128 -I../../include";\
75         for i in c128 cbm common runtime conio dbg; do \
76             $(MAKE) -C $$i || exit 1; \
77         done
78         mv c128/crt0.o c128.o
79         for i in c128 cbm common runtime conio dbg; do \
80             $(AR) a c128.lib $$i/*.o;\
81         done
82
83 #-----------------------------------------------------------------------------
84 # PET-II series
85
86 cbm610lib:
87         export CFLAGS="-Osir -g -t cbm610 -I../../include";\
88         for i in cbm610 cbm common runtime conio dbg; do \
89             $(MAKE) -C $$i || exit 1; \
90         done
91         mv cbm610/crt0.o cbm610.o
92         for i in cbm610 cbm common runtime conio dbg; do \
93             $(AR) a cbm610.lib $$i/*.o;\
94         done
95
96 #-----------------------------------------------------------------------------
97 # GEOS on the C64/128
98
99 geoslib:
100         export CFLAGS="-Osir -g -t geos -I../../include";\
101         for i in geos common runtime; do \
102             $(MAKE) -C $$i || exit 1; \
103         done
104         for i in common runtime; do \
105             $(AR) a geos.lib $$i/*.o;\
106         done
107
108 #-----------------------------------------------------------------------------
109 # CBM PET machines
110
111 petlib:
112         export CFLAGS="-Osir -g -t pet -I../../include";\
113         for i in pet cbm common runtime conio dbg; do \
114             $(MAKE) -C $$i || exit 1; \
115         done
116         mv pet/crt0.o pet.o
117         for i in pet cbm common runtime conio dbg; do \
118             $(AR) a pet.lib $$i/*.o;\
119         done
120
121 #-----------------------------------------------------------------------------
122 # Commodore C116, C16 and Plus/4
123
124 plus4lib:
125         export CFLAGS="-Osir -g -t plus4 -I../../include";\
126         for i in plus4 cbm common runtime conio dbg; do \
127             $(MAKE) -C $$i || exit 1; \
128         done
129         mv plus4/crt0.o plus4.o
130         for i in plus4 cbm common runtime conio dbg; do \
131             $(AR) a plus4.lib $$i/*.o;\
132         done
133
134 #-----------------------------------------------------------------------------
135 # Dummy targets
136
137 .PHONY: clean
138 clean:
139         @for i in apple2 atari c128 c64 cbm cbm610 common conio dbg geos pet plus4 runtime; do  \
140            $(MAKE) -C $$i clean;                                                                        \
141         done
142
143 .PHONY: zap
144 zap:    clean
145         @rm -f *.lib
146
147
148
149