···
3
+
synopsis: "Preprocessor-pretty-printer of OCaml"
5
+
Camlp5 is a preprocessor and pretty-printer for OCaml programs. It also provides parsing and printing tools.
7
+
As a preprocessor, it allows to:
9
+
extend the syntax of OCaml,
10
+
redefine the whole syntax of the language.
11
+
As a pretty printer, it allows to:
13
+
display OCaml programs in an elegant way,
14
+
convert from one syntax to another,
15
+
check the results of syntax extensions.
16
+
Camlp5 also provides some parsing and pretty printing tools:
20
+
stream parsers and lexers
22
+
It works as a shell command and can also be used in the OCaml toplevel."""
23
+
x-maintenance-intent: [ "(latest)" ]
24
+
maintainer: ["Chet Murthy <chetsky@gmail.com>"]
25
+
authors: ["Daniel de Rauglaudre" "Chet Murthy"]
26
+
license: "BSD-3-Clause"
27
+
homepage: "https://camlp5.github.io"
28
+
doc: "https://camlp5.github.io/doc/html"
29
+
bug-reports: "https://github.com/camlp5/camlp5/issues"
31
+
"ocaml" {>= "4.10" & < "5.04.0" }
33
+
"camlp-streams" { >= "5.0" }
35
+
"conf-bash" { with-test }
36
+
"camlp5-buildscripts" { >= "0.02" }
37
+
"conf-diffutils" { with-test & (os-distribution = "alpine" | os-distribution = "freebsd") }
38
+
"re" { >= "1.11.0" }
39
+
"ounit2" { with-test }
40
+
"pcre2" { >= "8.0.3" }
46
+
["./configure" "--prefix" prefix "-libdir" lib "-mandir" man "-oversion" ocaml:version]
47
+
[make "-j%{jobs}%" "DEBUG=-g" "world.opt"]
48
+
[make "-j%{jobs}%" "DEBUG=-g" "all"]
49
+
[make "-C" "testsuite" "clean" "all-tests"] { with-test }
50
+
[make "-C" "test" "clean" "all"] { with-test & os != "macos" & os != "opensuse-tumbleweed" }
51
+
# [make "-C" "scripts" "clean" "test"] { with-test }
53
+
install: [make "install"]
55
+
"ocaml-option-bytecode-only"
56
+
"pa_ppx" { < "0.18" }
57
+
"p5scm" { <= "0.3.1" }
58
+
"matita" { <= "0.99.5" }
59
+
"lablgl" { <= "1.07" }
60
+
"frama-clang" { = "0.0.14" }
62
+
x-ci-accept-failures: [ "opensuse-tumbleweed" ]
63
+
dev-repo: "git+https://github.com/camlp5/camlp5.git"
65
+
src: "https://github.com/camlp5/camlp5/archive/refs/tags/8.03.02.tar.gz"
67
+
"sha512=c3d17919c342a4bff54513803d2cc31c6f65f794b05761c26da173fbc7be004d975b6dc3e12199f64e16cdfde6048d51924c8a1560d162575933142dd4fc55d4"