The main change below is that parmap now builds with dune instead of ocamlbuild.
The patches go away because upstream now supports more current versions of ocaml. Tested with coccinelle (the only consumer). ok? Index: Makefile =================================================================== RCS file: /cvs/ports/devel/ocaml-parmap/Makefile,v retrieving revision 1.13 diff -u -p -u -r1.13 Makefile --- Makefile 9 Jun 2020 17:34:13 -0000 1.13 +++ Makefile 13 Dec 2020 05:38:21 -0000 @@ -3,13 +3,12 @@ COMMENT = OCaml parallel map primitive for multicores CATEGORIES = devel -V = 1.0-rc10 -REVISION = 2 +V = 1.1.1 NAME = ocaml-parmap DISTNAME = ocaml-parmap-$V DISTFILES = ${DISTNAME}{$V}.tar.gz -WRKDIST = ${WRKDIR}/parmap-$V -PKGNAME = ocaml-parmap-${V:S/-//} +PKGNAME = ocaml-parmap-${V} + MASTER_SITES = https://github.com/rdicosmo/parmap/archive/ HOMEPAGE = https://github.com/rdicosmo/parmap @@ -18,15 +17,14 @@ HOMEPAGE = https://github.com/rdicosmo/p PERMIT_PACKAGE = Yes MODULES = lang/ocaml -BUILD_DEPENDS = sysutils/findlib devel/ocaml-ocamlbuild -USE_GMAKE = Yes - -CONFIGURE_STYLE = gnu -FAKE_FLAGS = DESTDIR=${WRKINST}${TRUEPREFIX} +BUILD_DEPENDS = sysutils/findlib \ + devel/dune -TEST_TARGET = tests TEST_DEPENDS = ${BASE_PKGPATH} +WRKDIST = ${WRKDIR}/parmap-$V + +ALL_TARGET = .include <bsd.port.mk> Index: distinfo =================================================================== RCS file: /cvs/ports/devel/ocaml-parmap/distinfo,v retrieving revision 1.4 diff -u -p -u -r1.4 distinfo --- distinfo 19 Jun 2019 09:18:18 -0000 1.4 +++ distinfo 13 Dec 2020 05:38:21 -0000 @@ -1,2 +1,2 @@ -SHA256 (ocaml-parmap-1.0-rc10.tar.gz) = crjIsRFCqNvTyBwMZqx6hQhKYU+S8pX/IZVxBwPfywo= -SIZE (ocaml-parmap-1.0-rc10.tar.gz) = 99391 +SHA256 (ocaml-parmap-1.1.1.tar.gz) = tTqSBdKC9GY+Z7CZsV64vlEH1xWYj2BNMacSFOhMv+4= +SIZE (ocaml-parmap-1.1.1.tar.gz) = 44311 Index: patches/patch-bytearray_ml =================================================================== RCS file: patches/patch-bytearray_ml diff -N patches/patch-bytearray_ml --- patches/patch-bytearray_ml 19 Jun 2019 09:18:18 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,16 +0,0 @@ -$OpenBSD: patch-bytearray_ml,v 1.1 2019/06/19 09:18:18 chrisz Exp $ - -Index: bytearray.ml ---- bytearray.ml.orig -+++ bytearray.ml -@@ -61,7 +61,9 @@ let of_string s = - - let mmap_of_string fd s = - let l = String.length s in -- let ba = Bigarray.Array1.map_file fd Bigarray.char Bigarray.c_layout true l in -+ let ba = -+ Bigarray.array1_of_genarray @@ -+ Unix.map_file fd Bigarray.char Bigarray.c_layout true [|l|] in - unsafe_blit_from_string s 0 ba 0 l; - ba - (* Index: patches/patch-parmap_ml =================================================================== RCS file: patches/patch-parmap_ml diff -N patches/patch-parmap_ml --- patches/patch-parmap_ml 19 Jun 2019 09:18:18 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,37 +0,0 @@ -$OpenBSD: patch-parmap_ml,v 1.1 2019/06/19 09:18:18 chrisz Exp $ - -Index: parmap.ml ---- parmap.ml.orig -+++ parmap.ml -@@ -109,7 +109,8 @@ let redirect ?(path = (Printf.sprintf "/tmp/.parmap.%d - (* unmarshal from a mmap seen as a bigarray *) - let unmarshal fd = - let a = -- Bigarray.Array1.map_file fd Bigarray.char Bigarray.c_layout true (-1) in -+ Bigarray.array1_of_genarray @@ -+ Unix.map_file fd Bigarray.char Bigarray.c_layout true [|~-1|] in - let res = Bytearray.unmarshal a 0 in - Unix.close fd; - res -@@ -124,8 +125,9 @@ let unmarshal fd = - - on Linux kernels, we might allocate a mmapped memory area of huge_size - and marshal into it directly - -- let ba = Bigarray.Array1.map_file -- fd Bigarray.char Bigarray.c_layout true huge_size in -+ let ba = -+ Bigarray.array1_of_genarray @@ -+ Unix.map_file fd Bigarray.char Bigarray.c_layout true huge_size in - ignore(Bytearray.marshal_to_buffer ba 0 v [Marshal.Closures]); - Unix.close fd - -@@ -624,7 +626,8 @@ let init_shared_buffer a = - let size = Array.length a in - let fd = Utils.tempfd() in - let arr = -- Bigarray.Array1.map_file fd Bigarray.float64 Bigarray.c_layout true size in -+ Bigarray.array1_of_genarray @@ -+ Unix.map_file fd Bigarray.float64 Bigarray.c_layout true [|size|] in - - (* The mmap() function shall add an extra reference to the file associated - with the file descriptor fildes which is not removed by a subsequent Index: pkg/PFRAG.dynlink-native =================================================================== RCS file: /cvs/ports/devel/ocaml-parmap/pkg/PFRAG.dynlink-native,v retrieving revision 1.1 diff -u -p -u -r1.1 PFRAG.dynlink-native --- pkg/PFRAG.dynlink-native 17 Sep 2015 17:18:35 -0000 1.1 +++ pkg/PFRAG.dynlink-native 13 Dec 2020 05:38:21 -0000 @@ -1,2 +1,2 @@ @comment $OpenBSD: PFRAG.dynlink-native,v 1.1 2015/09/17 17:18:35 jca Exp $ -@bin lib/ocaml/parmap/parmap.cmxs +lib/ocaml/parmap/parmap.cmxs Index: pkg/PFRAG.native =================================================================== RCS file: /cvs/ports/devel/ocaml-parmap/pkg/PFRAG.native,v retrieving revision 1.3 diff -u -p -u -r1.3 PFRAG.native --- pkg/PFRAG.native 4 Mar 2019 12:51:14 -0000 1.3 +++ pkg/PFRAG.native 13 Dec 2020 05:38:21 -0000 @@ -1,9 +1,9 @@ @comment $OpenBSD: PFRAG.native,v 1.3 2019/03/04 12:51:14 chrisz Exp $ %%dynlink%% lib/ocaml/parmap/bytearray.cmx -lib/ocaml/parmap/myocamlbuild.cmx lib/ocaml/parmap/parmap.a lib/ocaml/parmap/parmap.cmx lib/ocaml/parmap/parmap.cmxa +lib/ocaml/parmap/parmap_compat.cmx lib/ocaml/parmap/parmap_utils.cmx lib/ocaml/parmap/setcore.cmx Index: pkg/PLIST =================================================================== RCS file: /cvs/ports/devel/ocaml-parmap/pkg/PLIST,v retrieving revision 1.4 diff -u -p -u -r1.4 PLIST --- pkg/PLIST 4 Mar 2019 12:51:14 -0000 1.4 +++ pkg/PLIST 13 Dec 2020 05:38:21 -0000 @@ -1,16 +1,37 @@ @comment $OpenBSD: PLIST,v 1.4 2019/03/04 12:51:14 chrisz Exp $ %%native%% +doc/ +doc/parmap/ +doc/parmap/CHANGES +doc/parmap/LICENSE +doc/parmap/README.md +doc/parmap/odoc-pages/ +doc/parmap/odoc-pages/index.mld lib/ocaml/parmap/ lib/ocaml/parmap/META lib/ocaml/parmap/bytearray.cmi +lib/ocaml/parmap/bytearray.cmt +lib/ocaml/parmap/bytearray.cmti +lib/ocaml/parmap/bytearray.ml lib/ocaml/parmap/bytearray.mli +lib/ocaml/parmap/dune-package lib/ocaml/parmap/libparmap_stubs.a +lib/ocaml/parmap/opam lib/ocaml/parmap/parmap.cma lib/ocaml/parmap/parmap.cmi +lib/ocaml/parmap/parmap.cmt +lib/ocaml/parmap/parmap.cmti +lib/ocaml/parmap/parmap.ml lib/ocaml/parmap/parmap.mli +lib/ocaml/parmap/parmap_compat.cmi +lib/ocaml/parmap/parmap_compat.cmt +lib/ocaml/parmap/parmap_compat.ml lib/ocaml/parmap/parmap_utils.cmi +lib/ocaml/parmap/parmap_utils.cmt +lib/ocaml/parmap/parmap_utils.cmti +lib/ocaml/parmap/parmap_utils.ml lib/ocaml/parmap/parmap_utils.mli lib/ocaml/parmap/setcore.cmi +lib/ocaml/parmap/setcore.cmt +lib/ocaml/parmap/setcore.ml lib/ocaml/stublibs/dllparmap_stubs.so -@comment lib/ocaml/stublibs/dllparmap_stubs.so.owner -@man man/man3/Parmap.3o