]> matita.cs.unibo.it Git - helm.git/blob - helm/DEVEL/gdome_xslt/ocaml/gdome_xslt/Makefile.am
* updated #include directives
[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) $(top_builddir)/C/gdome_xslt/gdome_xslt.o
39 LO_S = $(O_S:%.o=%.lo)
40 CMA_DEPS = i_gdome_xslt.cmo gdome_xslt.cmo
41 CMXA_DEPS = $(CMA_DEPS:%.cmo=%.cmx)
42 SHARED_LIBS = $(LIBXSLT_LIBS) $(GDOME_LIBS) -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 $(DLL) lib$(ARCHIVE).a: $(O_S)
61         $(OCAMLMKLIB) -o $(ARCHIVE) -L@OCAMLSTUBDIR@ $(O_S)  $(SHARED_LIBS)
62         for f in $(O_S); do     \
63                 rm $$f; \
64         done
65
66 INCLUDES = $(GDOME_CFLAGS) $(MLGDOME_CFLAGS) -I/usr/include/caml -I$(top_srcdir)/C/gdome_xslt
67
68 BYTECODE_STUFF =        \
69         $(ARCHIVE).cma $(DLL) i_gdome_xslt.cmi i_gdome_xslt.ml gdome_xslt.cmi   \
70         gdome_xslt.mli gdome_xslt_init.cmi gdome_xslt_init.mli gdome_xslt_init.cmo      \
71         lib$(ARCHIVE).a
72 NATIVECODE_STUFF =      \
73         $(ARCHIVE).cmxa $(ARCHIVE).a gdome_xslt_init.cmx gdome_xslt_init.o
74 if HAVE_OCAMLOPT_COND
75 install-data-local: $(BYTECODE_STUFF) $(NATIVECODE_STUFF)
76 else
77 install-data-local: $(BYTECODE_STUFF)
78 endif
79         $(mkinstalldirs) $(OCAMLINSTALLDIR) $(STUBSDIR)
80         chmod -x $(DLL)
81         for i in $^; do \
82                 if [ "$$i" != "$(DLL)" ]; then  \
83                         $(INSTALL_DATA) $$i $(OCAMLINSTALLDIR)/$$i; \
84                 fi      \
85         done
86         if [ "x$(OCAMLFIND)" != "x" ]; then \
87                 mv $(OCAMLINSTALLDIR) $(OCAMLINSTALLDIR).saved; \
88                 $(OCAMLFIND) install -destdir $(DESTDIR)$(OCAMLSTDLIBDIR)/ $(PKGNAME) META $(DLL); \
89                 $(INSTALL_DATA) $(OCAMLINSTALLDIR).saved/* $(OCAMLINSTALLDIR)/; \
90                 rm -rf $(OCAMLINSTALLDIR).saved/;       \
91         else    \
92                 $(INSTALL_DATA) $(DLL) $(STUBSDIR);     \
93         fi
94         ln -fs $(DLL) $(STUBSDIR)/lib$(ARCHIVE).so
95
96 uninstall-local:
97         if [ "x$(OCAMLFIND)" != "x" ]; then     \
98           $(OCAMLFIND) remove -destdir $(DESTDIR)$(OCAMLSTDLIBDIR)/ $(PKGNAME); \
99         else    \
100                 rm -rf $(OCAMLINSTALLDIR);      \
101                 rm $(STUBSDIR)/$(DLL);  \
102         fi
103         rm $(STUBSDIR)/lib$(ARCHIVE).so
104
105 #### OCaml only stuff from now on
106
107 DEPOBJS = *.ml *.mli
108
109 depend:
110         $(OCAMLDEP) $(DEPOBJS) > .depend
111
112 %.cmi : $(srcdir)/%.mli
113         if test ! -e $(@:%.cmi=%.mli) -a "x$(srcdir)" != "x." ; then $(LN_S) $< . ; fi
114         $(OCAMLC) -c $(@:%.cmi=%.mli)
115
116 %.cmo : $(srcdir)/%.ml
117         if test ! -e $(@:%.cmo=%.ml) -a "x$(srcdir)" != "x." ; then $(LN_S) $< . ; fi
118         $(OCAMLC) -c $(@:%.cmo=%.ml)
119
120 %.cmx %.o : $(srcdir)/%.ml
121         if test ! -e $(@:%.cmx=%.ml) -a "x$(srcdir)" != "x." ; then $(LN_S) $< . ; fi
122         $(OCAMLOPT) -c $(@:%.cmx=%.ml)
123
124 include .depend
125