7 FLAGS= -D__LINUX_ALSA__ -c $(CFLAGS)
8 LIBS=-lasound -lstdc++ -ldl -lm
11 ifneq ($(CHUCK_DEBUG),)
15 ifneq ($(CHUCK_STRICT),)
19 #-----------------------------------------------------------------------------
20 # by default, ChucK on linux needs libsndfile...
21 # comment the next 3 lines to use a pre-configured libsndfile
22 #-----------------------------------------------------------------------------
23 FLAGS+= -D__CK_SNDFILE_NATIVE__
27 OBJS= chuck.tab.o chuck.yy.o chuck_absyn.o chuck_parse.o chuck_errmsg.o \
28 chuck_frame.o chuck_symbol.o chuck_table.o chuck_utils.o \
29 chuck_vm.o chuck_instr.o chuck_scan.o chuck_type.o chuck_emit.o \
30 chuck_compile.o chuck_dl.o chuck_oo.o chuck_lang.o chuck_ugen.o \
31 chuck_main.o chuck_otf.o chuck_stats.o chuck_bbq.o chuck_shell.o \
32 chuck_console.o chuck_globals.o digiio_rtaudio.o hidio_sdl.o \
33 midiio_rtmidi.o rtaudio.o rtmidi.o ugen_osc.o ugen_filter.o \
34 ugen_stk.o ugen_xxx.o ulib_machine.o ulib_math.o ulib_std.o \
35 ulib_opsc.o util_buffers.o util_console.o util_string.o util_thread.o \
36 util_opsc.o util_math.o util_network.o util_raw.o util_xforms.o \
37 util_hid.o uana_xform.o uana_extract.o $(SF_OBJ)
40 $(CXX) -o chuck $(OBJS) $(LIBS)
42 chuck.tab.o: chuck.tab.c
43 $(CC) $(FLAGS) chuck.tab.c
46 $(YACC) -dv -b chuck chuck.y
48 chuck.tab.h: chuck.tab.c
49 echo "chuck.tab.h was created at the same time as chuck.tab.c"
51 chuck.yy.o: chuck.yy.c chuck.tab.h chuck_errmsg.h chuck_utils.h
52 $(CC) $(FLAGS) chuck.yy.c
55 $(LEX) -ochuck.yy.c chuck.lex
57 chuck_absyn.o: chuck_absyn.cpp chuck_absyn.h chuck_utils.h chuck_symbol.h
58 $(CXX) $(FLAGS) chuck_absyn.cpp
60 chuck_parse.o: chuck_parse.h chuck_parse.cpp
61 $(CXX) $(FLAGS) chuck_parse.cpp
63 chuck_scan.o: chuck_scan.h chuck_scan.cpp chuck_type.h
64 $(CXX) $(FLAGS) chuck_scan.cpp
66 chuck_type.o: chuck_type.cpp chuck_type.h chuck_absyn.h chuck_oo.h chuck_vm.h chuck_instr.h
67 $(CXX) $(FLAGS) chuck_type.cpp
69 chuck_emit.o: chuck_emit.cpp chuck_emit.h chuck_type.h chuck_instr.h chuck_vm.h
70 $(CXX) $(FLAGS) chuck_emit.cpp
72 chuck_compile.o: chuck_compile.h chuck_compile.cpp
73 $(CXX) $(FLAGS) chuck_compile.cpp
75 chuck_symbol.o: chuck_symbol.cpp chuck_symbol.h chuck_table.h chuck_utils.h
76 $(CXX) $(FLAGS) chuck_symbol.cpp
78 chuck_frame.o: chuck_frame.h chuck_frame.cpp
79 $(CXX) $(FLAGS) chuck_frame.cpp
81 chuck_errmsg.o: chuck_errmsg.cpp chuck_errmsg.h chuck_utils.h
82 $(CXX) $(FLAGS) chuck_errmsg.cpp
84 chuck_utils.o: chuck_utils.cpp chuck_utils.h
85 $(CXX) $(FLAGS) chuck_utils.cpp
87 chuck_table.o: chuck_table.cpp chuck_table.h chuck_utils.h
88 $(CXX) $(FLAGS) chuck_table.cpp
90 chuck_instr.o: chuck_instr.h chuck_instr.cpp chuck_type.h chuck_vm.h
91 $(CXX) $(FLAGS) chuck_instr.cpp
93 chuck_vm.o: chuck_vm.h chuck_vm.cpp chuck_instr.h chuck_oo.h chuck_type.h
94 $(CXX) $(FLAGS) chuck_vm.cpp
96 chuck_oo.o: chuck_oo.h chuck_oo.cpp
97 $(CXX) $(FLAGS) chuck_oo.cpp
99 chuck_lang.o: chuck_lang.h chuck_lang.cpp chuck_oo.h
100 $(CXX) $(FLAGS) chuck_lang.cpp
102 chuck_ugen.o: chuck_ugen.cpp chuck_ugen.h chuck_def.h
103 $(CXX) $(FLAGS) chuck_ugen.cpp
105 chuck_dl.o: chuck_dl.h chuck_dl.cpp
106 $(CXX) $(FLAGS) chuck_dl.cpp
108 chuck_otf.o: chuck_otf.h chuck_otf.cpp
109 $(CXX) $(FLAGS) chuck_otf.cpp
111 chuck_stats.o: chuck_stats.h chuck_stats.cpp
112 $(CXX) $(FLAGS) chuck_stats.cpp
114 chuck_bbq.o: chuck_bbq.cpp chuck_bbq.h midiio_rtmidi.h
115 $(CXX) $(FLAGS) chuck_bbq.cpp
117 chuck_shell.o: chuck_shell.h chuck_shell.cpp
118 $(CXX) $(FLAGS) chuck_shell.cpp
120 chuck_console.o: chuck_console.h chuck_console.cpp
121 $(CXX) $(FLAGS) chuck_console.cpp
123 chuck_globals.o: chuck_globals.h chuck_globals.cpp
124 $(CXX) $(FLAGS) chuck_globals.cpp
126 chuck_main.o: chuck_main.cpp chuck_absyn.h chuck_type.h chuck_emit.h chuck_vm.h chuck_errmsg.h chuck_utils.h
127 $(CXX) $(FLAGS) chuck_main.cpp
129 digiio_rtaudio.o: digiio_rtaudio.h digiio_rtaudio.cpp rtaudio.h
130 $(CXX) $(FLAGS) digiio_rtaudio.cpp
132 hidio_sdl.o: hidio_sdl.h hidio_sdl.cpp
133 $(CXX) $(FLAGS) hidio_sdl.cpp
135 midiio_rtmidi.o: midiio_rtmidi.h midiio_rtmidi.cpp
136 $(CXX) $(FLAGS) midiio_rtmidi.cpp
138 rtaudio.o: rtaudio.h rtaudio.cpp rterror.h
139 $(CXX) $(FLAGS) rtaudio.cpp
141 rtmidi.o: rtmidi.h rtmidi.cpp
142 $(CXX) $(FLAGS) rtmidi.cpp
144 ugen_osc.o: ugen_osc.h ugen_osc.cpp
145 $(CXX) $(FLAGS) ugen_osc.cpp
147 ugen_xxx.o: ugen_xxx.h ugen_xxx.cpp
148 $(CXX) $(FLAGS) ugen_xxx.cpp
150 ugen_filter.o: ugen_filter.h ugen_filter.cpp
151 $(CXX) $(FLAGS) ugen_filter.cpp
153 ugen_stk.o: ugen_stk.h ugen_stk.cpp
154 $(CXX) $(FLAGS) ugen_stk.cpp
156 ulib_machine.o: ulib_machine.h ulib_machine.cpp
157 $(CXX) $(FLAGS) ulib_machine.cpp
159 ulib_math.o: ulib_math.h ulib_math.cpp
160 $(CXX) $(FLAGS) ulib_math.cpp
162 ulib_std.o: ulib_std.h ulib_std.cpp
163 $(CXX) $(FLAGS) ulib_std.cpp
165 ulib_opsc.o: ulib_opsc.h ulib_opsc.cpp
166 $(CXX) $(FLAGS) ulib_opsc.cpp
168 util_buffers.o: util_buffers.h util_buffers.cpp
169 $(CXX) $(FLAGS) util_buffers.cpp
171 util_console.o: util_console.h util_console.cpp
172 $(CXX) $(FLAGS) util_console.cpp
174 util_hid.o: util_hid.h util_hid.cpp
175 $(CXX) $(FLAGS) util_hid.cpp
177 util_math.o: util_math.h util_math.c
178 $(CC) $(FLAGS) util_math.c
180 util_network.o: util_network.h util_network.c
181 $(CC) $(FLAGS) util_network.c
183 util_opsc.o: util_opsc.h util_opsc.cpp
184 $(CXX) $(FLAGS) util_opsc.cpp
186 util_raw.o: util_raw.h util_raw.c
187 $(CC) $(FLAGS) util_raw.c
189 util_string.o: util_string.h util_string.cpp
190 $(CXX) $(FLAGS) util_string.cpp
192 util_thread.o: util_thread.h util_thread.cpp
193 $(CXX) $(FLAGS) util_thread.cpp
195 util_xforms.o: util_xforms.h util_xforms.c
196 $(CC) $(FLAGS) util_xforms.c
198 util_sndfile.o: util_sndfile.h util_sndfile.c
199 $(CC) $(FLAGS) util_sndfile.c
201 uana_xform.o: uana_xform.h uana_xform.cpp
202 $(CXX) $(FLAGS) uana_xform.cpp
204 uana_extract.o: uana_extract.h uana_extract.cpp
205 $(CXX) $(FLAGS) uana_extract.cpp
208 rm -f chuck *~ *.o chuck.output chuck.tab.h chuck.tab.c chuck.yy.c