root/ocaml-remix/trunk/Makefile

Revision 529, 1.3 kB (checked in by shans, 4 years ago)

Replacing sound implementation - WAS ocaml int arrays, IS native float
arrays. This has not yet been completely been debugged!

Line 
1 ALL: all.opt
2
3 COMPONENTS = remix time volume sound envelope note tone wave transparency \
4                         layer track deck noteUtil
5 TESTS = sound_test_sin layer_test_sins track_test_sins \
6                         continuous_sound_test
7 INCLUDES=-I +extlib
8 OBJECTS=extLib unix FB oss ladspa_raw
9
10 INTERFACES = $(patsubst %, %.mli, $(COMPONENTS))
11 SOURCES = $(patsubst %, %.ml, $(COMPONENTS))
12 OBJECTS_CMXA = $(patsubst %, %.cmxa, $(OBJECTS))
13
14 OPTTESTS = $(patsubst %, %.opt, $(TESTS))
15
16 OCAMLPP = -pp "camlp4o ./pa_operators.cmo"
17 OCAMLOPTARGS = $(INCLUDES) $(OBJECTS_CMXA) -w s -g $(OCAMLPP)
18
19 pa_operators.cmo: pa_operators.ml
20         ocamlc -I +camlp4 camlp4lib.cma -pp camlp4of pa_operators.ml
21
22 remix.cmxa: $(INTERFACES) $(SOURCES) oss.cmxa ladspa_raw.cmxa FB.cmxa
23         ocamlopt -c $(OCAMLOPTARGS) $(INTERFACES) $(SOURCES)
24         ocamlopt -a -o remix.cmxa $(SOURCES)
25
26 oss.cmxa: FB.cmxa oss.mli oss.ml oss_impl.c
27         ocamlopt oss_impl.c oss.mli oss.ml -a -o oss.cmxa
28
29 ladspa_raw.cmxa: ladspa_raw.mli ladspa_raw.ml ladspa_impl.c
30         ocamlopt ladspa_impl.c ladspa_raw.mli ladspa_raw.ml -a \
31                                                         -o ladspa_raw.cmxa
32 FB.cmxa: FB.mli FB.ml FB_impl.c
33         ocamlopt FB_impl.c FB.mli FB.ml -a -o FB.cmxa
34
35 %.opt: remix.cmxa %.ml
36         ocamlopt $(OCAMLOPTARGS) $^ -o $@
37
38 all.opt: pa_operators.cmo remix.cmxa $(OPTTESTS)
39
40 clean:
41         rm -rf *.cmi *.cmo *.cma *.cmxa *.o *.cmx *.a *.bin *.opt
Note: See TracBrowser for help on using the browser.