Bug fixed for unix error "readlink /proc/self/fd/0" on MacOS.
[Faustine.git] / Makefile
index 79e54a5..e1b6ac3 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,20 +1,20 @@
 # Faustine top-level Makefile.
 
 EXEC = faustine
-SRC_DIR = interpretor
+SRC_DIR = interpreter
 PREPROCESSOR_DIR = $(SRC_DIR)/preprocessor/faust-0.9.47mr3
-OUTPUTSOUNDS_DIR = examples/output_sounds
+EXAMPLES_DIR = examples
+SINWAVE_DIR = $(EXAMPLES_DIR)/sinwave
 
 DESTDIR ?= 
 PREFIX ?= /usr/local
 prefix := $(DESTDIR)$(PREFIX)
-arch   := $(wildcard architecture/*.*)
+lib    := $(wildcard lib/*.*)
 
 all: $(EXEC)
 
 faustine:
-       @cd $(SRC_DIR) && $(MAKE) opt      # using ocamlopt
-       @cd $(SRC_DIR) && $(MAKE) clean
+       $(MAKE) -C $(SRC_DIR) opt    # using ocamlopt compiler (optimized)
 
 .PHONY: clean mrproper test help install uninstall
 
@@ -27,28 +27,31 @@ help :
        @echo "make dist : make a tar.gz file ready for distribution (TODO)"
 
 clean:
-       @(cd $(SRC_DIR) && $(MAKE) clean)
+       @($(MAKE) -C $(SRC_DIR) clean)
        @(rm -f *~)
 
 mrproper: clean
-       @(cd $(SRC_DIR) && $(MAKE) mrproper)
-       @(cd $(PREPROCESSOR_DIR) && $(MAKE) clean)
+       @($(MAKE) -C $(SRC_DIR) mrproper)
+       @($(MAKE) -C $(PREPROCESSOR_DIR) clean)
+       @($(MAKE) -C $(EXAMPLES_DIR) clean)
 
-test: # TODO, obsolete
-       @rm -f $(OUTPUTSOUNDS_DIR)/output0.wav
-       @cd $(SRC_DIR) && ./faustine -d ../dsp_files/sin.dsp
-       @ls -l $(OUTPUTSOUNDS_DIR)/output0.wav
+test:
+       @$(MAKE) -C $(SINWAVE_DIR) clean
+       @$(MAKE) -C $(SINWAVE_DIR)
 
        @echo "    You might want to check the output file with either:"
-       @echo "audacity ../examples/output_sounds/output0.wav"
-       @echo "open ../examples/output_sounds/output0.wav"
-       @echo "octave -q --eval 'plot(wavread(\"../examples/output_sounds/output0.wav\")); pause'"
+       @echo "audacity $(SINWAVE_DIR)/sin.wav"
+       @echo "open $(SINWAVE_DIR)/sin.wav"
+       @echo "octave -q --eval 'plot(wavread(\"$(SINWAVE_DIR)/sin.wav\")); pause'"
+
+examples::
+       @($(MAKE) -C $(EXAMPLES_DIR))
 
 install :
        mkdir -p $(prefix)/lib/faustine/
        mkdir -p $(prefix)/bin/
-       install interpretor/faustine $(prefix)/bin/
-       install -m 0644 $(arch) $(prefix)/lib/faustine/
+       install $(SRC_DIR)/faustine $(prefix)/bin/
+       install -m 0644 $(lib) $(prefix)/lib/faustine/
 
 uninstall :
        rm -rf $(prefix)/lib/faustine/