--- /dev/null
+OCAMLOPTIONS = -package netstring -package netclient -package pxp
+
+OCAMLDEP = ocamldep
+OCAMLFIND = ocamlfind
+OCAMLC = $(OCAMLFIND) ocamlc $(OCAMLOPTIONS)
+OCAMLOPT = $(OCAMLFIND) ocamlopt $(OCAMLOPTIONS)
+
+all: touch
+opt: touch.opt
+
+DEPOBJS = csc_pxp_reader.ml configuration.ml \
+ clientHTTP.ml clientHTTP.mli cic.ml deannotate.ml \
+ uriManager.ml uriManager.mli getter.ml getter.mli \
+ pxpUriResolver.ml cicParser3.ml cicParser3.mli \
+ cicParser2.ml cicParser2.mli cicParser.ml \
+ cicParser.mli touch.ml
+
+TOUCHOBJS = csc_pxp_reader.cmo configuration.cmo \
+ clientHTTP.cmo cic.cmo deannotate.cmo \
+ uriManager.cmo getter.cmo pxpUriResolver.ml \
+ cicParser3.cmo cicParser2.cmo cicParser.cmo \
+ touch.cmo
+
+depend:
+ $(OCAMLDEP) $(DEPOBJS) > .depend
+
+touch: $(TOUCHOBJS)
+ $(OCAMLC) -linkpkg -o touch $(TOUCHOBJS)
+
+touch.opt: $(TOUCHOBJS:.cmo=.cmx)
+ $(OCAMLOPT) -linkpkg -o touch.opt $(TOUCHOBJS:.cmo=.cmx)
+
+.SUFFIXES: .ml .mli .cmo .cmi .cmx
+.ml.cmo:
+ $(OCAMLC) -c $<
+.mli.cmi:
+ $(OCAMLC) -c $<
+.ml.cmx:
+ $(OCAMLOPT) -c $<
+
+clean:
+ rm -f *.cm[iox] *.o touch touch.opt
+
+.PHONY: clean
+
+include .depend