]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/DEVEL/lablgtkmathview/Makefile.in
Dynamic loading of C code enabled.
[helm.git] / helm / DEVEL / lablgtkmathview / Makefile.in
index 9bfde70c129d40b7f73edf5f2f8c0fb269b4853e..defa0b999acdd0995e09240b77eac9eb6bdd3573 100644 (file)
@@ -11,7 +11,7 @@ DIST_FILES = \
   configure.in gMathView.ml gtkMathView.ml gtk_mathview.ml \
   ml_gtk_mathview.c META.in
 DOC_FILES = AUTHORS COPYING ChangeLog NEWS README
-REQUIRES = gdome lablgtk
+REQUIRES = gdome2 lablgtk
 PREDICATES =
 MLFLAGS = -labels
 
@@ -20,16 +20,17 @@ OCAMLOPT = ocamlfind ocamlopt $(MLFLAGS)
 OCAMLDEP = ocamldep
 
 ARCHIVE = $(PACKAGE).cma
-ARCHIVE_C = $(PACKAGE).a
+ARCHIVE_A = $(PACKAGE).a
+ARCHIVE_SO = dll$(PACKAGE).so
 ARCHIVE_OPT = $(PACKAGE).cmxa
 
 TESTDIR = ./test
 TMPDIR = .test
 TMPPKGDIR = $(TMPDIR)/$(PACKAGE)
 
-all: $(OBJECTS_C) $(ARCHIVE) $(TESTDIR)/test
+all: $(ARCHIVE) $(ARCHIVE_SO) $(TESTDIR)/test
 
-opt: $(OBJECTS_C) $(ARCHIVE_OPT) $(TESTDIR)/test.opt
+opt: $(OBJECTS_C) $(ARCHIVE_OPT) $(ARCHIVE_A) $(ARCHIVE_SO) $(TESTDIR)/test.opt
 
 dist:
        rm -rf $(PACKAGE)-$(VERSION)
@@ -39,7 +40,7 @@ dist:
        rm -rf $(PACKAGE)-$(VERSION)
 
 ml_gtk_mathview.o: ml_gtk_mathview.c
-       gcc -c -I$(INCLUDEDIR) `ocamlfind query -i-format lablgtk` `glib-config --cflags` `gtk-config --cflags` `gtkmathview-config --cflags` `gdome-config --cflags` `ocamlfind query -i-format gdome` $<
+       gcc -c -I$(INCLUDEDIR) `ocamlfind query -i-format lablgtk` `glib-config --cflags` `gtk-config --cflags` `gtkmathview-config --cflags` `gdome-config --cflags` `ocamlfind query -i-format gdome2` $<
 
 .SUFFIXES: .cmo .cmi .cmx .ml .mli
 
@@ -57,37 +58,40 @@ depend: *.ml *.mli
        $(OCAMLDEP) *.ml *.mli >.depend
 include .depend
 
-$(ARCHIVE): $(OBJECTS)
-       $(OCAMLC) -a -custom -package "$(REQUIRES)" \
+$(ARCHIVE): $(OBJECTS) $(ARCHIVE_SO)
+       $(OCAMLC) -a -package "$(REQUIRES)" \
         -predicates "$(PREDICATES)" -o $@ $^ \
-        -cclib "`glib-config --libs` `gdome-config --libs` `gtkmathview-config --libs`"
-
-$(ARCHIVE_OPT): $(OBJECTS_OPT)
+        -cclib "`glib-config --libs` `gdome-config --libs` `gtkmathview-config --libs`" -dllib -l$(PACKAGE)
+$(ARCHIVE_OPT) $(ARCHIVE_A): $(OBJECTS_OPT)
        $(OCAMLOPT) -a -package "$(REQUIRES)" \
         -predicates "$(PREDICATES)" -o $@ $^ \
         -cclib "`glib-config --libs` `gdome-config --libs` `gtkmathview-config --libs`"
 
+$(ARCHIVE_SO): $(OBJECTS_C)
+       gcc -shared -o $@ $< `gtkmathview-config --libs` -lmlgdome -L `ocamlfind query gdome2`
+
+
 $(TESTDIR)/test: $(OBJECTS_C) $(ARCHIVE) $(TESTDIR)/test.ml
        mkdir -p $(TMPPKGDIR)
        cp $(OBJECTS_C) $(ARCHIVE) $(INST) $(TMPPKGDIR)
        cd $(TESTDIR) ; export OCAMLPATH=../$(TMPDIR):$$OCAMLPATH ; make
        rm -r $(TMPDIR)
 
-$(TESTDIR)/test.opt: $(OBJECTS_C) $(ARCHIVE_C) $(ARCHIVE_OPT) $(TESTDIR)/test.ml
+$(TESTDIR)/test.opt: $(OBJECTS_C) $(ARCHIVE_A) $(ARCHIVE_OPT) $(TESTDIR)/test.ml
        mkdir -p $(TMPPKGDIR)
-       cp $(OBJECTS_C) $(ARCHIVE_C) $(ARCHIVE_OPT) $(INST) $(TMPPKGDIR)
+       cp $(OBJECTS_C) $(ARCHIVE_A) $(ARCHIVE_OPT) $(INST) $(TMPPKGDIR)
        cd $(TESTDIR) ; export OCAMLPATH=../$(TMPDIR):$$OCAMLPATH ; make opt
        rm -r $(TMPDIR)
 
 install:
-       test ! -f $(ARCHIVE_OPT) || extra="$(ARCHIVE_C) $(ARCHIVE_OPT)" ; \
-       ocamlfind install $(PACKAGE) $(OBJECTS_C) $(ARCHIVE) $(INST) $$extra
+       test ! -f $(ARCHIVE_OPT) || extra="$(ARCHIVE_A) $(ARCHIVE_OPT)" ; \
+       ocamlfind install $(PACKAGE) $(OBJECTS_C) $(ARCHIVE) $(ARCHIVE_SO) $(INST) $$extra
 
 uninstall:
        ocamlfind remove $(PACKAGE)
 
 clean:
-       rm -f *.o *.cm? $(ARCHIVE) $(ARCHIVE_C) $(ARCHIVE_OPT)
+       rm -f *.o *.cm? $(ARCHIVE) $(ARCHIVE_A) $(ARCHIVE_SO) $(ARCHIVE_OPT)
        cd $(TESTDIR) ; make clean
        rm -rf $(TMPDIR)