]> matita.cs.unibo.it Git - helm.git/blob - helm/DEVEL/gdome_xslt/ocaml/gdome_xslt/Makefile.am
ocaml 3.09 transition
[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 BUILT_SOURCES = x_gdome_xslt.c
16
17 CLEANFILES = \
18   $(ARCHIVE).cma $(ARCHIVE).cmxa $(ARCHIVE).a lib$(ARCHIVE).a $(DLL)    \
19   *.cmo *.cmx *.cmi $(BUILT_SOURCES)
20
21 EXTRA_DIST =    \
22         META.in .depend \
23         gdome_xslt.ml gdome_xslt.mli gdome_xslt_init.ml gdome_xslt_init.mli     \
24         i_gdome_xslt.ml \
25         ocaml-io.h
26
27 if HAVE_OCAMLOPT_COND
28 noinst_DATA =   \
29         $(ARCHIVE).cma $(DLL) $(ARCHIVE).cmxa $(ARCHIVE).a lib$(ARCHIVE).a      \
30         gdome_xslt_init.cmo gdome_xslt_init.cmx
31 else
32 noinst_DATA =   \
33         $(ARCHIVE).cma $(DLL) gdome_xslt_init.cmo lib$(ARCHIVE).a
34 endif
35
36 noinst_LTLIBRARIES = libmlgdome2-xslt.la
37 C_SRC = ml_gdome_xslt.c x_gdome_xslt.c 
38 libmlgdome2_xslt_la_SOURCES = $(C_SRC)
39
40 O_S = $(C_SRC:%.c=.libs/%.o)
41 LO_S = $(O_S:%.o=%.lo)
42 CMA_DEPS = i_gdome_xslt.cmo gdome_xslt.cmo
43 CMXA_DEPS = $(CMA_DEPS:%.cmo=%.cmx)
44 SHARED_LIBS = $(LIBXSLT_LIBS) $(GDOME_LIBS)
45
46 x_gdome_xslt.c: $(top_srcdir)/C/gdome_xslt/gdome_xslt.c
47         cp $< $@
48
49 $(ARCHIVE).cma: $(CMA_DEPS)
50         $(OCAMLMKLIB) -o $(ARCHIVE) $^ $(SHARED_LIBS)
51 $(ARCHIVE).cmxa: $(CMXA_DEPS)
52         $(OCAMLMKLIB) -o $(ARCHIVE) $^ $(SHARED_LIBS)
53 lib$(ARCHIVE).a $(DLL): $(O_S)
54         $(OCAMLMKLIB) -o $(ARCHIVE) $^ $(SHARED_LIBS)
55
56 INCLUDES = $(GDOME_CFLAGS) $(MLGDOME_CFLAGS) -I/usr/include/caml -I$(top_srcdir)/C/gdome_xslt
57
58 BYTECODE_STUFF =        \
59         $(ARCHIVE).cma $(DLL) i_gdome_xslt.cmi i_gdome_xslt.ml gdome_xslt.cmi   \
60         gdome_xslt.mli gdome_xslt_init.cmi gdome_xslt_init.mli gdome_xslt_init.cmo      \
61         lib$(ARCHIVE).a
62 NATIVECODE_STUFF =      \
63         $(ARCHIVE).cmxa $(ARCHIVE).a gdome_xslt_init.cmx gdome_xslt_init.o
64 if HAVE_OCAMLOPT_COND
65 install-data-local: $(BYTECODE_STUFF) $(NATIVECODE_STUFF)
66 else
67 install-data-local: $(BYTECODE_STUFF)
68 endif
69         $(mkinstalldirs) $(OCAMLINSTALLDIR) $(STUBSDIR)
70         chmod -x $(DLL)
71         for i in $^; do \
72                 if [ "$$i" != "$(DLL)" ]; then  \
73                         $(INSTALL_DATA) $$i $(OCAMLINSTALLDIR)/$$i; \
74                 fi      \
75         done
76         if [ "x$(OCAMLFIND)" != "x" ]; then \
77                 mv $(OCAMLINSTALLDIR) $(OCAMLINSTALLDIR).saved; \
78                 $(OCAMLFIND) install -destdir $(DESTDIR)$(OCAMLSTDLIBDIR)/ $(PKGNAME) META $(DLL); \
79                 $(INSTALL_DATA) $(OCAMLINSTALLDIR).saved/* $(OCAMLINSTALLDIR)/; \
80                 rm -rf $(OCAMLINSTALLDIR).saved/;       \
81         else    \
82                 $(INSTALL_DATA) $(DLL) $(STUBSDIR);     \
83         fi
84
85 uninstall-local:
86         if [ "x$(OCAMLFIND)" != "x" ]; then     \
87           $(OCAMLFIND) remove -destdir $(DESTDIR)$(OCAMLSTDLIBDIR)/ $(PKGNAME); \
88         else    \
89                 rm -rf $(OCAMLINSTALLDIR);      \
90                 rm $(STUBSDIR)/$(DLL);  \
91         fi
92         rm $(STUBSDIR)/lib$(ARCHIVE).so
93
94 #### OCaml only stuff from now on
95
96 DEPOBJS = *.ml *.mli
97
98 depend:
99         $(OCAMLDEP) $(DEPOBJS) > .depend
100
101 %.cmi : $(srcdir)/%.mli
102         if test ! -e $(@:%.cmi=%.mli) -a "x$(srcdir)" != "x." ; then $(LN_S) $< . ; fi
103         $(OCAMLC) -c $(@:%.cmi=%.mli)
104
105 %.cmo : $(srcdir)/%.ml
106         if test ! -e $(@:%.cmo=%.ml) -a "x$(srcdir)" != "x." ; then $(LN_S) $< . ; fi
107         $(OCAMLC) -c $(@:%.cmo=%.ml)
108
109 %.cmx %.o : $(srcdir)/%.ml
110         if test ! -e $(@:%.cmx=%.ml) -a "x$(srcdir)" != "x." ; then $(LN_S) $< . ; fi
111         $(OCAMLOPT) -c $(@:%.cmx=%.ml)
112
113 include .depend
114