1 .OPTIONS = variable-propagation
2 OCAMLFINDPACKAGES = "ulex,unix,expat,camlp4.macro"
3 OCAMLFINDSYNTAX = camlp4o
4 OCAMLFINDPPOPTS = $(addprefix "-ppopt ", @CAMLP4FLAGS@ -I include)
5 OCAMLFINDINCLUDES = $(addprefix "-I ", src)
6 OCAMLFINDFLAGS = -syntax $(OCAMLFINDSYNTAX) -package $(OCAMLFINDPACKAGES) \
7 $(OCAMLFINDPPOPTS) $(OCAMLFINDINCLUDES)
8 OCAMLFINDLINKFLAGS = -linkpkg
9 PACKAGE = @PACKAGE_TARNAME@
11 BIN = src/@PACKAGE_TARNAME@.native@EXE@
12 BYTE = src/@PACKAGE_TARNAME@.byte@EXE@
17 ODEPS = tools/odeps.sh $(OCAMLDEP)
20 OCAMLFLAGS = @OCAMLFLAGS@
21 OCAMLOPTFLAGS = @OCAMLOPTFLAGS@
22 OCAMLCFLAGS = @OCAMLCFLAGS@
23 OCAMLYACC = @OCAMLYACC@
27 tools: tools/xml_diff.native$(EXE) tools/XPathEval.class tools/split_path.native$(EXE)
29 Remakefile: Remakefile.in config.status
30 ./config.status Remakefile
32 configure config.status: configure.in
34 ./config.status --recheck
37 for dir in src tools; do
38 find $dir -name '*.cm*' -o -name '*.o' -o -name '*.byte' -o \
39 -name '*.native' -o -name '*.mll' -o -name '*.mly' -o \
40 -name '*.class' -o -name '*.dep' | while read file; do
43 rm -f "${file%.mll}.ml"
46 rm -f "${file%.mly}.ml" "${file%.mly}.mli"
55 distclean: clean test_clean
56 rm -rf config.status configure config.log autom4te.cache .remake Remakefile remake Makefile
61 %.native$(EXE): %.cmx %.dep
62 objects=`cat $*.dep | xargs | sed 's/[.]dep/.cmx/g'`
63 $(OCAMLOPT) -o $@ $(OCAMLFLAGS) $(OCAMLOPTFLAGS) $(OCAMLFINDLINKFLAGS) $(OCAMLFINDFLAGS) $objects $<
65 %.byte$(EXE): %.cmo %.dep
66 objects=`cat $*.dep | xargs | sed 's/[.]dep/.cmo/g'`
67 $(OCAMLC) -o $@ $(OCAMLFLAGS) $(OCAMLCFLAGS) $(OCAMLFINDLINKFLAGS) $(OCAMLFINDFLAGS) $objects $<
70 if test -f $*.mly; then
73 elif test -f $*.mll; then
82 REMAKE="$(REMAKE) OCAMLNATIVE=$NATIVE"
83 OCAMLDEP="$(OCAMLDEP) $(OCAMLFINDFLAGS)"
85 COMPILE="$(OCAMLOPT) $(OCAMLFLAGS) $(OCAMLOPTFLAGS) $(OCAMLFINDFLAGS)"
86 . tools/ocamldriver.sh
92 REMAKE="$(REMAKE) OCAMLNATIVE=$NATIVE"
93 OCAMLDEP="$(OCAMLDEP) $(OCAMLFINDFLAGS)"
95 COMPILE="$(OCAMLC) $(OCAMLFLAGS) $(OCAMLCFLAGS) $(OCAMLFINDFLAGS)"
96 . tools/ocamldriver.sh
101 NATIVE=$(OCAMLNATIVE)
102 REMAKE="$(REMAKE) OCAMLNATIVE=$NATIVE"
103 OCAMLDEP="$(OCAMLDEP) $(OCAMLFINDFLAGS)"
105 if test -z "$NATIVE"; then
106 COMPILE="$(OCAMLC) $(OCAMLFLAGS) $(OCAMLCFLAGS) $(OCAMLFINDFLAGS)"
108 COMPILE="$(OCAMLOPT) $(OCAMLFLAGS) $(OCAMLOPTFLAGS) $(OCAMLFINDFLAGS)"
110 . tools/ocamldriver.sh
114 test_byte: tools $(BYTE)
115 $(REMAKE) TEST=$(BYTE) real_test
117 test_native: tools $(BIN)
118 $(REMAKE) TEST=$(BIN) real_test
127 $(REMAKE) TEST=$(TEST) "$i".test"$j".summary
132 rm -rf tests/*.summary tests/*.results/*_"$(PACKAGE)"_*.*
141 SPLIT=tools/split_path.native$(EXE)
142 XMLDIFF=tools/xml_diff.native$(EXE)
144 $REMAKE $xml ${xml}.queries tests/${test}.sh