summaryrefslogtreecommitdiff
path: root/devel
diff options
context:
space:
mode:
authorjaapb <jaapb@pkgsrc.org>2016-06-20 15:10:30 +0000
committerjaapb <jaapb@pkgsrc.org>2016-06-20 15:10:30 +0000
commit8994028fcb3c063fc2ab4e988d4bc01ac23b8403 (patch)
treefcd6ab7dfecac52a56d606d998719520e0e78075 /devel
parentbc29cae2ca59731b288379a2f6ba747f6fcc2eea (diff)
downloadpkgsrc-8994028fcb3c063fc2ab4e988d4bc01ac23b8403.tar.gz
Updated package to latest version, 113.33.00. Changes include:
- Changes `Sexp.to_string` to escape all non-ASCII characters. Previously chars >= 127 are escaped or not depending on: 1. other character in the string 2. the system 3. environment variable settings (2) and (3) are because `String.escaped` from the stdlib uses the C function `isprint` which is locale and OS dependent. This can cause invalid UTF-8 sequence to be printed by sexplib, which is annoying: https://github.com/janestreet/sexplib/issues/18 Starting with this release, sexplib: 1. copies the `String.escaped` function of OCaml 4.03 which escapes all non-ascii characters 2. make sure we escape the string when it contains characters >= 127 - Clean up the documentation for sexplib, modernizing it to include `ppx_sexp_conv`, and breaking up the documentation between sexplib and `ppx_sexp_conv`. Also changed the formatting to use org-mode, so it will render properly on github. Markdown doesn't render well by default, unless you use quite different conventions about linebeaks. - In sexp macro library, avoid returning success when there is any error reading a sexp. In particular, this prevents sexp resolve <(echo '(:use x)') from silently succeeding. Also, now we no longer read an included file multiple times. This lets even crazy stuff like this to work: $ echo 'hi ' | sexp resolve <(echo '((:include /dev/stdin) (:include /dev/stdin))')
Diffstat (limited to 'devel')
-rw-r--r--devel/ocaml-sexplib/Makefile10
-rw-r--r--devel/ocaml-sexplib/PLIST95
-rw-r--r--devel/ocaml-sexplib/buildlink3.mk4
-rw-r--r--devel/ocaml-sexplib/distinfo12
-rw-r--r--devel/ocaml-sexplib/patches/patch-Makefile23
-rw-r--r--devel/ocaml-sexplib/patches/patch-src_conv.ml43
6 files changed, 144 insertions, 43 deletions
diff --git a/devel/ocaml-sexplib/Makefile b/devel/ocaml-sexplib/Makefile
index fad93a67a84..2950c71cfdf 100644
--- a/devel/ocaml-sexplib/Makefile
+++ b/devel/ocaml-sexplib/Makefile
@@ -1,9 +1,8 @@
-# $NetBSD: Makefile,v 1.6 2016/05/05 11:45:39 jaapb Exp $
+# $NetBSD: Makefile,v 1.7 2016/06/20 15:10:30 jaapb Exp $
DISTNAME= sexplib-${VERS}
PKGNAME= ocaml-${DISTNAME}
-PKGREVISION= 1
-VERS= 113.24.00
+VERS= 113.33.03
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_GITHUB:=janestreet/sexplib/archive/}
DISTFILES= ${VERS}${EXTRACT_SUFX}
@@ -14,8 +13,11 @@ HOMEPAGE= https://github.com/janestreet/sexplib/
COMMENT= S-Expressions with Type Converters for OCaml
LICENSE= modified-bsd AND apache-2.0
-OCAML_USE_OASIS_DYNRUN= yes
+OCAML_USE_FINDLIB= yes
+.include "../../devel/ocaml-js-build-tools/buildlink3.mk"
+.include "../../devel/ocaml-oasis/buildlink3.mk"
.include "../../devel/ocaml-type_conv/buildlink3.mk"
+.include "../../misc/ocaml-opam/buildlink3.mk"
.include "../../mk/ocaml.mk"
.include "../../mk/bsd.pkg.mk"
diff --git a/devel/ocaml-sexplib/PLIST b/devel/ocaml-sexplib/PLIST
index 45d14a8b864..b45b1a7052e 100644
--- a/devel/ocaml-sexplib/PLIST
+++ b/devel/ocaml-sexplib/PLIST
@@ -1,39 +1,70 @@
-@comment $NetBSD: PLIST,v 1.2 2016/03/04 16:06:19 jaapb Exp $
+@comment $NetBSD: PLIST,v 1.3 2016/06/20 15:10:30 jaapb Exp $
${OCAML_SITELIB}/sexplib/META
-${OCAML_SITELIB}/sexplib/conv.mli
-${OCAML_SITELIB}/sexplib/conv_error.ml
-${OCAML_SITELIB}/sexplib/exn_magic.mli
-${OCAML_SITELIB}/sexplib/lexer.mli
-${OCAML_SITELIB}/sexplib/macro.mli
-${OCAML_SITELIB}/sexplib/path.mli
-${OCAML_SITELIB}/sexplib/pre_sexp.ml
-${OCAML_SITELIB}/sexplib/sexp.mli
-${OCAML_SITELIB}/sexplib/sexp_intf.ml
-${OCAML_SITELIB}/sexplib/sexp_with_layout.ml
+${OCAML_SITELIB}/sexplib/conv.annot
+${OCAML_SITELIB}/sexplib/conv.cmt
+${OCAML_SITELIB}/sexplib/conv.cmti
+${OCAML_SITELIB}/sexplib/conv_error.annot
+${OCAML_SITELIB}/sexplib/conv_error.cmt
+${OCAML_SITELIB}/sexplib/exn_magic.annot
+${OCAML_SITELIB}/sexplib/exn_magic.cmt
+${OCAML_SITELIB}/sexplib/exn_magic.cmti
+${OCAML_SITELIB}/sexplib/lexer.annot
+${OCAML_SITELIB}/sexplib/lexer.cmt
+${OCAML_SITELIB}/sexplib/lexer.cmti
+${OCAML_SITELIB}/sexplib/macro.annot
+${OCAML_SITELIB}/sexplib/macro.cmt
+${OCAML_SITELIB}/sexplib/macro.cmti
+${OCAML_SITELIB}/sexplib/parser.annot
+${OCAML_SITELIB}/sexplib/parser.cmt
+${OCAML_SITELIB}/sexplib/parser.cmti
+${OCAML_SITELIB}/sexplib/parser_with_layout.annot
+${OCAML_SITELIB}/sexplib/parser_with_layout.cmt
+${OCAML_SITELIB}/sexplib/parser_with_layout.cmti
+${OCAML_SITELIB}/sexplib/path.annot
+${OCAML_SITELIB}/sexplib/path.cmt
+${OCAML_SITELIB}/sexplib/path.cmti
+${OCAML_SITELIB}/sexplib/pre_sexp.annot
+${OCAML_SITELIB}/sexplib/pre_sexp.cmt
+${OCAML_SITELIB}/sexplib/sexp.annot
+${OCAML_SITELIB}/sexplib/sexp.cmt
+${OCAML_SITELIB}/sexplib/sexp.cmti
+${OCAML_SITELIB}/sexplib/sexp_intf.annot
+${OCAML_SITELIB}/sexplib/sexp_intf.cmt
+${OCAML_SITELIB}/sexplib/sexp_with_layout.annot
+${OCAML_SITELIB}/sexplib/sexp_with_layout.cmt
${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib/sexplib.a
${OCAML_SITELIB}/sexplib/sexplib.cma
${OCAML_SITELIB}/sexplib/sexplib.cmi
+${OCAML_SITELIB}/sexplib/sexplib.cmt
${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib/sexplib.cmx
${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib/sexplib.cmxa
${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib/sexplib.cmxs
-${OCAML_SITELIB}/sexplib/src_pos.mli
-${OCAML_SITELIB}/sexplib/std.ml
-${OCAML_SITELIB}/sexplib/type.ml
-${OCAML_SITELIB}/sexplib/type_with_layout.mli
-${OCAML_SITELIB}/sexplib_num/META
-${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib_num/sexplib_num.a
-${OCAML_SITELIB}/sexplib_num/sexplib_num.cma
-${OCAML_SITELIB}/sexplib_num/sexplib_num.cmi
-${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib_num/sexplib_num.cmx
-${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib_num/sexplib_num.cmxa
-${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib_num/sexplib_num.cmxs
-${OCAML_SITELIB}/sexplib_num/sexplib_num_conv.mli
-${OCAML_SITELIB}/sexplib_num/std.ml
-${OCAML_SITELIB}/sexplib_unix/META
-${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib_unix/sexplib_unix.a
-${OCAML_SITELIB}/sexplib_unix/sexplib_unix.cma
-${OCAML_SITELIB}/sexplib_unix/sexplib_unix.cmi
-${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib_unix/sexplib_unix.cmx
-${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib_unix/sexplib_unix.cmxa
-${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib_unix/sexplib_unix.cmxs
-${OCAML_SITELIB}/sexplib_unix/sexplib_unix_conv.ml
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib/sexplib_num.a
+${OCAML_SITELIB}/sexplib/sexplib_num.cma
+${OCAML_SITELIB}/sexplib/sexplib_num.cmi
+${OCAML_SITELIB}/sexplib/sexplib_num.cmt
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib/sexplib_num.cmx
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib/sexplib_num.cmxa
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib/sexplib_num.cmxs
+${OCAML_SITELIB}/sexplib/sexplib_num_conv.annot
+${OCAML_SITELIB}/sexplib/sexplib_num_conv.cmt
+${OCAML_SITELIB}/sexplib/sexplib_num_conv.cmti
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib/sexplib_unix.a
+${OCAML_SITELIB}/sexplib/sexplib_unix.cma
+${OCAML_SITELIB}/sexplib/sexplib_unix.cmi
+${OCAML_SITELIB}/sexplib/sexplib_unix.cmt
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib/sexplib_unix.cmx
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib/sexplib_unix.cmxa
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sexplib/sexplib_unix.cmxs
+${OCAML_SITELIB}/sexplib/sexplib_unix_conv.annot
+${OCAML_SITELIB}/sexplib/sexplib_unix_conv.cmt
+${OCAML_SITELIB}/sexplib/src_pos.annot
+${OCAML_SITELIB}/sexplib/src_pos.cmt
+${OCAML_SITELIB}/sexplib/src_pos.cmti
+${OCAML_SITELIB}/sexplib/std.annot
+${OCAML_SITELIB}/sexplib/std.cmt
+${OCAML_SITELIB}/sexplib/type.annot
+${OCAML_SITELIB}/sexplib/type.cmt
+${OCAML_SITELIB}/sexplib/type_with_layout.annot
+${OCAML_SITELIB}/sexplib/type_with_layout.cmt
+${OCAML_SITELIB}/sexplib/type_with_layout.cmti
diff --git a/devel/ocaml-sexplib/buildlink3.mk b/devel/ocaml-sexplib/buildlink3.mk
index 7082aa86ac4..fefceda13ec 100644
--- a/devel/ocaml-sexplib/buildlink3.mk
+++ b/devel/ocaml-sexplib/buildlink3.mk
@@ -1,11 +1,11 @@
-# $NetBSD: buildlink3.mk,v 1.1 2015/01/20 16:27:02 jaapb Exp $
+# $NetBSD: buildlink3.mk,v 1.2 2016/06/20 15:10:30 jaapb Exp $
BUILDLINK_TREE+= ocaml-sexplib
.if !defined(OCAML_SEXPLIB_BUILDLINK3_MK)
OCAML_SEXPLIB_BUILDLINK3_MK:=
-BUILDLINK_API_DEPENDS.ocaml-sexplib+= ocaml-sexplib>=112.01.00
+BUILDLINK_API_DEPENDS.ocaml-sexplib+= ocaml-sexplib>=113.33.03
BUILDLINK_PKGSRCDIR.ocaml-sexplib?= ../../devel/ocaml-sexplib
.endif # OCAML_SEXPLIB_BUILDLINK3_MK
diff --git a/devel/ocaml-sexplib/distinfo b/devel/ocaml-sexplib/distinfo
index d9e22c37047..079065302f9 100644
--- a/devel/ocaml-sexplib/distinfo
+++ b/devel/ocaml-sexplib/distinfo
@@ -1,6 +1,8 @@
-$NetBSD: distinfo,v 1.3 2016/03/04 16:06:19 jaapb Exp $
+$NetBSD: distinfo,v 1.4 2016/06/20 15:10:30 jaapb Exp $
-SHA1 (ocaml-sexplib/113.24.00.tar.gz) = 2809485197f8f0598b6cd9b807509cfe9f1190cc
-RMD160 (ocaml-sexplib/113.24.00.tar.gz) = 38372cac8dfe1fb1893476b0205121bbb65a7478
-SHA512 (ocaml-sexplib/113.24.00.tar.gz) = 0331437500a13bc26c6cc635e8f1a63454257c3c699a07562469f6ebe127c61b3428bf4465c12fead5f7ac416e664417b0f9473ab2953e9c446cbda762ba00ea
-Size (ocaml-sexplib/113.24.00.tar.gz) = 72087 bytes
+SHA1 (ocaml-sexplib/113.33.03.tar.gz) = 93dbbf1f8337eb588a94fed5b1bc844dfa8480b5
+RMD160 (ocaml-sexplib/113.33.03.tar.gz) = 49dd47c79e62f3c2116521820fe96bf6b443cc79
+SHA512 (ocaml-sexplib/113.33.03.tar.gz) = 33b0dbcfd2f2040628cc8680305e988a0b4e24d4e3d773c2a968ed5a9d9727bd7e3383b4c93ee3cb41872857026e7e747df7f1026a83b8d51b5aaebf430e9fe0
+Size (ocaml-sexplib/113.33.03.tar.gz) = 67249 bytes
+SHA1 (patch-Makefile) = b39d312d8db993db38302d42451854b1078e8209
+SHA1 (patch-src_conv.ml) = a47d82a1b3e8c1a000972b1ed9cc559e5bac38e6
diff --git a/devel/ocaml-sexplib/patches/patch-Makefile b/devel/ocaml-sexplib/patches/patch-Makefile
new file mode 100644
index 00000000000..563e446cbaf
--- /dev/null
+++ b/devel/ocaml-sexplib/patches/patch-Makefile
@@ -0,0 +1,23 @@
+$NetBSD: patch-Makefile,v 1.1 2016/06/20 15:10:30 jaapb Exp $
+
+Install in the right directory
+--- Makefile.orig 2016-04-28 09:46:25.000000000 +0000
++++ Makefile
+@@ -2,7 +2,7 @@
+
+ SETUP := setup.exe
+ NAME := sexplib
+-PREFIX = $(shell grep ^prefix= setup.data | cut -d\" -f 2)
++#PREFIX = $(shell grep ^prefix= setup.data | cut -d\" -f 2)
+
+ # Default rule
+ default: build
+@@ -30,7 +30,7 @@ $(NAME).install: install.ml setup.log se
+ ocaml -I "$(OCAML_TOPLEVEL_PATH)" install.ml
+
+ install: $(NAME).install
+- opam-installer -i --prefix $(PREFIX) $(NAME).install
++ opam-installer -i --prefix ${DESTDIR}$(PREFIX) --libdir ${OCAML_SITELIBDIR} $(NAME).install
+
+ uninstall: $(NAME).install
+ opam-installer -u --prefix $(PREFIX) $(NAME).install
diff --git a/devel/ocaml-sexplib/patches/patch-src_conv.ml b/devel/ocaml-sexplib/patches/patch-src_conv.ml
new file mode 100644
index 00000000000..7b636df8f24
--- /dev/null
+++ b/devel/ocaml-sexplib/patches/patch-src_conv.ml
@@ -0,0 +1,43 @@
+$NetBSD: patch-src_conv.ml,v 1.1 2016/06/20 15:10:30 jaapb Exp $
+
+Changes for ocaml 4.03 (patch from upstream)
+--- src/conv.ml.orig 2016-04-28 09:46:25.000000000 +0000
++++ src/conv.ml
+@@ -185,7 +185,7 @@ module Exn_converter = struct
+
+ (* [Obj.extension_id] works on both the exception itself, and the extension slot of the
+ exception. *)
+- let rec clean_up_handler (slot : Obj.t) =
++ let rec clean_up_handler (slot : extension_constructor) =
+ let id = Obj.extension_id slot in
+ let old_exn_id_map = !exn_id_map in
+ let new_exn_id_map = Exn_ids.remove id old_exn_id_map in
+@@ -196,7 +196,7 @@ module Exn_converter = struct
+ exn_id_map := new_exn_id_map
+
+ let add_auto ?(finalise = true) exn sexp_of_exn =
+- let id = Obj.extension_id exn in
++ let id = Obj.extension_id (Obj.extension_constructor exn) in
+ let rec loop () =
+ let old_exn_id_map = !exn_id_map in
+ let new_exn_id_map = Exn_ids.add id sexp_of_exn old_exn_id_map in
+@@ -205,13 +205,17 @@ module Exn_converter = struct
+ loop ()
+ else begin
+ exn_id_map := new_exn_id_map;
+- if finalise then Gc.finalise clean_up_handler (Obj.extension_slot exn)
++ if finalise then
++ try
++ Gc.finalise clean_up_handler (Obj.extension_constructor exn)
++ with Invalid_argument _ ->
++ ()
+ end
+ in
+ loop ()
+
+ let find_auto exn =
+- let id = Obj.extension_id exn in
++ let id = Obj.extension_id (Obj.extension_constructor exn) in
+ match Exn_ids.find id !exn_id_map with
+ | exception Not_found -> None
+ | sexp_of_exn -> Some (sexp_of_exn exn)