Fairly simple update, only significant difference is some of our patches were accepted upstream. See http://bogomips.org/kgio/NEWS.html for details.
Tested on amd64. Unless I hear objections, I'll probably commit next week. Thanks, Jeremy Index: Makefile =================================================================== RCS file: /cvs/ports/devel/ruby-kgio/Makefile,v retrieving revision 1.7 diff -u -p -r1.7 Makefile --- Makefile 18 Nov 2011 00:03:15 -0000 1.7 +++ Makefile 13 Dec 2011 18:51:52 -0000 @@ -2,7 +2,7 @@ COMMENT = kinder, gentler I/O for Ruby -DISTNAME = kgio-2.6.0 +DISTNAME = kgio-2.7.0 CATEGORIES = devel MAINTAINER = Jeremy Evans <[email protected]> Index: distinfo =================================================================== RCS file: /cvs/ports/devel/ruby-kgio/distinfo,v retrieving revision 1.5 diff -u -p -r1.5 distinfo --- distinfo 18 Nov 2011 00:03:15 -0000 1.5 +++ distinfo 13 Dec 2011 18:52:41 -0000 @@ -1,5 +1,5 @@ -MD5 (kgio-2.6.0.gem) = xEbDe6kTReKvKM3G3NBgwQ== -RMD160 (kgio-2.6.0.gem) = 52qhTsc7e2QHHxqgGpen7l11cEA= -SHA1 (kgio-2.6.0.gem) = BMLVITKzHTAA2xBcJWKXi4s/3eU= -SHA256 (kgio-2.6.0.gem) = 59TYLk9U6gTbRjDkw0c4RMjg1Zwdr1rNkOJh+d2UJZM= -SIZE (kgio-2.6.0.gem) = 66048 +MD5 (kgio-2.7.0.gem) = p1vP9Mw/q4m6+cO006rdyw== +RMD160 (kgio-2.7.0.gem) = RpG7Jm/QDvpFZOQojMHC81nMwtA= +SHA1 (kgio-2.7.0.gem) = y8ey9Tf5aAdAFre71PTNsWSs42w= +SHA256 (kgio-2.7.0.gem) = PG+1svbBJt8qTbXb27Nl5D29I5OaJh/FUispqd/Kxcw= +SIZE (kgio-2.7.0.gem) = 68096 Index: patches/patch-ext_kgio_accept_c =================================================================== RCS file: patches/patch-ext_kgio_accept_c diff -N patches/patch-ext_kgio_accept_c --- patches/patch-ext_kgio_accept_c 18 Nov 2011 00:03:15 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,61 +0,0 @@ -$OpenBSD: patch-ext_kgio_accept_c,v 1.1 2011/11/18 00:03:15 jeremy Exp $ ---- ext/kgio/accept.c.orig Thu Jan 1 01:00:00 1970 -+++ ext/kgio/accept.c Wed Nov 16 01:32:16 2011 -@@ -10,7 +10,7 @@ static VALUE cKgio_Socket; - static VALUE mSocketMethods; - static VALUE iv_kgio_addr; - --#if defined(__linux__) -+#if defined(__linux__) && defined(HAVE_RB_THREAD_BLOCKING_REGION) - static int accept4_flags = SOCK_CLOEXEC; - #else /* ! linux */ - static int accept4_flags = SOCK_CLOEXEC | SOCK_NONBLOCK; -@@ -125,6 +125,10 @@ static int thread_accept(struct accept_args *a, int fo - - /* always use non-blocking accept() under 1.8 for green threads */ - set_nonblocking(a->fd); -+ -+ /* created sockets are always non-blocking under 1.8, too */ -+ a->flags |= SOCK_NONBLOCK; -+ - TRAP_BEG; - rv = (int)xaccept(a); - TRAP_END; -@@ -409,6 +413,8 @@ static VALUE unix_accept(int argc, VALUE *argv, VALUE - * - * Returns true if newly accepted Kgio::Sockets are created with the - * FD_CLOEXEC file descriptor flag, false if not. -+ * -+ * Deprecated, use the per-socket flags for kgio_*accept instead. - */ - static VALUE get_cloexec(VALUE mod) - { -@@ -423,6 +429,8 @@ static VALUE get_cloexec(VALUE mod) - * - * Returns true if newly accepted Kgio::Sockets are created with the - * O_NONBLOCK file status flag, false if not. -+ * -+ * Deprecated, use the per-socket flags for kgio_*accept instead. - */ - static VALUE get_nonblock(VALUE mod) - { -@@ -444,6 +452,8 @@ static VALUE get_nonblock(VALUE mod) - * - * This is on by default, as there is little reason to deal to enable - * it for client sockets on a socket server. -+ * -+ * Deprecated, use the per-socket flags for kgio_*accept instead. - */ - static VALUE set_cloexec(VALUE mod, VALUE boolean) - { -@@ -476,6 +486,10 @@ static VALUE set_cloexec(VALUE mod, VALUE boolean) - * available (and on newer GNU/Linux, accept4() may also set - * the non-blocking flag. This defaults to +true+ on non-GNU/Linux - * systems. -+ * -+ * This is always true on Ruby implementations using user-space threads. -+ * -+ * Deprecated, use the per-socket flags for kgio_*accept instead. - */ - static VALUE set_nonblock(VALUE mod, VALUE boolean) - { Index: patches/patch-test_lib_server_accept_rb =================================================================== RCS file: patches/patch-test_lib_server_accept_rb diff -N patches/patch-test_lib_server_accept_rb --- patches/patch-test_lib_server_accept_rb 18 Nov 2011 00:03:15 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,19 +0,0 @@ -$OpenBSD: patch-test_lib_server_accept_rb,v 1.1 2011/11/18 00:03:15 jeremy Exp $ ---- test/lib_server_accept.rb.orig Thu Jan 1 01:00:00 1970 -+++ test/lib_server_accept.rb Wed Nov 16 01:32:16 2011 -@@ -25,7 +25,6 @@ module LibServerAccept - IO.select([@srv]) - b = @srv.kgio_tryaccept nil, 0 - assert_kind_of Kgio::Socket, b -- assert_equal false, b.nonblock? - assert_equal 0, b.fcntl(Fcntl::F_GETFD) - end - -@@ -34,7 +33,6 @@ module LibServerAccept - IO.select([@srv]) - b = @srv.kgio_accept nil, 0 - assert_kind_of Kgio::Socket, b -- assert_equal false, b.nonblock? - assert_equal 0, b.fcntl(Fcntl::F_GETFD) - end - Index: patches/patch-test_test_accept_flags_rb =================================================================== RCS file: patches/patch-test_test_accept_flags_rb diff -N patches/patch-test_test_accept_flags_rb --- patches/patch-test_test_accept_flags_rb 18 Nov 2011 00:03:15 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,35 +0,0 @@ -$OpenBSD: patch-test_test_accept_flags_rb,v 1.1 2011/11/18 00:03:15 jeremy Exp $ ---- test/test_accept_flags.rb.orig Thu Jan 1 01:00:00 1970 -+++ test/test_accept_flags.rb Wed Nov 16 01:32:16 2011 -@@ -13,7 +13,6 @@ class TestAcceptFlags < Test::Unit::TestCase - client = TCPSocket.new(@host, @port) - accepted = @srv.kgio_accept(nil, Kgio::SOCK_NONBLOCK) - assert_instance_of Kgio::Socket, accepted -- assert accepted.nonblock? - flags = accepted.fcntl(Fcntl::F_GETFD) - assert_equal 0, flags & Fcntl::FD_CLOEXEC - assert_nil client.close -@@ -22,7 +21,6 @@ class TestAcceptFlags < Test::Unit::TestCase - client = TCPSocket.new(@host, @port) - accepted = @srv.kgio_accept(nil, Kgio::SOCK_CLOEXEC) - assert_instance_of Kgio::Socket, accepted -- assert ! accepted.nonblock? - flags = accepted.fcntl(Fcntl::F_GETFD) - assert_equal Fcntl::FD_CLOEXEC, flags & Fcntl::FD_CLOEXEC - assert_nil client.close -@@ -31,7 +29,6 @@ class TestAcceptFlags < Test::Unit::TestCase - client = TCPSocket.new(@host, @port) - accepted = @srv.kgio_accept(nil, Kgio::SOCK_CLOEXEC|Kgio::SOCK_NONBLOCK) - assert_instance_of Kgio::Socket, accepted -- assert accepted.nonblock? - flags = accepted.fcntl(Fcntl::F_GETFD) - assert_equal Fcntl::FD_CLOEXEC, flags & Fcntl::FD_CLOEXEC - assert_nil client.close -@@ -40,7 +37,6 @@ class TestAcceptFlags < Test::Unit::TestCase - client = TCPSocket.new(@host, @port) - accepted = @srv.kgio_accept(nil, Kgio::SOCK_CLOEXEC|Kgio::SOCK_NONBLOCK) - assert_instance_of Kgio::Socket, accepted -- assert accepted.nonblock? - flags = accepted.fcntl(Fcntl::F_GETFD) - assert_equal Fcntl::FD_CLOEXEC, flags & Fcntl::FD_CLOEXEC - assert_nil client.close
