3 INCLUDEDIR = @OCAML_INCLUDE_DIR@
4 PROPCC = @OCAML_LIB_DIR@/lablgtk2/propcc
6 OBJECTS_C = ml_gtk_mathview.o
7 OBJECTS = gtkMathViewProps.cmo ogtkMathViewProps.cmo gtk_mathview.cmo gtkMathView.cmo gMathView.cmo gMathViewAux.cmo
8 OBJECTS_OPT = gtkMathViewProps.cmx ogtkMathViewProps.cmx gtkMathView.cmx gtk_mathview.cmx gMathView.cmx gMathViewAux.cmx
9 GENERATED_FILES = gtkMathViewProps.ml ogtkMathViewProps.ml
17 gtkMathViewProps.cmi \
18 ogtkMathViewProps.cmi \
23 Makefile.in configure.in gMathView.ml gMathView.mli \
24 gMathViewAux.ml gMathViewAux.mli gtkMathView.ml \
25 gtk_mathview.ml ml_gtk_mathview.c META.in .depend debian/ test/ \
26 configure gtkMathView.props
27 DIST_DIR = $(PACKAGE)-$(VERSION)
28 DOC_FILES = AUTHORS COPYING ChangeLog NEWS README LICENSE
29 REQUIRES = gdome2 lablgtk2
31 SHARED_LIBS = @GDOME_LIBS@ @GTKMATHVIEW_LIBS@
34 OCAMLC = $(OCAMLFIND) ocamlc
35 OCAMLOPT = $(OCAMLFIND) ocamlopt
37 OCAMLMKLIB = ocamlmklib
38 OCAML_STUB_DIR = @OCAML_STUB_DIR@
41 DLL = dll$(ARCHIVE).so
45 TMPPKGDIR = $(TMPDIR)/$(PACKAGE)
47 all: $(ARCHIVE).cma lib$(ARCHIVE).a $(DLL)
48 opt: $(ARCHIVE).cmxa $(ARCHIVE).a
50 test.opt: $(TESTDIR)/test.opt
56 cp -a $(DIST_FILES) $(DOC_FILES) $(DIST_DIR)/
57 -find $(DIST_DIR) -name .svn -type d -exec rm -rf {} \;
58 tar cvfz $(DIST_DIR).tar.gz $(DIST_DIR)/
62 if [ -d $(DIST_DIR)/ ]; then rm -rf $(DIST_DIR); else true; fi
63 tar xvzf $(DIST_DIR).tar.gz
64 (cd $(DIST_DIR)/ && debuild)
67 $(GENERATED_FILES): gtkMathView.props
69 ml_gtk_mathview.o: ml_gtk_mathview.c
70 gcc -c -I$(INCLUDEDIR) -fPIC `ocamlfind query -i-format lablgtk2` @GTKMATHVIEW_CFLAGS@ @GDOME_CFLAGS@ `ocamlfind query -i-format gdome2` $<
72 .SUFFIXES: .cmo .cmi .cmx .ml .mli
75 $(OCAMLC) -package "$(REQUIRES)" -predicates "$(PREDICATES)" -c $<
77 $(OCAMLC) -package "$(REQUIRES)" -predicates "$(PREDICATES)" -c $<
79 $(OCAMLOPT) -package "$(REQUIRES)" -predicates "$(PREDICATES)" -c $<
81 %Props.ml o%Props.ml: %.props $(PROPCC)
84 depend: *.ml *.mli $(GENERATED_FILES)
85 $(OCAMLDEP) *.ml *.mli >.depend
88 $(ARCHIVE).cma: $(OBJECTS)
89 $(OCAMLMKLIB) -o $(ARCHIVE) $^ $(SHARED_LIBS)
90 $(ARCHIVE).cmxa: $(OBJECTS_OPT)
91 $(OCAMLMKLIB) -o $(ARCHIVE) $^ $(SHARED_LIBS)
92 lib$(ARCHIVE).a $(DLL): $(OBJECTS_C)
93 $(OCAMLMKLIB) -o $(ARCHIVE) $^ $(SHARED_LIBS)
95 $(TESTDIR)/test: $(OBJECTS_C) $(ARCHIVE).cma $(TESTDIR)/test.ml
97 cp $(OBJECTS_C) $(DLL) $(ARCHIVE).cma $(INST) $(TMPPKGDIR)
98 cd $(TESTDIR) ; export OCAMLPATH=../$(TMPDIR):$$OCAMLPATH ; make
101 $(TESTDIR)/test.opt: $(OBJECTS_C) $(ARCHIVE).a $(ARCHIVE).cmxa $(TESTDIR)/test.ml
102 mkdir -p $(TMPPKGDIR)
103 cp $(OBJECTS_C) $(ARCHIVE).a $(ARCHIVE).cmxa $(INST) $(TMPPKGDIR)
104 cd $(TESTDIR) ; export OCAMLPATH=../$(TMPDIR):$$OCAMLPATH ; make opt
108 test ! -f $(ARCHIVE).cmxa || extra="$(ARCHIVE).a $(ARCHIVE).cmxa" ; \
109 if [ "$(PREFIX)" = "" ]; then \
110 $(OCAMLFIND) install \
111 $(PACKAGE) $(ARCHIVE).cma lib$(ARCHIVE).a \
112 $(DLL) $(INST) $$extra; \
114 $(OCAMLFIND) install -ldconf /def/null -destdir $(PREFIX) \
115 $(PACKAGE) $(ARCHIVE).cma lib$(ARCHIVE).a \
116 $(DLL) $(INST) $$extra; \
120 if [ "$(PREFIX)" = "" ]; then \
121 ocamlfind remove $(PACKAGE); \
123 ocamlfind remove -destdir $(PREFIX) $(PACKAGE); \
127 rm -f *.[ao] *.cm[iaxo] *.cmxa *.so $(GENERATED_FILES)
128 cd $(TESTDIR) ; make clean
132 rm -f config.log config.cache config.status Makefile META
133 cd $(TESTDIR) ; make distclean