]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/DEVEL/lablgtkmathview/Makefile.in
binding to gtkmathview 0.3.1
[helm.git] / helm / DEVEL / lablgtkmathview / Makefile.in
index 61d4a106dd60122f8299cd5c0b32ce35de773429..bae76cfa9f9f145b547c83e5a938bdeabf9498a7 100644 (file)
@@ -7,38 +7,43 @@ OBJECTS =  gtk_mathview.cmo gtkMathView.cmo gMathView.cmo
 OBJECTS_OPT = gtkMathView.cmx gtk_mathview.cmx gMathView.cmx
 INST = META gMathView.mli gMathView.cmi gtkMathView.cmi gtk_mathview.cmi
 DIST_FILES = \
-  AUTHORS COPYING ChangeLog LICENSE Makefile.in NEWS README \
-  configure.in gMathView.ml gMathView.mli gtkMathView.ml \
+  Makefile.in configure.in gMathView.ml gMathView.mli gtkMathView.ml \
   gtk_mathview.ml ml_gtk_mathview.c META.in .depend debian/ test/ \
   configure lablgtkmathview.spec lablgtkmathview.spec.in
-DOC_FILES = AUTHORS COPYING ChangeLog NEWS README
+DIST_DIR = $(PACKAGE)-$(VERSION)
+DOC_FILES = AUTHORS COPYING ChangeLog NEWS README LICENSE
 REQUIRES = gdome2 lablgtk
 PREDICATES =
-MLFLAGS = -labels
+SHARED_LIBS = \
+       `gdome-config --libs` \
+       $(shell gtkmathview-config --libs | sed 's/-rdynamic//g') \
+       -lmlgdome
 
-OCAMLC = ocamlfind ocamlc $(MLFLAGS)
-OCAMLOPT = ocamlfind ocamlopt $(MLFLAGS)
+OCAMLC = ocamlfind ocamlc
+OCAMLOPT = ocamlfind ocamlopt
 OCAMLDEP = ocamldep
+OCAMLMKLIB = ocamlmklib
+OCAML_STUB_DIR = @OCAML_STUB_DIR@
 
-ARCHIVE = $(PACKAGE).cma
-ARCHIVE_A = $(PACKAGE).a
-ARCHIVE_SO = dll$(PACKAGE).so
-ARCHIVE_OPT = $(PACKAGE).cmxa
+ARCHIVE = $(PACKAGE)
+DLL = dll$(ARCHIVE).so
 
 TESTDIR = ./test
 TMPDIR = .test
 TMPPKGDIR = $(TMPDIR)/$(PACKAGE)
 
-all: $(ARCHIVE) $(ARCHIVE_SO) $(TESTDIR)/test
-
-opt: $(OBJECTS_C) $(ARCHIVE_OPT) $(ARCHIVE_A) $(ARCHIVE_SO) #$(TESTDIR)/test.opt
+all: $(ARCHIVE).cma $(TESTDIR)/test
+opt: $(ARCHIVE).cmxa $(TESTDIR)/test.opt
+world: all opt
 
 dist:
-       rm -rf $(PACKAGE)-$(VERSION)
-       mkdir $(PACKAGE)-$(VERSION)
-       cp -a $(DIST_FILES) $(DOC_FILES) $(PACKAGE)-$(VERSION)
-       tar cvfz $(PACKAGE)-$(VERSION).tar.gz $(PACKAGE)-$(VERSION)
-       rm -rf $(PACKAGE)-$(VERSION)
+       rm -rf $(DIST_DIR)/
+       mkdir $(DIST_DIR)/
+       cp -a $(DIST_FILES) $(DOC_FILES) $(DIST_DIR)/
+       -find $(DIST_DIR) -name CVS -type d -exec rm -rf {} \;
+       -find $(DIST_DIR) -name .cvsignore -type f -exec rm {} \;
+       tar cvfz $(DIST_DIR).tar.gz $(DIST_DIR)/
+       rm -rf $(DIST_DIR)/
 
 ml_gtk_mathview.o: ml_gtk_mathview.c
        gcc -c -I$(INCLUDEDIR) -fPIC `ocamlfind query -i-format lablgtk` `glib-config --cflags` `gtk-config --cflags` `gtkmathview-config --cflags` `gdome-config --cflags` `ocamlfind query -i-format gdome2` $<
@@ -46,59 +51,46 @@ ml_gtk_mathview.o: ml_gtk_mathview.c
 .SUFFIXES: .cmo .cmi .cmx .ml .mli
 
 .ml.cmo:
-       $(OCAMLC) -package "$(REQUIRES)" -predicates "$(PREDICATES)" \
-                  -c $<
+       $(OCAMLC) -package "$(REQUIRES)" -predicates "$(PREDICATES)" -c $<
 .mli.cmi:
