Subject: [PATCH] gnu: dune: Update to 2.7.1.

From: Julien Lepiller <[email-masked]>
Date: Thu, 1 Oct 2020 15:39:09 +0200

Hi Guix!

This patch series updates dune to 2.7.1.  The first patch is unrelated,
but reduces the number of dependents of ocaml-4.07, which I'd like to
remove in the future, by building unison with 4.09.

Then, 4 updates that are required, or they fail to build with the newer
dune.  Since dune 2 removed jbuilder entirely, we need to get rid of
every use of the #:jbuild argument, which I do in the following patches.

I add stdlib-shims, which is required for other updates later in the
series.  I then update 6 more packages, that fail in their current
version with dune 2, but whose updated version work well with dune 1
and 2.

I add csexp, which is a dependency of dune-configurator 2, convert
compiler-libs and jane-street-headers to ocaml-4.07 only (so they don't
need to be updated for now, as that would create all sorts of issues).
The penultimate patch ensures we build all ocaml4.07- packages with
ocaml4.07-dune, which was not a problem before but...

The last patch updates dune to 2.7.1, and keeps ocaml4.07-dune at its
current version, which causes problems when mixing the two, hence the
previous patch.

The reason for preserving the version of ocaml4.07-dune is that many
dependents were created for jbuilder, so we'd need to change many of
them in order to update ocaml4.07-dune.

In the future, I'd like to add ocaml 4.11, update bap and maybe some
other packages to use ocaml 4.09, and remove 4.07, eliminating dune 1
completely.