aboutsummaryrefslogtreecommitdiff
path: root/dev
diff options
context:
space:
mode:
authorEmilio Jesus Gallego Arias2019-11-24 19:57:02 +0100
committerEmilio Jesus Gallego Arias2019-12-04 14:14:58 +0100
commit1d454c7721a429490165d1147313c061164b0b66 (patch)
tree1bdf490ceb6af078424608c306df8417971f3599 /dev
parenteffbc03b9072ff94f96e54a5026ce04d7aa41bcc (diff)
[dune] Update to dune language version 2.0
This is the minimal set of changes requires for Coq to build under 2.0 mode. We may likely take advantage of some more new features. Note that Dune 2.0 requires OCaml >= 4.06.0, OPAM allows to use Dune in older versions as it will install a secondary compiler.
Diffstat (limited to 'dev')
-rwxr-xr-xdev/build/windows/makecoq_mingw.sh19
-rw-r--r--dev/ci/docker/bionic_coq/Dockerfile6
-rw-r--r--dev/dune-workspace.all2
3 files changed, 20 insertions, 7 deletions
diff --git a/dev/build/windows/makecoq_mingw.sh b/dev/build/windows/makecoq_mingw.sh
index 78c0b4b2c7..82cc7a7117 100755
--- a/dev/build/windows/makecoq_mingw.sh
+++ b/dev/build/windows/makecoq_mingw.sh
@@ -1132,11 +1132,22 @@ function make_findlib {
function make_dune {
make_ocaml
- if build_prep https://github.com/ocaml/dune/archive/ 1.10.0 tar.gz 1 dune-1.10.0 ; then
+ if build_prep https://github.com/ocaml/dune/archive/ 2.0.0 tar.gz 1 dune-2.0.0 ; then
log2 make release
log2 make install
+ # Dune support libs, we don't install glob and action-plugin as
+ # they are not needed by Coq
+ logn dune-private-build dune build -p dune-private-libs @install
+ logn dune-private-install dune install dune-private-libs
+
+ logn dune-configurator-build dune build -p dune-configurator @install
+ logn dune-configurator-install dune install dune-configurator
+
+ logn dune-build-info dune build -p dune-build-info @install
+ logn dune-build-info dune install dune-build-info
+
build_post
fi
}
@@ -1191,7 +1202,8 @@ function make_ocaml_cairo2 {
log2 dune build cairo2.install
log2 dune install cairo2
- log2 dune clean
+ # See https://github.com/ocaml/dune/issues/2921
+ # log2 dune clean
build_post
fi
@@ -1216,7 +1228,8 @@ function make_lablgtk {
log2 dune build -p lablgtk3-sourceview3
log2 dune install lablgtk3-sourceview3
- log2 dune clean
+ # See https://github.com/ocaml/dune/issues/2921
+ # log2 dune clean
build_post
fi
}
diff --git a/dev/ci/docker/bionic_coq/Dockerfile b/dev/ci/docker/bionic_coq/Dockerfile
index e80f96362b..8907843b12 100644
--- a/dev/ci/docker/bionic_coq/Dockerfile
+++ b/dev/ci/docker/bionic_coq/Dockerfile
@@ -1,4 +1,4 @@
-# CACHEKEY: "bionic_coq-V2019-11-25-V01"
+# CACHEKEY: "bionic_coq-V2019-12-03-V81"
# ^^ Update when modifying this file.
FROM ubuntu:bionic
@@ -37,7 +37,7 @@ ENV COMPILER="4.05.0"
# Common OPAM packages.
# `num` does not have a version number as the right version to install varies
# with the compiler version.
-ENV BASE_OPAM="num ocamlfind.1.8.1 dune.1.11.3 ounit.2.0.8 odoc.1.4.2" \
+ENV BASE_OPAM="num ocamlfind.1.8.1 dune.2.0.0 ounit.2.0.8 odoc.1.4.2" \
CI_OPAM="menhir.20190626 ocamlgraph.1.8.8" \
BASE_ONLY_OPAM="elpi.1.8.0"
@@ -58,7 +58,7 @@ RUN opam switch create "${COMPILER}+32bit" && eval $(opam env) && \
# EDGE switch
ENV COMPILER_EDGE="4.09.0" \
COQIDE_OPAM_EDGE="cairo2.0.6.1 lablgtk3-sourceview3.3.0.beta6" \
- BASE_OPAM_EDGE="dune-release.1.3.2"
+ BASE_OPAM_EDGE="dune-release.1.3.3"
# EDGE+flambda switch, we install CI_OPAM as to be able to use
# `ci-template-flambda` with everything.
diff --git a/dev/dune-workspace.all b/dev/dune-workspace.all
index 28e8773e25..49e338d0a5 100644
--- a/dev/dune-workspace.all
+++ b/dev/dune-workspace.all
@@ -1,4 +1,4 @@
-(lang dune 1.10)
+(lang dune 2.0)
; Add custom flags here. Default developer profile is `dev`
(context (opam (switch 4.05.0)))