Subject: [bug#64249] [PATCH 0/9] Fix frama-c

From: Julien Lepiller <[email-masked]>
Date: Wed, 10 Jan 2024 08:34:04 +0100

Le Sun, 24 Dec 2023 17:43:35 +0100,
[email-masked] a écrit :

> From: Arnaud Daby-Seesaram <[email-masked]>
> 
> 
> This patch series is built on top of
> 8b5b9fc21ea504eb5d226546884db2ebc6287b7d from
> https://git.guix-patches.cbaines.net/guix-patches/.
> 
> It:
> - updates Why3 (the non-trivial diff comes from `guix style` changes).
> 
> - adds new dependencies of frama-c.
>   These definitions come from the Guix importer for opam, with small
> edits. I had to disable checks for two of them.
>   Note: tests are disabled for similar Guix packages and are not run
> by opam.
> 
> - updates frama-c to its latest stable version.
>   I switched the package to dune-build-system.
> 
> Arnaud DABY-SEESARAM (9):
>   gnu: why3: Update to 1.6.0.
>   gnu: Add ocaml-ppx-deriving-yojson.
>   gnu: Add ocaml-junit
>   gnu: Add ocaml-junit-alcotest
>   gnu: Add ocaml-yaml
>   gnu: Add ocaml-ppx-deriving-yaml.
>   gnu: Add ocaml-ppx-import.
>   gnu: Add ocaml-dune-site.
>   gnu: update frama-c to 27.1-Cobalt.
> 
>  gnu/packages/maths.scm | 145 +++++++++++++++++++-------------------
>  gnu/packages/ocaml.scm | 154
> +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 229
> insertions(+), 70 deletions(-)
> 
> 
> base-commit: 8b5b9fc21ea504eb5d226546884db2ebc6287b7d

I managed to perform the complete update without breaking a single
dependent of ocaml@4!

I used the first 12 patches from pukkamustard, added a few updates of
my own (including a more recent ocaml-ppxlib, but not the latest, to
ensure compatibility with both janestreet 0.15 and 0.16), added your
patches (I reworked the order a bit and merged the first and last one),
fixing descriptions, license, source and adding a copyright header for
you. I also extended the dune-site definition to run the tests by
adding a few more packages. Lastly, I included pukkamustard's last
patch, and everything seems to be working now.

In total, we get 34 patches, and I checked that each intermediate
commit still builds and doesn't break any package. I'm sending them
momentarily, so QA can have a chance to build them.