this repo has no description

Merge pull request #27071 from Frama-C/frama-c.30.0

Frama c.30.0

Changed files
+318
packages
frama-c
frama-c.30.0
frama-c-metacsl
frama-c-metacsl.0.8
frama-clang
frama-clang.0.0.17
+66
packages/frama-c-metacsl/frama-c-metacsl.0.8/opam
···
···
+
opam-version: "2.0"
+
synopsis: "MetAcsl plugin of Frama-C for writing pervasives properties"
+
description: """\
+
MetAcsl let users write properties that need to be checked at particular
+
contexts (e.g. each time a location is written to inside a given set
+
of functions). It will then generate all the corresponding ACSL
+
annotations, leaving it to analysis plug-ins (e.g. WP) to prove the
+
resulting clauses."""
+
maintainer: "Virgile.Prevosto@cea.fr"
+
authors: ["Virgile Robles" "Téo Bernier" "Nikolai Kosmatov"]
+
license: "LGPL-2.1-only"
+
tags: [
+
"program verification"
+
"formal specification"
+
"C"
+
"plugins"
+
"ACSL"
+
"MetACSL"
+
]
+
homepage: "https://frama-c.com/"
+
bug-reports: "https://git.frama-c.com/pub/meta/-/issues"
+
depends: [
+
"ocaml" {>= "4.13.1"}
+
"dune" {>= "3.13" & != "3.13.0"}
+
"frama-c" {>= "30.0~" & < "31.0~"}
+
"odoc" {with-doc}
+
]
+
depopts: [
+
"conf-swi-prolog"
+
"why3" {>= "1.3.1"}
+
]
+
build: [
+
["dune" "subst"] {dev}
+
[
+
"dune"
+
"build"
+
"-p"
+
name
+
"-j"
+
jobs
+
"--promote-install-files=false"
+
"@install"
+
"@runtest" {with-test}
+
"@doc" {with-doc}
+
]
+
["dune" "install" "-p" name "--create-install-files" name]
+
]
+
messages:
+
"Note that if you wish to use the deduction features of MetAcsl, you must install the conf-swi-prolog package (and swi-prolog itself)"
+
{!conf-swi-prolog:installed}
+
dev-repo: "git+https://git.frama-c.com/pub/meta.git"
+
url {
+
src: "https://git.frama-c.com/pub/meta/-/archive/0.8/meta-0.8.tar.bz2"
+
checksum: [
+
"md5=4c81c37cc65898021413579c542018f5"
+
"sha512=7bb1299fcddf005dae63ab334e83e890f50b0cf67d0ad842d0536584d0b911cdbaef6771d748e280651f8597c4719f175fe64b5250d80e1fd288125dea233635"
+
]
+
}
+
+
x-maintenance-intent: [
+
"(latest)"
+
"(latest-1)"
+
"(latest-2)"
+
"(latest-3)"
+
"(latest-4)"
+
]
+202
packages/frama-c/frama-c.30.0/opam
···
···
+
opam-version: "2.0"
+
synopsis: "Platform dedicated to the analysis of source code written in C"
+
description:"""
+
Frama-C gathers several analysis techniques in a single collaborative
+
framework, based on analyzers (called "plug-ins") that can build upon the
+
results computed by other analyzers in the framework.
+
Thanks to this approach, Frama-C provides sophisticated tools, including:
+
- an analyzer based on abstract interpretation (Eva plug-in);
+
- a program proof framework based on weakest precondition calculus (WP plug-in);
+
- a program slicer (Slicing plug-in);
+
- a tool for verification of automata-based properties (Aoraï plug-in);
+
- a runtime verification tool (E-ACSL plug-in);
+
- several tools for code base exploration and dependency analysis
+
(plug-ins From, Impact, Metrics, Occurrence, Scope, etc.).
+
These plug-ins communicate between each other via the Frama-C API
+
and via ACSL (ANSI/ISO C Specification Language) properties.
+
"""
+
maintainer: "frama-ci-bot@frama-c.com"
+
authors: [
+
"Michele Alberti"
+
"Thibaud Antignac"
+
"Gergö Barany"
+
"Patrick Baudin"
+
"Nicolas Bellec"
+
"Thibaut Benjamin"
+
"Allan Blanchard"
+
"Lionel Blatter"
+
"François Bobot"
+
"Richard Bonichon"
+
"Vincent Botbol"
+
"Quentin Bouillaguet"
+
"David Bühler"
+
"Zakaria Chihani"
+
"Loïc Correnson"
+
"Julien Crétin"
+
"Pascal Cuoq"
+
"Zaynah Dargaye"
+
"Basile Desloges"
+
"Jean-Christophe Filliâtre"
+
"Philippe Herrmann"
+
"Maxime Jacquemin"
+
"Florent Kirchner"
+
"Alexander Kogtenkov"
+
"Remi Lazarini"
+
"Tristan Le Gall"
+
"Kilyan Le Gallic"
+
"Jean-Christophe Léchenet"
+
"Matthieu Lemerre"
+
"Dara Ly"
+
"David Maison"
+
"Claude Marché"
+
"André Maroneze"
+
"Thibault Martin"
+
"Fonenantsoa Maurica"
+
"Melody Méaulle"
+
"Benjamin Monate"
+
"Yannick Moy"
+
"Pierre Nigron"
+
"Anne Pacalet"
+
"Valentin Perrelle"
+
"Guillaume Petiot"
+
"Dario Pinto"
+
"Virgile Prevosto"
+
"Armand Puccetti"
+
"Félix Ridoux"
+
"Virgile Robles"
+
"Jan Rochel"
+
"Muriel Roger"
+
"Cécile Ruet-Cros"
+
"Julien Signoles"
+
"Nicolas Stouls"
+
"Kostyantyn Vorobyov"
+
"Boris Yakobowski"
+
]
+
homepage: "https://frama-c.com/"
+
license: "LGPL-2.1-only"
+
dev-repo: "git+https://git.frama-c.com/pub/frama-c.git"
+
doc: "https://frama-c.com/download/user-manual-30.0-Zinc.pdf"
+
bug-reports: "https://git.frama-c.com/pub/frama-c/issues"
+
tags: [
+
"deductive verification"
+
"program verification"
+
"formal specification"
+
"automated theorem prover"
+
"interactive theorem prover"
+
"C"
+
"plugins"
+
"abstract interpretation"
+
"slicing"
+
"weakest precondition"
+
"ACSL"
+
"dataflow analysis"
+
"runtime verification"
+
]
+
+
build: [
+
["bash" "dev/disable-plugins.sh" "e-acsl"] { os-family = "windows" }
+
["bash" "dev/disable-plugins.sh" "gui"] { os = "macos" }
+
["dune" "build" "-j%{jobs}%" "--release" "--promote-install-files=false"
+
"@install"
+
"@doc" { with-doc }
+
]
+
]
+
+
install: [
+
[make
+
"RELEASE=yes" "PREFIX=%{prefix}%" "MANDIR=%{man}%"
+
"DOCDIR=%{doc}%" { with-doc }
+
"install"
+
]
+
]
+
+
remove: [
+
[make "PREFIX=%{prefix}%" "-f" "ivette/Makefile.installation" "uninstall"]
+
]
+
+
run-test: [
+
["dune" "exec" "--" "frama-c-ptests" "tests" "src/plugins/*/tests"
+
] { arch != "ppc64" & arch != "x86_32" & arch != "arm32" & os-distribution != "freebsd"}
+
["dune" "build" "-j%{jobs}%" "@ptests_config"
+
] { arch != "ppc64" & arch != "x86_32" & arch != "arm32" & os-distribution != "freebsd"}
+
]
+
+
depends: [
+
"dune" { > "3.13.0" }
+
"dune-configurator"
+
"dune-site" { > "3.13.0" }
+
( "alt-ergo-free" | "alt-ergo" )
+
"conf-graphviz" { post }
+
"conf-time" { with-test }
+
"menhir" { >= "20181006" & build }
+
"ocaml" { >= "4.14.0" }
+
"ocamlgraph" { >= "2.0.0" }
+
"ocamlgraph" { with-test & >= "2.1.0" }
+
"ocp-indent" { with-dev-setup & >= "1.8.1" }
+
"odoc" { with-doc }
+
"unionFind" { >= "20220107" }
+
"why3" { >= "1.7.1" & < "1.8.0" }
+
"yaml" { >= "3.0.0" }
+
"yojson" {>= "1.6.0" & (>= "2.0.1" | !with-test)}
+
"zarith" { >= "1.9" }
+
+
# PPXs
+
"ppx_deriving"
+
"ppx_deriving_yojson"
+
"ppx_deriving_yaml" { >= "0.2.0" }
+
+
# GTK3 disabled on macOS (segfaults), and made optional on Windows
+
# (due to complex situation with Cygwin + MinGW).
+
"lablgtk3" { >= "3.1.0" & os!="macos" & os-family!="windows" }
+
"lablgtk3-sourceview3" { os!="macos" & os-family!="windows" }
+
"conf-gtksourceview3" { os!="macos" & os-family!="windows" }
+
]
+
+
# Note: do not put particular versions here, if some version is *incompatible*,
+
# use the field 'conflicts'.
+
depopts: [
+
"apron"
+
"mlmpfr"
+
"zmq"
+
"lablgtk3" { os-family="windows" }
+
"lablgtk3-sourceview3" { os-family="windows" }
+
"conf-gtksourceview3" { os-family="windows" }
+
]
+
+
conflicts: [
+
"cairo2" { < "0.6.2" }
+
"mlmpfr" { < "4.1.0-bugfix2" }
+
"pilat" { <= "1.6" }
+
"result" { < "1.5" }
+
]
+
+
post-messages: [
+
"The Frama-C/WP plug-in requires one or more external prover(s).
+
Recommended provers are:
+
- Alt-Ergo (https://alt-ergo.ocamlpro.com)
+
- CVC4 (https://cvc4.github.io)
+
- CVC5 (https://cvc5.github.io)
+
- Z3 (https://github.com/Z3Prover/z3)
+
Use 'why3 config detect' to configure new provers.
+
 " { success }
+
"Ivette is a new GUI for Frama-C, currently in development.
+
Run 'ivette' once to finalize installation (requires an internet connection).
+
Once finalized, 'ivette' will work offline.
+
Finalization also requires Node v20 or v22 and Yarn:
+
- install NVM (https://github.com/nvm-sh/nvm)
+
- run 'nvm use 22'
+
- run 'npm install --global yarn'" { success }
+
]
+
+
x-maintenance-intent: [
+
"(latest).(any)"
+
"(latest-1).(latest)"
+
"(latest-2).(latest)"
+
"(latest-3).(latest)"
+
"(latest-4).(latest)"
+
]
+
+
url {
+
src: "https://www.frama-c.com/download/frama-c-30.0-Zinc.tar.gz"
+
checksum: "sha256=3ac0f995261ec829a7bd042bf70fc29ac6379029eb9df30bcc044748eb4d2a56"
+
}
+50
packages/frama-clang/frama-clang.0.0.17/opam
···
···
+
opam-version: "2.0"
+
synopsis: "Frama-C plug-in based on Clang for parsing C++ files"
+
description:
+
"This Frama-C plug-in parse C++ files that may contain ACSL++ annotations."
+
maintainer: "Virgile.Prevosto@cea.fr"
+
authors: "Virgile Prevosto"
+
license: "LGPL-2.1-only"
+
tags: ["formal specification" "C++" "plugins" "ACSL" "ACSL++"]
+
homepage: "https://frama-c.com/frama-clang.html"
+
bug-reports: "https://git.frama-c.com/pub/frama-clang/-/issues"
+
depends: [
+
"dune" {>= "3.13" & != "3.13.0"}
+
"frama-c" {>= "30.0~" & < "31.0~"}
+
"zarith" {>= "1.5"}
+
"camlp5"
+
"camlp-streams"
+
"conf-llvm" {>= "11.0.0"}
+
"conf-libclang" {>= "11.0.0"}
+
"conf-clang"
+
"conf-cmake"
+
"odoc" {with-doc}
+
]
+
build: [
+
["dune" "subst"] {dev}
+
[
+
"dune"
+
"build"
+
"-p"
+
name
+
"-j"
+
jobs
+
"--promote-install-files=false"
+
"@install"
+
"@runtest" {with-test}
+
"@doc" {with-doc}
+
]
+
["dune" "install" "-p" name "--create-install-files" name]
+
]
+
dev-repo: "git+https://git.frama-c.com/pub/frama-clang.git"
+
url {
+
src:
+
"https://git.frama-c.com/pub/frama-clang/-/archive/0.0.17/frama-clang-0.0.17.tar.bz2"
+
checksum: [
+
"md5=3535fef2cd555b1fd1ee8cfb746d4a86"
+
"sha512=2402446802b8369225dbfff15e0646b4b4567f7addb18fc633c6effac86b2abb9e9a35111189ad71e5aaf6acafd7b51436c898ed50283f52a435ffcafaada334"
+
]
+
}
+
x-ci-accept-failures: ["debian-11" "ubuntu-20.04"]
+
+
x-maintenance-intent: [ "(latest)" "(latest-1)" ]