Draft: dune build scripts
This is part of iris#471 (closed).
Instructions are needed, but with dune 3.4 this already supports dune build
, dune coq top
.
Merge request reports
Activity
The CI error in https://gitlab.mpi-sws.org/Blaisorblade/stdpp/-/jobs/199312 makes no sense to me. It seems a regression in the upstream package, but https://github.com/ocaml/opam-repository/blob/master/packages/coq/coq.8.14.1/opam hasn't changed!
I'll investigate :-|.
- theories/dune 0 → 100644
1 (include_subdirs qualified) It's required to include subfolders of
theories
— like in coq_makefile's defaults. I don't think it ever makes sense to omit it. For stdpp it'd technically work, but not for iris.Docs at https://dune.readthedocs.io/en/stable/coq.html#include-subdirs-coq.
Ah, this is coq-specific. Is it possible to move this below
coq.theory
, together withflags
? IMO it makes more sense to first say "this is a Coq theory" and then start having coq-specific configuration.Edited by Ralf Jungchanged this line in version 2 of the diff
- theories/dune 0 → 100644
1 (include_subdirs qualified) 2 (coq.theory 3 (name stdpp) 4 (package coq-stdpp) changed this line in version 2 of the diff
- dune-project 0 → 100644
1 (lang dune 3.3) 2 ; Basic configuration for the Coq build tool "dune". - Edited by Ralf Jung
Most/all of this are runes
. I should probably annotate the useful parts — I could recover the comments from https://github.com/ejgallego/coq-plugin-template/blob/v8.16/theories/dune.
mentioned in merge request iris!820 (closed)
- dune-project 0 → 100644
1 (lang dune 3.3) 2 ; Basic configuration for the Coq build tool "dune". 3 ; This file has to stay in this directory to mark it as a dune project. 4 (using coq 0.4) 5 (name coq-stdpp) From what I understand, the way we set up stdpp_unstable is a problem for dune
FWIW, I think
dune
prefers/demands disjoint logical pathsso the fact that
stdpp.unstable
is nested insidestdpp
makes dune unhappy.- theories/dune 0 → 100644
1 (include_subdirs qualified) 2 (coq.theory 3 (name stdpp) 4 (package coq-stdpp) 5 6 (flags (:standard 7 ;'Global Hint Rewrite' not supported before Coq 8.14. 8 -w -deprecated-hint-rewrite-without-locality 9 ; Fixing this one requires Coq 8.15. 10 -w -deprecated-typeclasses-transparency-without-locality 11 ; Fixing this one requires Coq 8.13. 12 -w -deprecated-syntactic-definition changed this line in version 2 of the diff
I think to make progress on this we should have a dune meeting where you (@Blaisorblade and @lepigre I guess?) explain to us what this is about and why we should have in the repo and what we should be aware of.
Basically what I am concerned about is having files in the repo that neither @robbertkrebbers nor me understand at all. I am also concerned that there is no CI that checks that these files make any sense, so things I do in the repo may break dune in ways I cannot predict. Remember that Dune files are basically opaque binary blobs to us, they are not very self-explaining to people that never have and do not plan to use dune themselves. We're fine with having other people maintain this but then (a) that needs to be clear and (b) I think we need CI to at least know when we have to poke you guys about the fact that something is breaking dune.
added 108 commits
-
5b487330...c59b6199 - 107 commits from branch
iris:master
- 2e7fac38 - dune build scripts
-
5b487330...c59b6199 - 107 commits from branch
added 16 commits
-
2e7fac38...d40a9005 - 15 commits from branch
iris:master
- 0c04cb06 - dune build scripts
-
2e7fac38...d40a9005 - 15 commits from branch
added S-waiting-for-author label
Closing for now.
We might want to follow-up on this and iris!820 (closed), but I'm not sure keeping this MR open for now helps.