aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGaëtan Gilbert2019-11-20 15:31:57 +0100
committerGaëtan Gilbert2019-11-21 14:31:12 +0100
commit799bd29627c554f83c1ec9b4a226a739632cbc29 (patch)
tree22d10310369f8be2488655785b04fd139bf22866
parentb680b06b31c27751a7d551d95839aea38f7fbea1 (diff)
Document -vos flag for coqdep
-rw-r--r--doc/sphinx/practical-tools/coq-commands.rst8
-rw-r--r--man/coqdep.13
-rw-r--r--tools/coqdep.ml1
3 files changed, 12 insertions, 0 deletions
diff --git a/doc/sphinx/practical-tools/coq-commands.rst b/doc/sphinx/practical-tools/coq-commands.rst
index 514f5acc8e..d4a61425e1 100644
--- a/doc/sphinx/practical-tools/coq-commands.rst
+++ b/doc/sphinx/practical-tools/coq-commands.rst
@@ -308,6 +308,14 @@ In addition, ``coq_makefile`` generates for a file ``foo.v`` a target
next, the purpose of this target is to be able to request the minimal
working state for editing interactively the file ``foo.v``.
+.. warning::
+
+ When writing a custom build system, be aware that ``coqdep`` only
+ produces dependencies related to ``.vos`` and ``.vok`` if the
+ ``-vos`` command line flag is passed. This is to maintain
+ compatibility with dune (see `ocaml/dune#2642 on github
+ <https://github.com/ocaml/dune/issues/2842>`_).
+
**Typical compilation of a set of file using a build system.**
Assume a file ``foo.v`` that depends on two files ``f1.v`` and ``f2.v``. The
diff --git a/man/coqdep.1 b/man/coqdep.1
index 4639a75677..02c9d4390c 100644
--- a/man/coqdep.1
+++ b/man/coqdep.1
@@ -104,6 +104,9 @@ Skips subdirectory
.TP
.B \-sort
Output the given file name ordered by dependencies.
+.TP
+.B \-vos
+Output dependencies for .vos files (this is not the default as it breaks dune's Coq mode)
.TP
.B \-boot
For coq developers, prints dependencies over coq library files
diff --git a/tools/coqdep.ml b/tools/coqdep.ml
index b9a8601d10..7a401160db 100644
--- a/tools/coqdep.ml
+++ b/tools/coqdep.ml
@@ -455,6 +455,7 @@ let usage () =
eprintf " -R dir -as logname : add and import dir recursively to coq load path under logical name logname\n"; (* deprecate? *)
eprintf " -R dir logname : add and import dir recursively to coq load path under logical name logname\n";
eprintf " -Q dir logname : add (recursively) and open (non recursively) dir to coq load path under logical name logname\n";
+ eprintf " -vos : also output dependencies about .vos files\n";
eprintf " -dumpgraph f : print a dot dependency graph in file 'f'\n";
eprintf " -dumpgraphbox f : print a dot dependency graph box in file 'f'\n";
eprintf " -exclude-dir dir : skip subdirectories named 'dir' during -R/-Q search\n";