- $(OCAMLFIND) install -destdir $(OCAMLSTDLIBDIR) $(PKGNAME) $^
- ln -fs $(DLL) $(OCAMLSTUBDIR)/lib$(ARCHIVE).so
-
-CLEANFILES = \
- $(ARCHIVE).{cma,cmxa,a} $(CMI_S) $(CMO_S) $(CMX_S) ml_gdome_xslt.o \
- $(DLL) $(INIT).cm[iox] libmlgdome2-xslt.a
-
-INCLUDES = \
- $(GDOME_CFLAGS) $(MLGDOME_CFLAGS) \
- -I/usr/include/caml -I$(top_srcdir)/C/gdome_xslt
-
-$(ARCHIVE).cma $(DLL): $(CMO_S)
- $(OCAMLMKLIB) -o $(ARCHIVE) -L@OCAMLSTUBDIR@ $(CMO_S) $(O_S) $(SHARED_LIBS)
-$(ARCHIVE).cmxa $(ARCHIVE).a: $(CMX_S)
- $(OCAMLMKLIB) -o $(ARCHIVE) -L@OCAMLSTUBDIR@ $(CMX_S) $(O_S) $(SHARED_LIBS)
-
-%.cmi: %.mli
- $(OCAMLC) -c $<
-%.cmo: %.ml %.cmi
- $(OCAMLC) -c $<
-%.cmx: %.ml %.cmi
- $(OCAMLOPT) -c $<
-
-i_gdome_xslt.cmo: i_gdome_xslt.ml
- $(OCAMLC) -c $<
-i_gdome_xslt.cmx: i_gdome_xslt.ml
- $(OCAMLOPT) -c $<
-
-depend: *.ml *.mli
- $(OCAMLDEP) *.ml *.mli >.depend
+ for i in $^; do \
+ if [ "$$i" != "$(DLL)" ]; then \
+ $(INSTALL_DATA) $$i $(OCAMLINSTALLDIR)/$$i; \
+ fi \
+ done
+ if [ "x$(OCAMLFIND)" != "x" ]; then \
+ mv $(OCAMLINSTALLDIR) $(OCAMLINSTALLDIR).saved; \
+ $(OCAMLFIND) install -destdir $(DESTDIR)$(OCAMLSTDLIBDIR)/ $(PKGNAME) META $(DLL); \
+ $(INSTALL_DATA) $(OCAMLINSTALLDIR).saved/* $(OCAMLINSTALLDIR)/; \
+ rm -rf $(OCAMLINSTALLDIR).saved/; \
+ else \
+ $(INSTALL_DATA) $(DLL) $(STUBSDIR); \
+ fi
+ ln -fs $(DLL) $(STUBSDIR)/lib$(ARCHIVE).so
+
+uninstall-local:
+ if [ "x$(OCAMLFIND)" != "x" ]; then \
+ $(OCAMLFIND) remove -destdir $(DESTDIR)$(OCAMLSTDLIBDIR)/ $(PKGNAME); \
+ else \
+ rm -rf $(OCAMLINSTALLDIR); \
+ rm $(STUBSDIR)/$(DLL); \
+ fi
+ rm $(STUBSDIR)/lib$(ARCHIVE).so
+
+#### OCaml only stuff from now on
+
+DEPOBJS = *.ml *.mli
+
+depend:
+ $(OCAMLDEP) $(DEPOBJS) > .depend
+
+%.cmi : $(srcdir)/%.mli
+ if test ! -e $(@:%.cmi=%.mli) -a "x$(srcdir)" != "x." ; then $(LN_S) $< . ; fi
+ $(OCAMLC) -c $(@:%.cmi=%.mli)
+
+%.cmo : $(srcdir)/%.ml
+ if test ! -e $(@:%.cmo=%.ml) -a "x$(srcdir)" != "x." ; then $(LN_S) $< . ; fi
+ $(OCAMLC) -c $(@:%.cmo=%.ml)
+
+%.cmx %.o : $(srcdir)/%.ml
+ if test ! -e $(@:%.cmx=%.ml) -a "x$(srcdir)" != "x." ; then $(LN_S) $< . ; fi
+ $(OCAMLOPT) -c $(@:%.cmx=%.ml)
+