public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-ml/onanomsg/files/, dev-ml/onanomsg/
@ 2017-05-09  7:14 Alexis Ballier
  0 siblings, 0 replies; 2+ messages in thread
From: Alexis Ballier @ 2017-05-09  7:14 UTC (permalink / raw
  To: gentoo-commits

commit:     92931e35533b6568378bbc0a5828068e25b72851
Author:     Alexis Ballier <aballier <AT> gentoo <DOT> org>
AuthorDate: Tue May  9 06:52:56 2017 +0000
Commit:     Alexis Ballier <aballier <AT> gentoo <DOT> org>
CommitDate: Tue May  9 07:14:21 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92931e35

dev-ml/onanomsg: Backport upstream patch to use ocaml-bigstring, fixes build with latest ocaml-containers

Package-Manager: Portage-2.3.5, Repoman-2.3.2

 dev-ml/onanomsg/files/bigstring.patch              | 218 +++++++++++++++++++++
 ...{onanomsg-1.0.ebuild => onanomsg-1.0-r1.ebuild} |  10 +-
 2 files changed, 226 insertions(+), 2 deletions(-)

diff --git a/dev-ml/onanomsg/files/bigstring.patch b/dev-ml/onanomsg/files/bigstring.patch
new file mode 100644
index 00000000000..311fa2ee749
--- /dev/null
+++ b/dev-ml/onanomsg/files/bigstring.patch
@@ -0,0 +1,218 @@
+Index: onanomsg-1.0/lib/nanomsg.ml
+===================================================================
+--- onanomsg-1.0.orig/lib/nanomsg.ml
++++ onanomsg-1.0/lib/nanomsg.ml
+@@ -209,7 +209,7 @@ let recv_fd sock =
+   (Obj.magic fd : Unix.file_descr)
+ 
+ let send_bigstring_buf ?(block=true) sock buf pos len =
+-  if pos < 0 || len < 0 || pos + len > CCBigstring.size buf
++  if pos < 0 || len < 0 || pos + len > Bigstring.size buf
+   then invalid_arg "bounds";
+   let nn_buf = nn_allocmsg (size_of_int len) 0 in
+   match nn_buf with
+@@ -218,12 +218,12 @@ let send_bigstring_buf ?(block=true) soc
+     let nn_buf_p = Ctypes.(allocate (ptr void) nn_buf) in
+     let ba = Ctypes.(bigarray_of_ptr array1 len
+                        Bigarray.char @@ from_voidp char nn_buf) in
+-    CCBigstring.blit buf pos ba 0 len;
++    Bigstring.blit buf pos ba 0 len;
+     ignore @@ raise_notequal len
+       (fun () -> nn_send sock nn_buf_p nn_msg (int_of_bool block))
+ 
+ let send_bigstring ?(block=true) sock buf =
+-  send_bigstring_buf ~block sock buf 0 @@ CCBigstring.size buf
++  send_bigstring_buf ~block sock buf 0 @@ Bigstring.size buf
+ 
+ let send_bytes_buf ?(block=true) sock buf pos len =
+   if pos < 0 || len < 0 || pos + len > Bytes.length buf
+@@ -235,7 +235,7 @@ let send_bytes_buf ?(block=true) sock bu
+     let nn_buf_p = Ctypes.(allocate (ptr void) nn_buf) in
+     let ba = Ctypes.(bigarray_of_ptr array1 len
+                        Bigarray.char @@ from_voidp char nn_buf) in
+-    CCBigstring.blit_of_bytes buf pos ba 0 len;
++    Bigstring.blit_of_bytes buf pos ba 0 len;
+     ignore @@ raise_notequal len
+       (fun () -> nn_send sock nn_buf_p nn_msg (int_of_bool block))
+ 
+@@ -266,16 +266,16 @@ let recv ?(block=true) sock f =
+ let recv_bytes_buf ?(block=true) sock buf pos =
+   recv ~block sock
+     (fun ba ->
+-       let len = CCBigstring.size ba in
+-       CCBigstring.(blit_to_bytes ba 0 buf pos len);
++       let len = Bigstring.size ba in
++       Bigstring.(blit_to_bytes ba 0 buf pos len);
+        len
+     )
+ 
+ let recv_bytes ?(block=true) sock =
+   recv ~block sock (fun ba ->
+-      let len = CCBigstring.size ba in
++      let len = Bigstring.size ba in
+       let buf = Bytes.create len in
+-      CCBigstring.blit_to_bytes ba 0 buf 0 len;
++      Bigstring.blit_to_bytes ba 0 buf 0 len;
+       buf)
+ 
+ let recv_string ?(block=true) sock =
+Index: onanomsg-1.0/lib/nanomsg.mli
+===================================================================
+--- onanomsg-1.0.orig/lib/nanomsg.mli
++++ onanomsg-1.0/lib/nanomsg.mli
+@@ -45,8 +45,8 @@ val close : socket -> unit
+ 
+ (** {2 Zero-copy I/O} *)
+ 
+-val send_bigstring : ?block:bool -> socket -> CCBigstring.t -> unit
+-val send_bigstring_buf : ?block:bool -> socket -> CCBigstring.t -> int -> int -> unit
++val send_bigstring : ?block:bool -> socket -> Bigstring.t -> unit
++val send_bigstring_buf : ?block:bool -> socket -> Bigstring.t -> int -> int -> unit
+ 
+ val send_string : ?block:bool -> socket -> string -> unit
+ val send_string_buf : ?block:bool -> socket -> string -> int -> int -> unit
+@@ -54,7 +54,7 @@ val send_string_buf : ?block:bool -> soc
+ val send_bytes : ?block:bool -> socket -> Bytes.t -> unit
+ val send_bytes_buf : ?block:bool -> socket -> Bytes.t -> int -> int -> unit
+ 
+-val recv : ?block:bool -> socket -> (CCBigstring.t -> 'a) -> 'a
++val recv : ?block:bool -> socket -> (Bigstring.t -> 'a) -> 'a
+ (** [recv ?block sock f] applies [f] to the received message. The
+     argument of [f] gets unallocated after [f] returns, so make sure
+     [f] {b never} let a reference to its argument escape. *)
+Index: onanomsg-1.0/lib/nanomsg_lwt.ml
+===================================================================
+--- onanomsg-1.0.orig/lib/nanomsg_lwt.ml
++++ onanomsg-1.0/lib/nanomsg_lwt.ml
+@@ -25,7 +25,7 @@ let raise_negative sock io_event f = rai
+ let raise_notequal sock io_event v f = raise_if sock io_event (fun x -> x <> v) f
+ 
+ let send_bigstring_buf sock buf pos len =
+-  if pos < 0 || len < 0 || pos + len > CCBigstring.size buf
++  if pos < 0 || len < 0 || pos + len > Bigstring.size buf
+   then invalid_arg "bounds";
+   let nn_buf = nn_allocmsg (size_of_int len) 0 in
+   match nn_buf with
+@@ -34,14 +34,14 @@ let send_bigstring_buf sock buf pos len
+     let nn_buf_p = Ctypes.(allocate (ptr void) nn_buf) in
+     let ba = Ctypes.(bigarray_of_ptr array1 len
+                        Bigarray.char @@ from_voidp char nn_buf) in
+-    CCBigstring.blit buf pos ba 0 len;
++    Bigstring.blit buf pos ba 0 len;
+     raise_notequal sock Lwt_unix.Write len
+       (fun () -> nn_send (Obj.magic sock : int) nn_buf_p nn_msg
+           Symbol.(value_of_name_exn "NN_DONTWAIT")) >|= fun nb_written ->
+     ignore nb_written
+ 
+ let send_bigstring sock buf =
+-  send_bigstring_buf sock buf 0 @@ CCBigstring.size buf
++  send_bigstring_buf sock buf 0 @@ Bigstring.size buf
+ 
+ let send_bytes_buf sock buf pos len =
+   if pos < 0 || len < 0 || pos + len > Bytes.length buf
+@@ -53,7 +53,7 @@ let send_bytes_buf sock buf pos len =
+     let nn_buf_p = Ctypes.(allocate (ptr void) nn_buf) in
+     let ba = Ctypes.(bigarray_of_ptr array1 len
+                        Bigarray.char @@ from_voidp char nn_buf) in
+-    CCBigstring.blit_of_bytes buf pos ba 0 len;
++    Bigstring.blit_of_bytes buf pos ba 0 len;
+     raise_notequal sock Lwt_unix.Write len
+       (fun () -> nn_send (Obj.magic sock : int)  nn_buf_p nn_msg
+           Symbol.(value_of_name_exn "NN_DONTWAIT")) >|= fun nb_written ->
+@@ -84,16 +84,16 @@ let recv sock f =
+ 
+ let recv_bytes_buf sock buf pos =
+   recv sock (fun ba ->
+-      let len = CCBigstring.size ba in
+-      CCBigstring.blit_to_bytes ba 0 buf pos len;
++      let len = Bigstring.size ba in
++      Bigstring.blit_to_bytes ba 0 buf pos len;
+       Lwt.return len
+     )
+ 
+ let recv_bytes sock =
+   recv sock (fun ba ->
+-      let len = CCBigstring.size ba in
++      let len = Bigstring.size ba in
+       let buf = Bytes.create len in
+-      CCBigstring.blit_to_bytes ba 0 buf 0 len;
++      Bigstring.blit_to_bytes ba 0 buf 0 len;
+       Lwt.return buf
+     )
+ 
+Index: onanomsg-1.0/lib/nanomsg_lwt.mli
+===================================================================
+--- onanomsg-1.0.orig/lib/nanomsg_lwt.mli
++++ onanomsg-1.0/lib/nanomsg_lwt.mli
+@@ -4,8 +4,8 @@ open Nanomsg
+ 
+ (** {2 Zero-copy I/O} *)
+ 
+-val send_bigstring : socket -> CCBigstring.t -> unit Lwt.t
+-val send_bigstring_buf : socket -> CCBigstring.t -> int -> int -> unit Lwt.t
++val send_bigstring : socket -> Bigstring.t -> unit Lwt.t
++val send_bigstring_buf : socket -> Bigstring.t -> int -> int -> unit Lwt.t
+ 
+ val send_string : socket -> string -> unit Lwt.t
+ val send_string_buf : socket -> string -> int -> int -> unit Lwt.t
+@@ -13,7 +13,7 @@ val send_string_buf : socket -> string -
+ val send_bytes : socket -> Bytes.t -> unit Lwt.t
+ val send_bytes_buf : socket -> Bytes.t -> int -> int -> unit Lwt.t
+ 
+-val recv : socket -> (CCBigstring.t -> 'a Lwt.t) -> 'a Lwt.t
++val recv : socket -> (Bigstring.t -> 'a Lwt.t) -> 'a Lwt.t
+ (** [recv sock f] applies [f] to the received message. The
+     argument of [f] gets unallocated after [f] returns, so make sure
+     [f] {b never} let a reference to its argument escape. *)
+Index: onanomsg-1.0/_tags
+===================================================================
+--- onanomsg-1.0.orig/_tags
++++ onanomsg-1.0/_tags
+@@ -4,7 +4,7 @@ true: debug, bin_annot, safe_string
+ <lwt>: include
+ <lib_test>: include
+ 
+-<lib/nanomsg*>: package(containers.bigarray), \
++<lib/nanomsg*>: package(bigstring), \
+ 		package(ctypes), \
+ 		package(ipaddr), \
+ 		package(ppx_deriving.std), \
+@@ -13,7 +13,7 @@ true: debug, bin_annot, safe_string
+ 
+ <lib/nanomsg_lwt.*>: package(lwt.unix), package(lwt.ppx)
+ 
+-<lib_test/*>: package(containers.bigarray), \
++<lib_test/*>: package(bigstring), \
+ 	      package(ctypes.foreign), \
+ 	      package(ipaddr), \
+ 	      package(lwt.unix), \
+@@ -21,7 +21,7 @@ true: debug, bin_annot, safe_string
+ 	      package(oUnit), \
+ 	      package(containers)
+ 
+-<examples/*>: package(containers.bigarray), \
++<examples/*>: package(bigstring), \
+ 	      package(ctypes.foreign), \
+ 	      package(ipaddr), \
+-	      package(containers)
+\ No newline at end of file
++	      package(containers)
+Index: onanomsg-1.0/pkg/META
+===================================================================
+--- onanomsg-1.0.orig/pkg/META
++++ onanomsg-1.0/pkg/META
+@@ -1,6 +1,6 @@
+ version = "1.0"
+ description = "Bindings to nanomsg"
+-requires = "ctypes.foreign ipaddr ppx_deriving.std containers containers.bigarray"
++requires = "ctypes.foreign ipaddr ppx_deriving.std containers bigstring"
+ archive(byte) = "nanomsg.cma"
+ archive(byte, plugin) = "nanomsg.cma"
+ archive(native) = "nanomsg.cmxa"
+@@ -15,4 +15,4 @@ package "lwt" (
+  archive(native) = "nanomsg_lwt.cmxa"
+  archive(native, plugin) = "nanomsg_lwt.cmxs"
+  exists_if = "nanomsg_lwt.cma"
+-)
+\ No newline at end of file
++)

diff --git a/dev-ml/onanomsg/onanomsg-1.0.ebuild b/dev-ml/onanomsg/onanomsg-1.0-r1.ebuild
similarity index 87%
rename from dev-ml/onanomsg/onanomsg-1.0.ebuild
rename to dev-ml/onanomsg/onanomsg-1.0-r1.ebuild
index 902a0e6f6c3..38e22c1fbe0 100644
--- a/dev-ml/onanomsg/onanomsg-1.0.ebuild
+++ b/dev-ml/onanomsg/onanomsg-1.0-r1.ebuild
@@ -3,14 +3,14 @@
 
 EAPI=5
 
-inherit findlib
+inherit findlib eutils
 
 DESCRIPTION="nanomsg bindings for OCaml"
 HOMEPAGE="https://github.com/rgrinberg/onanomsg"
 SRC_URI="https://github.com/rgrinberg/onanomsg/archive/${PV}.tar.gz -> ${P}.tar.gz"
 
 LICENSE="WTFPL-2"
-SLOT="0/${PV}"
+SLOT="0/${PV}-bigstring"
 KEYWORDS="~amd64"
 IUSE="+lwt +ocamlopt test"
 
@@ -21,12 +21,18 @@ RDEPEND="
 	dev-ml/ocaml-ipaddr:=[ocamlopt?]
 	dev-ml/ppx_deriving:=[ocamlopt?]
 	dev-ml/ocaml-containers:=[ocamlopt?]
+	dev-ml/ocaml-bigstring:=
 	lwt? ( dev-ml/lwt:=[ocamlopt?] )
 "
 DEPEND="${RDEPEND}
 	test? ( dev-ml/ounit )
 "
 
+src_prepare() {
+	epatch "${FILESDIR}/bigstring.patch"
+	default
+}
+
 src_compile() {
 	ocaml pkg/build.ml \
 		native=$(usex ocamlopt true false) \


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-ml/onanomsg/files/, dev-ml/onanomsg/
@ 2017-07-15 10:34 Alexis Ballier
  0 siblings, 0 replies; 2+ messages in thread
From: Alexis Ballier @ 2017-07-15 10:34 UTC (permalink / raw
  To: gentoo-commits

commit:     71fe21d9e342adaaa8daff165283f10bd170c49e
Author:     Alexis Ballier <aballier <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 15 10:33:53 2017 +0000
Commit:     Alexis Ballier <aballier <AT> gentoo <DOT> org>
CommitDate: Sat Jul 15 10:34:05 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=71fe21d9

dev-ml/onanomsg: Fix tests, bug #625184

Package-Manager: Portage-2.3.6, Repoman-2.3.2

 dev-ml/onanomsg/files/testrun.patch    | 15 +++++++++++++++
 dev-ml/onanomsg/files/tests.patch      | 12 ++++++++++++
 dev-ml/onanomsg/onanomsg-1.0-r1.ebuild |  4 +++-
 3 files changed, 30 insertions(+), 1 deletion(-)

diff --git a/dev-ml/onanomsg/files/testrun.patch b/dev-ml/onanomsg/files/testrun.patch
new file mode 100644
index 00000000000..e78dadaf362
--- /dev/null
+++ b/dev-ml/onanomsg/files/testrun.patch
@@ -0,0 +1,15 @@
+Drop Surveyor / Respondant tests as they fail.
+
+Index: onanomsg-1.0/lib_test/suite.ml
+===================================================================
+--- onanomsg-1.0.orig/lib_test/suite.ml
++++ onanomsg-1.0/lib_test/suite.ml
+@@ -93,7 +93,7 @@ let connect_to_string_test ctx =
+ 
+ let socket_test ctx =
+   let domains = [AF_SP; AF_SP_RAW] in
+-  let protos = [Pair; Pub; Sub; Req; Rep; Push; Pull; Surveyor; Respondant; Bus] in
++  let protos = [Pair; Pub; Sub; Req; Rep; Push; Pull; Bus] in
+   List.iter
+     (fun d ->
+        List.iter

diff --git a/dev-ml/onanomsg/files/tests.patch b/dev-ml/onanomsg/files/tests.patch
new file mode 100644
index 00000000000..f93d0ce5126
--- /dev/null
+++ b/dev-ml/onanomsg/files/tests.patch
@@ -0,0 +1,12 @@
+Index: onanomsg-1.0/_tags
+===================================================================
+--- onanomsg-1.0.orig/_tags
++++ onanomsg-1.0/_tags
+@@ -19,6 +19,7 @@ true: debug, bin_annot, safe_string
+ 	      package(lwt.unix), \
+ 	      package(lwt.ppx), \
+ 	      package(oUnit), \
++	      package(ppx_deriving), \
+ 	      package(containers)
+ 
+ <examples/*>: package(bigstring), \

diff --git a/dev-ml/onanomsg/onanomsg-1.0-r1.ebuild b/dev-ml/onanomsg/onanomsg-1.0-r1.ebuild
index 38e22c1fbe0..bb436094f0a 100644
--- a/dev-ml/onanomsg/onanomsg-1.0-r1.ebuild
+++ b/dev-ml/onanomsg/onanomsg-1.0-r1.ebuild
@@ -29,7 +29,9 @@ DEPEND="${RDEPEND}
 "
 
 src_prepare() {
-	epatch "${FILESDIR}/bigstring.patch"
+	epatch "${FILESDIR}/bigstring.patch" \
+		"${FILESDIR}/tests.patch" \
+		"${FILESDIR}/testrun.patch"
 	default
 }
 


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2017-07-15 10:34 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-07-15 10:34 [gentoo-commits] repo/gentoo:master commit in: dev-ml/onanomsg/files/, dev-ml/onanomsg/ Alexis Ballier
  -- strict thread matches above, loose matches on Subject: below --
2017-05-09  7:14 Alexis Ballier

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox