X-Git-Url: https://scm.cri.mines-paristech.fr/git/Faustine.git/blobdiff_plain/b4b6f2ea75b9f0f3ca918f5b84016610bf7a4d4f..f4b893045495fe7868d595f2663adb3808dbac2c:/interpretor/Makefile?ds=inline diff --git a/interpretor/Makefile b/interpretor/Makefile index 4b0027e..4a5f84f 100644 --- a/interpretor/Makefile +++ b/interpretor/Makefile @@ -1,3 +1,5 @@ +# Faustine interpreter Makefile. + ########################## User's variables ##################### # # The Caml sources (including camlyacc and camllex source files) @@ -5,17 +7,15 @@ SOURCES = types.ml parser.mly lexer.mll basic.ml symbol.ml aux.ml value.ml signal.ml beam.ml process.ml faustio.ml preprocess.ml main.ml preprocess_stubs.cpp # The executable file to generate - EXEC = faustine # Path to ocaml include header files -export OCAML_INCLUDE_PATH +OCAML_INCLUDE_PATH := $(subst bin,lib,$(shell which ocaml)) # Path to sndfile library -#SNDFILE_PATH = /home/wang/Desktop/libsndfile-ocaml -export SNDFILE_PATH +SNDFILE_PATH := lib/libsndfile -# Path to Faust.mr2 +# Path to Faust.mr3 FAUST_PATH = preprocessor/faust-0.9.47mr3 # Path to preprocessor library @@ -84,6 +84,7 @@ CAMLC_OPTIONS = $(GPP_CALL) $(INCLUDE) $(LIBS) CAMLOPT_OPTIONS = -p $(GPP_CALL) $(INCLUDE) $(LIBS:.cma=.cmxa) CAMLDOC_OPTIONS = -d $(OCAML_DOC_PATH) -html $(INCLUDE) + CC_OPTIONS = -c -I$(PREPROCESSOR_INCLUDE_PATH) -I$(OCAML_INCLUDE_PATH) ################ End of user's variables ##################### @@ -121,16 +122,20 @@ PARSER_MLY = $(filter %.mly, $(SOURCES)) LEXER_MLL = $(filter %.mll, $(SOURCES)) MIDDLE_ML = $(PARSER_MLY:.mly=.ml) $(LEXER_MLL:.mll=.ml) -preprocessor: - @(cd $(FAUST_PATH) && $(MAKE)) +preprocessor:: + @echo "Compiling preprocessor..." + cd $(FAUST_PATH) && $(MAKE) -$(EXEC): $(OBJS) $(COBJS) +$(EXEC): $(OBJS) $(COBJS) $(CLIBS) + @echo "Compiling $(EXEC)..." $(CAMLC) $(CAMLC_OPTIONS) -o $(EXEC) $(OBJS) $(COBJS) $(CLIBS) -$(EXEC).opt: $(OPTOBJS) $(COBJS) +$(EXEC).opt: $(OPTOBJS) $(COBJS) $(CLIBS) + @echo "Compiling optimized $(EXEC)..." $(CAMLOPT) $(CAMLOPT_OPTIONS) -o $(EXEC) $(OPTOBJS) $(COBJS) $(CLIBS) document: $(SMLYL) $(OBJS) + @echo "Compiling documentation..." $(CAMLDOC) $(CAMLDOC_OPTIONS) $(SMLYL) main.cmo: main.ml