diff options
author | Torsten Veller <tove@gentoo.org> | 2008-10-23 07:24:03 +0000 |
---|---|---|
committer | Torsten Veller <tove@gentoo.org> | 2008-10-23 07:24:03 +0000 |
commit | 5aa1ae8cb538a0f8488337da37f2c782d6b4cd54 (patch) | |
tree | 8f85937e1b82ce0bbd5eb3f2acc8075d4528fb47 /dev-perl | |
parent | Version bump (diff) | |
download | gentoo-2-5aa1ae8cb538a0f8488337da37f2c782d6b4cd54.tar.gz gentoo-2-5aa1ae8cb538a0f8488337da37f2c782d6b4cd54.tar.bz2 gentoo-2-5aa1ae8cb538a0f8488337da37f2c782d6b4cd54.zip |
Version bump
(Portage version: 2.2_rc12/cvs/Linux 2.6.26-tuxonice i686)
Diffstat (limited to 'dev-perl')
-rw-r--r-- | dev-perl/HTTP-Server-Simple/ChangeLog | 8 | ||||
-rw-r--r-- | dev-perl/HTTP-Server-Simple/HTTP-Server-Simple-0.35.ebuild | 22 | ||||
-rw-r--r-- | dev-perl/HTTP-Server-Simple/files/0.35-debian.patch | 87 |
3 files changed, 116 insertions, 1 deletions
diff --git a/dev-perl/HTTP-Server-Simple/ChangeLog b/dev-perl/HTTP-Server-Simple/ChangeLog index 22c9cb807e30..fa5ddba0b879 100644 --- a/dev-perl/HTTP-Server-Simple/ChangeLog +++ b/dev-perl/HTTP-Server-Simple/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for dev-perl/HTTP-Server-Simple # Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-perl/HTTP-Server-Simple/ChangeLog,v 1.30 2008/09/15 18:55:18 tove Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-perl/HTTP-Server-Simple/ChangeLog,v 1.31 2008/10/23 07:24:03 tove Exp $ + +*HTTP-Server-Simple-0.35 (23 Oct 2008) + + 23 Oct 2008; Torsten Veller <tove@gentoo.org> +files/0.35-debian.patch, + +HTTP-Server-Simple-0.35.ebuild: + Version bump 15 Sep 2008; Torsten Veller <tove@gentoo.org> -HTTP-Server-Simple-0.16.ebuild, -HTTP-Server-Simple-0.20.ebuild, diff --git a/dev-perl/HTTP-Server-Simple/HTTP-Server-Simple-0.35.ebuild b/dev-perl/HTTP-Server-Simple/HTTP-Server-Simple-0.35.ebuild new file mode 100644 index 000000000000..9a266da34c72 --- /dev/null +++ b/dev-perl/HTTP-Server-Simple/HTTP-Server-Simple-0.35.ebuild @@ -0,0 +1,22 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-perl/HTTP-Server-Simple/HTTP-Server-Simple-0.35.ebuild,v 1.1 2008/10/23 07:24:03 tove Exp $ + +MODULE_AUTHOR=ALEXMV +inherit perl-module eutils + +DESCRIPTION="Lightweight HTTP Server" + +SLOT="0" +LICENSE="|| ( Artistic GPL-2 )" +KEYWORDS="~amd64 ~ia64 ~ppc ~sparc ~x86" +IUSE="test" + +RDEPEND="dev-lang/perl + dev-perl/URI" +DEPEND="${RDEPEND} + test? ( dev-perl/Test-Pod + dev-perl/Test-Pod-Coverage )" + +SRC_TEST="do" +PATCHES="${FILESDIR}/${PV}-debian.patch" diff --git a/dev-perl/HTTP-Server-Simple/files/0.35-debian.patch b/dev-perl/HTTP-Server-Simple/files/0.35-debian.patch new file mode 100644 index 000000000000..800a2667c6c2 --- /dev/null +++ b/dev-perl/HTTP-Server-Simple/files/0.35-debian.patch @@ -0,0 +1,87 @@ +--- a/t/01live.t ++++ b/t/01live.t +@@ -34,11 +34,7 @@ for my $class (@classes) { + } + + +-TODO: { +- local $TODO = "We don't currently wait for 'server is running' responses from the client"; +- run_server_tests('SlowServer'); +- +-} ++run_server_tests('SlowServer'); + + + +--- libhttp-server-simple-perl.orig/lib/HTTP/Server/Simple.pm ++++ libhttp-server-simple-perl/lib/HTTP/Server/Simple.pm +@@ -6,6 +6,7 @@ + use Socket; + use Carp; + use URI::Escape; ++use IO::Select; + + use vars qw($VERSION $bad_request_doc); + $VERSION = '0.35'; +@@ -215,15 +216,36 @@ + + sub background { + my $self = shift; ++ ++ # set up a pipe so the child can tell the parent when it's ready ++ # to accept requests ++ my ($readfh, $writefh) = FileHandle::pipe; ++ + my $child = fork; + die "Can't fork: $!" unless defined($child); +- return $child if $child; ++ if ($child) { # parent ++ my $s = IO::Select->new; ++ $s->add($readfh); ++ my $now = time; my $left = 0; ++ my @ready; ++ while(not @ready and $left < 5) { ++ @ready = $s->can_read($left); ++ $left = time - $now; ++ } ++ die("child unresponsive for 5 seconds") if(not @ready); ++ my $response = <$readfh>; ++ chomp $response; ++ die("child is confused: answer '$response' != 'OK'") ++ if $response ne "OK"; ++ return $child; ++ } + + if ( $^O !~ /MSWin32/ ) { + require POSIX; + POSIX::setsid() + or die "Can't start a new session: $!"; + } ++ $self->{_parent_handle} = $writefh; + $self->run(@_); + } + +@@ -270,6 +292,7 @@ + $self->after_setup_listener(); + *{"$pkg\::run"} = $self->_default_run; + } ++ $self->_maybe_tell_parent(); + + local $SIG{HUP} = sub { $SERVER_SHOULD_RUN = 0; }; + +@@ -407,6 +430,15 @@ + } + } + ++sub _maybe_tell_parent { ++ # inform the parent process that we're ready, if applicable ++ my $self = shift; ++ my $handle = $self->{_parent_handle}; ++ return if !$handle; ++ print $handle "OK\n"; ++ close $handle; ++ delete $self->{_parent_handle}; ++} + + + |