Created attachment 255306 [details] 0001-textproc-sexp-New-port-S-expressions-processing-tool.patch Sexp is a "Swiss Army knife" command-line tool for processing S-expressions. Most of the patching in this port is to allow building with our ocaml-dune version. The remaining patches are trivial build fixes (either caused by the unorthodox mix of versions, a linux miss-compatibility issue of async, and what looks like to be a bug in the upstream ld.script of the re2 library exposed by a stricter llvm-ld). All the build dependencies are vendored, except for devel/ocaml-compiler-libs. The primary reason for vendoring the build dependencies is that this tool might turn out to be useful as a PATCH_DEPENDS (e.g. for patching ocaml-dune build files), and therefore we cannot tolerate the risk of introducing a cyclic-dependency. The secondary reason for vendoring is to avoid doing too much packaging work, a work which might also end up causing more friction when wanting to update other parts of the ocaml stack (see the last note). The version-set of the vendored libraries has been verified to allow this package to compile with both OCaml version 4.14 and 5.2 (for the later, with an updated ocaml-compiler-libs package). As a matter of a fact, this port only provides a single executable having no runtime-lib depedencies from the port tree. For all those reasons, it is my opinion that the advantage of vendoring the build dependencies outmatches any down-side. This port has been tested on current amd64 150027, on a recent-ish main ports tree. Note: in their latest incantations (v0.17+), many of the janestreet libraries do not work on ocaml 4.14 anymore. Upstream has clearly announced that, going forward, new releases are targetting OCaml 5+ only, and their assumption is that OCaml 5.3 will be deemed production-grade.
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=f7ef3b306b431688534e311164f33d7e50fce740 commit f7ef3b306b431688534e311164f33d7e50fce740 Author: Benjamin Jacobs <freebsd@dev.thsi.be> AuthorDate: 2024-11-20 16:25:27 +0000 Commit: Gabriel M. Dutra <dutra@FreeBSD.org> CommitDate: 2024-11-20 16:27:41 +0000 textproc/sexp: Add new port Command-line tool for processing S-expressions PR: 282868 textproc/Makefile | 1 + textproc/sexp/Makefile (new) | 129 ++++++++++++++++ textproc/sexp/distinfo (new) | 169 +++++++++++++++++++++ textproc/sexp/files/patch-dune (new) | 4 + textproc/sexp/files/patch-dune-project (new) | 5 + .../sexp/files/patch-src_main__select.ml (new) | 17 +++ ..._unix-0.16.0_linux__ext_src_linux__ext.ml (new) | 11 ++ ...ocaml-re-1.11.0-351-g140deeb_dune-project (new) | 8 + ...dor_ocaml-re-1.11.0-351-g140deeb_lib_dune (new) | 8 + ...ocaml__intrinsics-0.16.1_src_int__stubs.c (new) | 11 ++ ...1783de6abb20e0d0e0eec6080062_dune-project (new) | 5 + ...8bf4fbfec005f06ed529530af3cf_dune-project (new) | 5 + ...d0d4124e82fea686d8f35c2a3d2a_dune-project (new) | 5 + ...159e36f8d4f6aa52e3d0a569f84f_dune-project (new) | 5 + ...fda5ae2c103da7399ba178639929_dune-project (new) | 5 + ...dor_ppx__inline__test-0.17.0_dune-project (new) | 5 + ...-vendor_ppx__inline__test-0.17.0_src_dune (new) | 11 ++ ...21c3ee600e8da3f8a705d18c45b4_dune-project (new) | 5 + ...2d7d454c20d732621795d910018d1b66_ast_dune (new) | 11 ++ ...621795d910018d1b66_metaquot__lifters_dune (new) | 8 + ...2d7d454c20d732621795d910018d1b66_src_dune (new) | 10 ++ ...454c20d732621795d910018d1b66_src_gen_dune (new) | 8 + ...d454c20d732621795d910018d1b66_stdppx_dune (new) | 10 ++ ...54c20d732621795d910018d1b66_traverse_dune (new) | 10 ++ ...a4e3292d4d32936a46349c043fec_dune-project (new) | 5 + ...ea4e3292d4d32936a46349c043fec_src_shim.ml (new) | 11 ++ .../patch-vendor_re2-0.17.0_dune-project (new) | 5 + ...2-0.17.0_src_re2__c_libre2_libre2.symbols (new) | 11 ++ ...h-vendor_sexp__select-0.17.0_dune-project (new) | 5 + ...b7aafd0d4f29957bf34fc0f936ba_dune-project (new) | 5 + ...or_splittable__random-0.17.0_dune-project (new) | 5 + ...atch-vendor_time__now-0.17.0_dune-project (new) | 5 + .../patch-vendor_uopt-0.17.0_dune-project (new) | 5 + textproc/sexp/pkg-descr (new) | 4 + 34 files changed, 527 insertions(+)
Committed, thank you!