- Try to do better pretty printing when array elements are individually
[bpt/coccinelle.git] / engine / Makefile
index 9ff6b58..ffe595b 100644 (file)
@@ -33,7 +33,8 @@ endif
 TARGET=cocciengine
 CTLTARGET=engine
 
-SRC= flag_matcher.ml lib_engine.ml pretty_print_engine.ml \
+SRC= externalanalysis.ml \
+       flag_matcher.ml lib_engine.ml pretty_print_engine.ml \
       check_exhaustive_pattern.ml \
       check_reachability.ml \
       c_vs_c.ml isomorphisms_c_c.ml \
@@ -59,7 +60,8 @@ SYSLIBS= str.cma unix.cma
 
 #for warning:  -w A
 #for profiling:  -p -inline 0   with OCAMLOPT
-OCAMLCFLAGS ?= -g -dtypes
+OCAMLCFLAGS ?= -g
+OPTFLAGS ?= -g
 
 OCAMLC_CMD=$(OCAMLC) $(OCAMLCFLAGS) $(INCLUDES)
 OCAMLOPT_CMD=$(OCAMLOPT) $(OPTFLAGS) $(INCLUDES)
@@ -73,8 +75,10 @@ OPTOBJS = $(SRC:.ml=.cmx)
 ##############################################################################
 # Top rules
 ##############################################################################
+ifneq ($(FEATURE_OCAMLBUILD),yes)
 all: $(TARGET).cma
-all.opt: $(TARGET).cmxa
+all.opt:
+       @$(MAKE) $(TARGET).cmxa BUILD_OPT=yes
 
 $(TARGET).cma: $(OBJS)
        $(OCAMLC_CMD) -a -o $(TARGET).cma $(OBJS)
@@ -87,7 +91,16 @@ $(TARGET).top: $(OBJS) $(LIBS)
 
 clean::
        rm -f $(TARGET).top
+else
+all:
+       cd .. && $(OCAMLBUILD) engine/engine.cma
 
+all.opt:
+       cd .. && $(OCAMLBUILD) engine/engine.cmxa
+
+clean::
+       cd .. && $(OCAMLBUILD) -clean
+endif
 
 
 ##############################################################################
@@ -123,6 +136,10 @@ distclean: clean
 
 ifneq ($(MAKECMDGOALS),clean)
 ifneq ($(MAKECMDGOALS),distclean)
+ifneq ($(FEATURE_OCAMLBUILD),yes)
 -include .depend
 endif
 endif
+endif
+
+include ../Makefile.common