Merge remote-tracking branch 'weblate/master' into master
[virt-top.git] / Make.rules.in
index b22fdf6..12037e1 100644 (file)
@@ -1,5 +1,5 @@
 # ocaml-libvirt
-# Copyright (C) 2007 Red Hat Inc., Richard W.M. Jones
+# Copyright (C) 2007-2009 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
@@ -40,18 +40,33 @@ else
        $(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) $^ > $@
+       rm -f $@ $@-t
+       $(OCAMLFIND) ocamldep $(OCAMLCPACKAGES) $(OCAMLDEPFLAGS) $^ | \
+         sed 's/ :/:/' | \
+         sed 's/ *$$//' | \
+         sed -e :a -e '/ *\\$$/N; s/ *\\\n */ /; ta' | \
+          sort > $@-t
+       mv $@-t $@
 else
 .depend: $(wildcard *.mli) $(wildcard *.ml)
-       rm -f .depend
-       $(OCAMLDEP) $(OCAMLCINCS) $(OCAMLDEPFLAGS) $^ > $@
+       rm -f $@ $@-t
+       $(OCAMLDEP) $(OCAMLCINCS) $(OCAMLDEPFLAGS) $^ | \
+         sed 's/ :/:/' | \
+         sed 's/ *$$//' | \
+         sed -e :a -e '/ *\\$$/N; s/ *\\\n */ /; ta' | \
+          sort > $@-t
+       mv $@-t $@
 endif
 
 ifeq ($(wildcard .depend),.depend)
@@ -60,4 +75,4 @@ endif
 
 .PHONY: depend dist check-manifest dpkg doc
 
-.SUFFIXES:      .cmo .cmi .cmx .ml .mli .mll
+.SUFFIXES:      .cmo .cmi .cmx .ml .mli .mll .mly