# ocaml-libvirt
# Copyright (C) 2007 Red Hat Inc., Richard W.M. Jones
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA

# This file is included by Makefiles in subdirectories.

OCAMLFIND	= @OCAMLFIND@
OCAMLDEP	= @OCAMLDEP@
OCAMLC		= @OCAMLC@
OCAMLOPT	= @OCAMLOPT@

# Common rules for building OCaml objects.

ifneq ($(OCAMLFIND),)
.mli.cmi:
	$(OCAMLFIND) ocamlc $(OCAMLCFLAGS) $(OCAMLCPACKAGES) -c $<
.ml.cmo:
	$(OCAMLFIND) ocamlc $(OCAMLCFLAGS) $(OCAMLCPACKAGES) -c $<
.ml.cmx:
	$(OCAMLFIND) ocamlopt $(OCAMLOPTFLAGS) $(OCAMLOPTPACKAGES) -c $<
else
.mli.cmi:
	$(OCAMLC) $(OCAMLCFLAGS) $(OCAMLCINCS) -c $<
.ml.cmo:
	$(OCAMLC) $(OCAMLCFLAGS) $(OCAMLCINCS) -c $<
.ml.cmx:
	$(OCAMLOPT) $(OCAMLOPTFLAGS) $(OCAMLOPTINCS) -c $<
endif

%.ml %.mli: %.mly
	ocamlyacc $<
.mll.ml:
	ocamllex $<

# Dependencies.

depend: .depend

ifneq ($(OCAMLFIND),)
.depend: $(wildcard *.mli) $(wildcard *.ml)
	rm -f .depend
	$(OCAMLFIND) ocamldep $(OCAMLCPACKAGES) $(OCAMLDEPFLAGS) $^ > $@
else
.depend: $(wildcard *.mli) $(wildcard *.ml)
	rm -f .depend
	$(OCAMLDEP) $(OCAMLCINCS) $(OCAMLDEPFLAGS) $^ > $@
endif

ifeq ($(wildcard .depend),.depend)
include .depend
endif

.PHONY: depend dist check-manifest dpkg doc

.SUFFIXES:      .cmo .cmi .cmx .ml .mli .mll .mly
