CAMLP4FLAGS=@CAMLP4FLAGS@
-PPOPTSFLAGS= $($CAMLP4FLAGS:%=ppopt(%))
-OCAMLBUILDFLAGS=-j 0 -use-ocamlfind @OCAMLBUILDFLAGS@
+OCAMLBUILDFLAGS=-j 0 -use-ocamlfind @OCAMLBUILDFLAGS@ $(CAMLP4FLAGS:%=-tag %)
OCAMLBUILD=@OCAMLBUILD@
PACKAGE = @PACKAGE_TARNAME@
NATIVE=$(PACKAGE).native
@
%:
- @ $(OCAMLBUILD) $(OCAMLBUILDFLAGS) $(TAGS) $(PPOPTFLAGS:%=-tag %) $@
+ @ $(OCAMLBUILD) $(OCAMLBUILDFLAGS) $@
clean:
@ $(OCAMLBUILD) $(OCAMLBUILDFLAGS) -clean
--- /dev/null
+Pour éviter les phases et le Ranking :
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+partir de l'état initial.
+
+Exclure tous les états qui ne sont pas trivialement satisfiables.
+
+Requêtes N-aires.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:
+
+Garder pour chaque variable un ensemble de candidats.
+et propager.
\ No newline at end of file
if test "x$DEBUG" = "xyes"; then
OCAMLBUILDFLAGS="$OCAMLBUILDFLAGS -tag debug"
- CAMLP4FLAGS="$CAMLP4FLAGS -D DEBUG"
+ CAMLP4FLAGS="$CAMLP4FLAGS ppopt\(-D\) ppopt\(DEBUG\)"
fi
#profiling
[TRACE=no])
if test "x$TRACE" = "xyes"; then
- CAMLP4FLAGS="$CAMLP4FLAGS -D HTMLTRACE"
+ CAMLP4FLAGS="$CAMLP4FLAGS ppopt\(-D\) ppopt\(HTMLTRACE\)"
fi
#inlining
[UNSAFE=0])
if test "x$UNSAFE" = "xyes"; then
- CAMLP4FLAGS="$CAMLP4FLAGS -unsafe"
+ CAMLP4FLAGS="$CAMLP4FLAGS ppopt\(-unsafe\)"
fi
List.map (concat "include") d
+let ml_str_rule () =
+ rule ".ml.str" ~dep:"%.ml.str" ~prod:"%.ml"
+ (fun env _ ->
+ let mlstr = env "%.ml.str" and ml = env "%.ml" in
+ let cmd = Printf.sprintf "echo -n 'let content = \"' > %s ;\
+ sed -e 's/\\([\"\\\\]\\)/\\\\\\1/g' %s | sed -e 's/^\\(.*\\)$/\\1\\\\n\\\\/g' >> %s ;\
+ echo '' >> %s ;\
+ echo '\"' >> %s" ml mlstr ml ml ml
+ in
+ Cmd ( Sh cmd ))
+
let () =
dispatch (function
| After_rules ->
dep ["ocaml";"compile";] includes;
dep ["ocaml";"ocamldep"; ] includes;
- pflag ["ocaml";"compile";] "ppopt" (fun s -> S [A"-ppopt"; A (s)]);
+ pflag ["ocaml";"compile";] "ppopt" (fun s -> S [A"-ppopt"; A (s)]);
pflag ["ocaml";"ocamldep";] "ppopt" (fun s -> S [A"-ppopt"; A (s)]);
+ ml_str_rule ()
| _ -> ()
)