-       $(OCAMLC) -package "$(REQUIRES)" -predicates "$(PREDICATES)" \
-                  -c $<
+       $(OCAMLC) -package "$(REQUIRES)" -predicates "$(PREDICATES)" -c $<
 .ml.cmx:
-       $(OCAMLOPT) -package "$(REQUIRES)" -predicates "$(PREDICATES)" \
-                  -c $<
+       $(OCAMLOPT) -package "$(REQUIRES)" -predicates "$(PREDICATES)" -c $<
 
 depend: *.ml *.mli
        $(OCAMLDEP) *.ml *.mli >.depend
 include .depend
 
-$(ARCHIVE): $(OBJECTS) $(ARCHIVE_SO)
-       $(OCAMLC) -a -package "$(REQUIRES)" \
-        -predicates "$(PREDICATES)" -o $@ $^ \
-        -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`" \
-               -cclib "@OCAML_LIB_DIR@/stublibs/$(ARCHIVE_SO)"
-
-$(ARCHIVE_SO): $(OBJECTS_C)
-       gcc -shared -o $@ $< `gtkmathview-config --libs` -lmlgdome -L `ocamlfind query gdome2` -Xlinker -rpath -Xlinker `ocamlfind query gdome2`
-
-
+$(ARCHIVE).cma $(DLL): $(OBJECTS) $(OBJECTS_C)
+       $(OCAMLMKLIB) -o $(ARCHIVE) -L$(OCAML_STUB_DIR) $^ $(SHARED_LIBS)
+$(ARCHIVE).cmxa $(ARCHIVE).a: $(OBJECTS_OPT)
+       $(OCAMLMKLIB) -o $(ARCHIVE) -L$(OCAML_STUB_DIR) $^ $(OBJECTS_C) $(SHARED_LIBS)
 
-$(TESTDIR)/test: $(OBJECTS_C) $(ARCHIVE) $(TESTDIR)/test.ml
+$(TESTDIR)/test: $(OBJECTS_C) $(ARCHIVE).cma $(TESTDIR)/test.ml
        mkdir -p $(TMPPKGDIR)
-       cp $(OBJECTS_C) $(ARCHIVE_SO) $(ARCHIVE) $(INST) $(TMPPKGDIR)
+       cp $(OBJECTS_C) $(DLL) $(ARCHIVE).cma $(INST) $(TMPPKGDIR)
        cd $(TESTDIR) ; export OCAMLPATH=../$(TMPDIR):$$OCAMLPATH ; make
        rm -r $(TMPDIR)
 
-$(TESTDIR)/test.opt: $(OBJECTS_C) $(ARCHIVE_A) $(ARCHIVE_OPT) $(TESTDIR)/test.ml
+$(TESTDIR)/test.opt: $(OBJECTS_C) $(ARCHIVE).a $(ARCHIVE).cmxa $(TESTDIR)/test.ml
        mkdir -p $(TMPPKGDIR)
-       cp $(OBJECTS_C) $(ARCHIVE_A) $(ARCHIVE_OPT) $(INST) $(TMPPKGDIR)
+       cp $(OBJECTS_C) $(ARCHIVE).a $(ARCHIVE).cmxa $(INST) $(TMPPKGDIR)
        cd $(TESTDIR) ; export OCAMLPATH=../$(TMPDIR):$$OCAMLPATH ; make opt
        rm -r $(TMPDIR)
 
 install:
-       test ! -f $(ARCHIVE_OPT) || extra="$(ARCHIVE_A) $(ARCHIVE_OPT)" ; \
+       test ! -f $(ARCHIVE).cmxa || extra="$(ARCHIVE).a $(ARCHIVE).cmxa" ; \
        if [ "$(PREFIX)" = "" ]; then \
-               ocamlfind install $(PACKAGE) $(OBJECTS_C) $(ARCHIVE) $(ARCHIVE_SO) $(INST) $$extra; \
+               ocamlfind install $(PACKAGE) $(OBJECTS_C) $(ARCHIVE).cma $(DLL) $(INST) $$extra; \
        else \
-               ocamlfind install -destdir $(PREFIX) $(PACKAGE) $(OBJECTS_C) $(ARCHIVE) $(ARCHIVE_SO) $(INST) $$extra; \
+               ocamlfind install -destdir $(PREFIX) $(PACKAGE) $(OBJECTS_C) $(ARCHIVE).cma $(DLL) $(INST) $$extra; \
        fi
 
 uninstall:
        ocamlfind remove $(PACKAGE)
 
 clean:
-       rm -f *.o *.cm? $(ARCHIVE) $(ARCHIVE_A) $(ARCHIVE_SO) $(ARCHIVE_OPT)
+       rm -f *.[ao] *.cm[iaxo] *.cmxa *.so
        cd $(TESTDIR) ; make clean
        rm -rf $(TMPDIR)