]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/DEVEL/ocaml-http/examples/Makefile
- split threaded and non threaded implementations
[helm.git] / helm / DEVEL / ocaml-http / examples / Makefile
index 8c74ba6413c820ec141e25b3027020fff160c65d..825a27567330c3cabbc1842a7b444ac3d0a20e0f 100644 (file)
@@ -1,17 +1,29 @@
 include ../Makefile.defs
-OBJS = ../http.cma
-OBJS_OPT = ../http.cmxa
-EXAMPLES_OPTS = -I .. -linkpkg
+OBJS_NON_MT = ../http.cma
+OBJS_NON_MT_OPT = ../http.cmxa
+OBJS_MT = ../http_mt.cma
+OBJS_MT_OPT = ../http_mt.cmxa
+EXAMPLES_FLAGS = -I .. -linkpkg
 
 EXAMPLES =     \
-       always_ok_daemon webfsd obj_foo dump_args timeout dont_fork threads chdir
+       always_ok_daemon webfsd obj_foo dump_args timeout dont_fork threads chdir threads_foo
 
 all: $(EXAMPLES)
 opt: $(patsubst %,%.opt,$(EXAMPLES))
 %: %.ml $(OBJS)
-       $(OCAMLC) $(EXAMPLES_OPTS) $(OBJS) -o $@ $<
+       $(OCAMLC) $(EXAMPLES_FLAGS) $(OBJS_NON_MT) -o $@ $<
 %.opt: %.ml $(OBJS_OPT)
-       $(OCAMLOPT) $(EXAMPLES_OPTS) $(OBJS_OPT) -o $@ $<
+       $(OCAMLOPT) $(EXAMPLES_FLAGS) $(OBJS_NON_MT_OPT) -o $@ $<
+
+threads: threads.ml
+       $(OCAMLC) $(EXAMPLES_FLAGS) $(OBJS_MT) $(THREADS_FLAGS) -o $@ $<
+threads.opt: threads.ml
+       $(OCAMLOPT) $(EXAMPLES_FLAGS) $(OBJS_MT_OPT) $(THREADS_FLAGS) -o $@ $<
+
+threads_foo: threads_foo.ml
+       $(OCAMLC) $(EXAMPLES_FLAGS) $(OBJS_MT) $(THREADS_FLAGS) -package netclient -o $@ $<
+threads_foo.opt: threads_foo.ml
+       $(OCAMLOPT) $(EXAMPLES_FLAGS) $(OBJS_MT_OPT) $(THREADS_FLAGS) -package netclient -o $@ $<
 
 distclean: clean
 clean: