]> matita.cs.unibo.it Git - helm.git/blob - helm/DEVEL/gdome_xslt/ocaml/gdome_xslt/Makefile.am
- the mathql interpreter is not helm-dependent any more
[helm.git] / helm / DEVEL / gdome_xslt / ocaml / gdome_xslt / Makefile.am
1
2 ARCHIVE = mlgdome2-xslt
3 PKGNAME = gdome2-xslt
4 OCAMLINSTALLDIR = $(DESTDIR)$(OCAMLSTDLIBDIR)/$(PKGNAME)
5 STUBSDIR = $(DESTDIR)$(OCAMLSTUBDIR)
6 OCAMLFLAGS = -I +gdome2
7 OCAMLC = @OCAMLC@ ${OCAMLFLAGS}
8 OCAMLOPT = @OCAMLOPT@ ${OCAMLFLAGS}
9 OCAMLDEP = @OCAMLDEP@
10 OCAML_CFLAGS  = @OCAML_CFLAGS@
11 OCAMLFIND = @OCAMLFIND@
12 OCAMLMKLIB = ocamlmklib
13 DLL = dll$(ARCHIVE).so
14
15 CLEANFILES = \
16   $(ARCHIVE).cma $(ARCHIVE).cmxa $(ARCHIVE).a lib$(ARCHIVE).a $(DLL)    \
17   *.cmo *.cmx *.cmi
18
19 EXTRA_DIST =    \
20         META.in .depend \
21         gdome_xslt.ml gdome_xslt.mli gdome_xslt_init.ml gdome_xslt_init.mli     \
22         i_gdome_xslt.ml \
23         ocaml-io.h
24
25 if HAVE_OCAMLOPT_COND
26 noinst_DATA =   \
27         $(ARCHIVE).cma $(DLL) $(ARCHIVE).cmxa $(ARCHIVE).a lib$(ARCHIVE).a      \
28         gdome_xslt_init.cmo gdome_xslt_init.cmx
29 else
30 noinst_DATA =   \
31         $(ARCHIVE).cma $(DLL) gdome_xslt_init.cmo lib$(ARCHIVE).a
32 endif
33
34 noinst_LTLIBRARIES = libmlgdome2-xslt.la
35 C_SRC = ml_gdome_xslt.c
36 libmlgdome2_xslt_la_SOURCES = $(C_SRC)
37
38 O_S = $(C_SRC:%.c=%.o)
39 LO_S = $(O_S:%.o=%.lo) $(top_builddir)/C/gdome_xslt/gdome_xslt.lo
40 CMA_DEPS = i_gdome_xslt.cmo gdome_xslt.cmo
41 CMXA_DEPS = $(CMA_DEPS:%.cmo=%.cmx)
42 SHARED_LIBS = -lxslt -lgdome -lglib -lxml2 -lmlgdome
43
44 $(ARCHIVE).cma: $(CMA_DEPS)
45         $(OCAMLMKLIB) -o $(ARCHIVE) -L@OCAMLSTUBDIR@ $(CMA_DEPS) $(SHARED_LIBS)
46
47 $(ARCHIVE).cmxa: $(CMXA_DEPS)
48         $(OCAMLMKLIB) -o $(ARCHIVE) -L@OCAMLSTUBDIR@ $(CMXA_DEPS) $(SHARED_LIBS)
49
50 $(DLL) lib$(ARCHIVE).a: $(LO_S)
51         # use .lo for ocamlmklib
52         for f in $(LO_S); do    \
53                 cp $$f $$f.o;   \
54         done
55         $(OCAMLMKLIB) -o $(ARCHIVE) -L@OCAMLSTUBDIR@ $(LO_S:%=%.o)  $(SHARED_LIBS)
56         for f in $(LO_S:%=%.o); do      \
57                 rm $$f; \
58         done
59
60 INCLUDES = $(GDOME_CFLAGS) $(MLGDOME_CFLAGS) -I/usr/include/caml -I$(top_srcdir)/C/gdome_xslt
61
62 BYTECODE_STUFF =        \
63         $(ARCHIVE).cma $(DLL) i_gdome_xslt.cmi i_gdome_xslt.ml gdome_xslt.cmi   \
64         gdome_xslt.mli gdome_xslt_init.cmi gdome_xslt_init.mli gdome_xslt_init.cmo      \
65         lib$(ARCHIVE).a
66 NATIVECODE_STUFF =      \
67         $(ARCHIVE).cmxa $(ARCHIVE).a gdome_xslt_init.cmx gdome_xslt_init.o
68 if HAVE_OCAMLOPT_COND
69 install-data-local: $(BYTECODE_STUFF) $(NATIVECODE_STUFF)
70 else
71 install-data-local: $(BYTECODE_STUFF)
72 endif
73         $(mkinstalldirs) $(OCAMLINSTALLDIR) $(STUBSDIR)
74         chmod -x $(DLL)
75         for i in $^; do \
76                 if [ "$$i" != "$(DLL)" ]; then  \
77                         $(INSTALL_DATA) $$i $(OCAMLINSTALLDIR)/$$i; \
78                 fi      \
79         done
80         if [ "x$(OCAMLFIND)" != "x" ]; then \
81                 mv $(OCAMLINSTALLDIR) $(OCAMLINSTALLDIR).saved; \
82                 $(OCAMLFIND) install -destdir $(DESTDIR)$(OCAMLSTDLIBDIR)/ $(PKGNAME) META $(DLL); \
83                 $(INSTALL_DATA) $(OCAMLINSTALLDIR).saved/* $(OCAMLINSTALLDIR)/; \
84                 rm -rf $(OCAMLINSTALLDIR).saved/;       \
85         else    \
86                 $(INSTALL_DATA) $(DLL) $(STUBSDIR);     \
87         fi
88         ln -fs $(DLL) $(STUBSDIR)/lib$(ARCHIVE).so
89
90 uninstall-local:
91         if [ "x$(OCAMLFIND)" != "x" ]; then     \
92           $(OCAMLFIND) remove -destdir $(DESTDIR)$(OCAMLSTDLIBDIR)/ $(PKGNAME); \
93         else    \
94                 rm -rf $(OCAMLINSTALLDIR);      \
95                 rm $(STUBSDIR)/$(DLL);  \
96         fi
97         rm $(STUBSDIR)/lib$(ARCHIVE).so
98
99 #### OCaml only stuff from now on
100
101 DEPOBJS = *.ml *.mli
102
103 depend:
104         $(OCAMLDEP) $(DEPOBJS) > .depend
105
106 %.cmi : $(srcdir)/%.mli
107         if test ! -e $(@:%.cmi=%.mli) -a "x$(srcdir)" != "x." ; then $(LN_S) $< . ; fi
108         $(OCAMLC) -c $(@:%.cmi=%.mli)
109
110 %.cmo : $(srcdir)/%.ml
111         if test ! -e $(@:%.cmo=%.ml) -a "x$(srcdir)" != "x." ; then $(LN_S) $< . ; fi
112         $(OCAMLC) -c $(@:%.cmo=%.ml)
113
114 %.cmx %.o : $(srcdir)/%.ml
115         if test ! -e $(@:%.cmx=%.ml) -a "x$(srcdir)" != "x." ; then $(LN_S) $< . ; fi
116         $(OCAMLOPT) -c $(@:%.cmx=%.ml)
117
118 include .depend
119