Files
Paul GuyotandPerry E. Metzger 7dd6f662d7 ocaml-re: update to 1.14.0
Drop the depends_lib on ocaml-seq: upstream no longer requires the
seq compatibility package (minimum OCaml is now 4.12.0, and the
stdlib's built-in Seq module is used directly). Fixes the build
failure where dune could not find library "seq".

The public re.mli/Re module interface gained new functions and
modules between 1.11.0 and 1.14.0 (Re.split_delim, character
classes in Re.Posix, non-raising Re.Group variants, hex/octal
escapes, \Q...\E quoting, Re.Pcre.get_named_substring_opt, the
experimental Re.Stream API), so dependents linking against ocaml-re
need a clean rebuild. Bump revision for all direct depends_lib
dependents:

  ocaml-expect_test_helpers_kernel, ocaml-ocamlformat (main subport
  only; ocaml-ocamlformat-lib does not depend on ocaml-re),
  ocaml-sexp_pretty, ocaml-patdiff, ocaml-core_extended, ocaml-jingoo,
  ocaml-alcotest, ocaml-camlp5-buildscripts,
  ocaml-expect_test_helpers_core, everparse, stanc3, abella, camlp5,
  ocaml-xtmpl

Of these, only ocaml-core_extended re-exports Re types in its own
public interface (lib/selector.mli), but nothing in the ports tree
depends on it, so the cascade stops there.

Also fix two pre-existing non-ASCII characters (curly apostrophes)
in ocaml-patdiff and ocaml-core_extended descriptions while touching
those files.

Closes: https://trac.macports.org/ticket/67356
Signed-off-by: Paul Guyot <pguyot@kallisys.net>
2026-07-01 18:09:03 -04:00

75 lines
2.6 KiB
Tcl

# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
PortSystem 1.0
PortGroup github 1.0
github.setup abella-prover abella 2.0.8.3 v
revision 4
categories math ocaml
maintainers nomaintainer
license GPL-3
description Interactive theorem prover
long_description Abella is an interactive theorem prover based on lambda-tree syntax. \
This means that Abella is well-suited for reasoning about the meta-theory \
of programming languages and other logical systems which manipulate objects with binding.
homepage https://abella-prover.org
checksums rmd160 f80f8241eb543d515ed45c43a6cd45c40336595c \
sha256 b2a67a8c8a275ac46c2f4578b29068386ffa180c5b37ffa539d217193f37c185 \
size 258223
github.tarball_from archive
# OCaml 5.5 no longer infers first-class module package types in this context.
patchfiles-append patch-ocaml55-module-type.diff
depends_build-append \
port:ocaml \
port:ocaml-crunch \
port:ocaml-dune
depends_lib-append port:ocaml-base64 \
port:ocaml-cmdliner \
port:ocaml-menhir \
port:ocaml-re \
port:ocaml-yojson
depends_test-append port:ocaml-ounit2
build.env-append DUNE_CONFIG__COPY_FILE=portable
# https://github.com/abella-prover/abella/issues/151
if {${configure.build_arch} in [list ppc ppc64]} {
build.env-append \
BYTECODE=true
# Manual destroot does not need this, but keep it.
# destroot.env-append \
BYTECODE=true
set exe_suf .bc
} else {
set exe_suf .exe
}
use_configure no
use_parallel_build no
build.target all-release abella.install
destroot {
foreach bin { abella abella_dep abella_doc } {
copy ${worksrcpath}/_build/default/src/${bin}${exe_suf} ${destroot}${prefix}/bin/
}
xinstall -d ${destroot}${prefix}/share/${name}
xinstall -d ${destroot}${prefix}/share/man
foreach f { abella.1 abella_dep.1 abella_doc.1 } {
copy ${worksrcpath}/_build/default/src/${f} ${destroot}${prefix}/share/man/
}
copy ${worksrcpath}/emacs ${destroot}${prefix}/share/${name}/
copy ${worksrcpath}/examples ${destroot}${prefix}/share/${name}/
xinstall -m 0644 -W ${worksrcpath} CHANGES.md LICENSE README.md ${destroot}${prefix}/share/${name}/
}
test.run yes
test.cmd ${build.cmd}