diff options
Diffstat (limited to 'devel/p5-Coro')
-rw-r--r-- | devel/p5-Coro/Makefile | 51 | ||||
-rw-r--r-- | devel/p5-Coro/distinfo | 6 | ||||
-rw-r--r-- | devel/p5-Coro/files/patch-Coro-Makefile.PL | 136 | ||||
-rw-r--r-- | devel/p5-Coro/pkg-plist | 59 |
4 files changed, 77 insertions, 175 deletions
diff --git a/devel/p5-Coro/Makefile b/devel/p5-Coro/Makefile index 8dbb7dcf7611..9e698f6c9d15 100644 --- a/devel/p5-Coro/Makefile +++ b/devel/p5-Coro/Makefile @@ -6,34 +6,29 @@ # PORTNAME= Coro -PORTVERSION= 1.9 +PORTVERSION= 3.1.1 PORTEPOCH= 1 CATEGORIES= devel MASTER_SITES= ${MASTER_SITE_PERL_CPAN} MASTER_SITE_SUBDIR= Coro PKGNAMEPREFIX= p5- +DISTNAME= ${PORTNAME}-3.11 MAINTAINER= perl@FreeBSD.org COMMENT= Coro - coroutine process abstraction for perl -BUILD_DEPENDS= p5-Event>=0.89:${PORTSDIR}/devel/p5-Event \ - ${SITE_PERL}/${PERL_ARCH}/Scalar/Util.pm:${PORTSDIR}/lang/p5-Scalar-List-Utils -RUN_DEPENDS= ${BUILD_DEPENDS} +RUN_DEPENDS= p5-Event>=0.89:${PORTSDIR}/devel/p5-Event \ + ${SITE_PERL}/AnyEvent.pm:${PORTSDIR}/devel/p5-AnyEvent \ + ${SITE_PERL}/${PERL_ARCH}/IO/AIO.pm:${PORTSDIR}/devel/p5-IO-AIO +BUILD_DEPENDS= ${RUN_DEPENDS} PERL_CONFIGURE= yes -.if !defined(NOPORTDOCS) -PORTDOCS= Changes -EXAMPLES= eg/attributes eg/bench eg/cont eg/dns eg/event eg/lwp eg/myhttpd eg/prodcons1 eg/prodcons2 eg/prodcons3 eg/readline - -post-install: - @${MKDIR} ${DOCSDIR} - @${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${DOCSDIR} - @${ECHO_MSG} "===> Documentation installed in ${DOCSDIR}." - @${MKDIR} ${EXAMPLESDIR} - @${INSTALL_DATA} ${EXAMPLES:S|^|${WRKSRC}/|} ${EXAMPLESDIR} - @${ECHO_MSG} "===> Examples installed in ${EXAMPLESDIR}." -.endif +MAN3= Coro.3 Coro::AIO.3 Coro::Channel.3 Coro::Handle.3 \ + Coro::LWP.3 Coro::MakeMaker.3 Coro::RWLock.3 Coro::Select.3 \ + Coro::Semaphore.3 Coro::SemaphoreSet.3 Coro::Signal.3 \ + Coro::Socket.3 Coro::Specific.3 Coro::State.3 Coro::Timer.3 \ + Coro::Util.3 .include <bsd.port.pre.mk> @@ -41,22 +36,12 @@ post-install: IGNORE= requires perl 5.6.0 or later. Install lang/perl5.8 and try again .endif -MAN3= Coro.3 \ - Coro::AIO.3 \ - Coro::Channel.3 \ - Coro::Cont.3 \ - Coro::Event.3 \ - Coro::Handle.3 \ - Coro::MakeMaker.3 \ - Coro::RWLock.3 \ - Coro::Select.3 \ - Coro::Semaphore.3 \ - Coro::SemaphoreSet.3 \ - Coro::Signal.3 \ - Coro::Socket.3 \ - Coro::Specific.3 \ - Coro::State.3 \ - Coro::Timer.3 \ - Coro::Util.3 +post-install: + ${MKDIR} ${EXAMPLESDIR} + ${INSTALL_SCRIPT} ${WRKSRC}/eg/* ${EXAMPLESDIR} +.if !defined(NOPORTDOCS) + ${MKDIR} ${DOCSDIR} + ${INSTALL_DATA} ${WRKSRC}/doc/cede-vs-schedule ${DOCSDIR} +.endif .include <bsd.port.post.mk> diff --git a/devel/p5-Coro/distinfo b/devel/p5-Coro/distinfo index 6813388a9d8c..da5fbfe981f6 100644 --- a/devel/p5-Coro/distinfo +++ b/devel/p5-Coro/distinfo @@ -1,3 +1,3 @@ -MD5 (Coro-1.9.tar.gz) = 63efa9fb31ded80f2c7d1fb900163824 -SHA256 (Coro-1.9.tar.gz) = c94d584e07e0433909157277194112807077ed97446943995ecc2634595b8d7f -SIZE (Coro-1.9.tar.gz) = 55882 +MD5 (Coro-3.11.tar.gz) = b5e2accd75fbb4aaa83e7216e92e6a3d +SHA256 (Coro-3.11.tar.gz) = 1ad4f9aa856b7b8d9add923d1cb5baf14064d4754d999090f6d402c7e5b7cd9d +SIZE (Coro-3.11.tar.gz) = 62084 diff --git a/devel/p5-Coro/files/patch-Coro-Makefile.PL b/devel/p5-Coro/files/patch-Coro-Makefile.PL index 288bd360b5dc..150e720a0835 100644 --- a/devel/p5-Coro/files/patch-Coro-Makefile.PL +++ b/devel/p5-Coro/files/patch-Coro-Makefile.PL @@ -1,120 +1,40 @@ ---- Coro/Makefile.PL.orig Wed Jan 11 13:20:06 2006 -+++ Coro/Makefile.PL Wed Jan 11 13:22:18 2006 -@@ -31,77 +31,8 @@ if ($^O =~ /win32/i or $^O =~ /cygwin/ o - $iface = "s"; - } +--- Coro/Makefile.PL.orig Sat Dec 9 19:48:35 2006 ++++ Coro/Makefile.PL Sat Dec 9 19:51:08 2006 +@@ -72,9 +72,7 @@ + + retry: --print <<EOF; -- --*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** -- --C context sharing: This option makes it possible to share the C stack and --context between many coroutines, resulting in large memory savings and --slight speed gains, at the cost of potential (but mostly theoretical) --segfaults. On my Linux/x86 machine this decreased the size of a new --coroutine from 9k to 5k, but the savings are much more apparent on --machines without mmap or good memory management. -- --The algorithm relies on the non-fact that the same machine stack pointer --indicates the same function call nesting level, which usually works good --enough (no known cases of it failing are known) but might fail in theory. -- --The default (enabled) has been in use on productions servers for some --time now, without any problem reports, so you are encouraged to use the --default. -- --EOF -- --if (prompt ("Do you want to enable C context sharing (y/n)", "y") !~ /^\s*n/i) { -- print "\nC context sharing enabled.\n\n"; -+$iface = "u"; - $DEFINE .= " -DCORO_LAZY_STACK"; --} -- --if ($iface) { -- print <<EOF; -- --*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** -- --Coro can use a number of methods to implement coroutines at the C --level. The default chosen is based on your current confguration and is --correct in most cases, but you still can chose between these alternatives: -- --u The unix 'ucontext.h' functions are relatively new and not implemented -- or well-tested in older unices. They allow very fast coroutine creation -- and reasonably fast switching, and, most importantly, are very stable. -- --s If the ucontext functions are not working or you don't want -- to use them for other reasons you can try a workaround using -- setjmp/longjmp/sigaltstack (also standard unix functions). Coroutine -- creation is rather slow, but switching is very fast as well (often much -- faster than with the ucontext functions). Unfortunately, glibc-2.1 and -- below don't even feature a working sigaltstack. -- --l GNU/Linux. Very old GNU/Linux systems (glibc-2.1 and below) need -- this hack. Since it is very linux-specific it is also quite fast and -- recommended even for newer versions; when it works, that is (currently -- x86 and a few others only. If it compiles, it's usually ok). -- --i IRIX. For some reason, SGI really does not like to follow the single -- unix specification (does that surprise you?), so this workaround might -- be needed (it's fast), although [s] and [u] should also work now. -- --w Microsoft Windows. Try this on Microsoft Windows, although, as there is -- no standard on how to do this under windows, this might work only on -- cygwin or specific versions of msvc. Your problem. -- --For most systems, the default chosen should be OK. If you experience --problems then you should experiment with this setting and/or turn off --optimizations (make OPTIMIZE=-O0). -- --EOF -- --retry: -- - my $r = prompt "Use which implementation,\n" . - "<s>etjmp/longjump, <u>context, <i>rix, <l>inux or <w>indows?", - $iface; -- $iface = lc $1 if $r =~ /(\S)/; ++ my $r = 'u'; + $iface = lc $1 if $r =~ /(\S)/; if ($iface eq "u") { - $DEFINE .= " -DCORO_UCONTEXT"; -@@ -122,37 +53,9 @@ retry: - print "\nUsing windows-specific implementation\n\n"; - } else { - print "\nUnknown implementation \"$iface\"\n"; -- goto retry; - } --} else { -- print "\nUsing microsoft compatible coroutines\n\n"; --} -- --print <<EOF; -- --*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** -- --Per-context stack size factor: Depending on your settings, Coro tries to --share the C stack as much as possible, but sometimes it needs to allocate --a new one. This setting controls the maximum size that gets allocated, --and should not be set too high, as memory and address space still is --wasted even if it's not fully used. The value entered will be multiplied --by sizeof(long), which is usually 4 on 32-bit systems, and 8 on 64-bit --systems. -- --A setting of 16384 (the default) therefore corresponds to a 64k..128k --stack, which usually is ample space (you might even want to try 8192 or --lower if your program creates many coroutines). -- --Some perls (mostly threaded ones and perl compiled under linux 2.6) and --some programs (inefficient regexes can use a lot of stack space) may --need much, much more: If Coro segfaults with weird backtraces (e.g. in a --function prologue) or in t/10_bugs.t, you might want to increase this to --65536 or more. -- --EOF +@@ -132,7 +130,7 @@ + + EOF -my $stacksize = prompt ("C stack size factor", "16384"); +my $stacksize = 65536; $DEFINE .= " -DSTACKSIZE=$stacksize"; print "using a stacksize of $stacksize * sizeof(long)\n"; +@@ -159,7 +157,7 @@ + + EOF + +-my $stackguard = prompt ("Number of guard pages (0 disables)", "4"); ++my $stackguard = 4; + $DEFINE .= " -DSTACKGUARD=$stackguard"; + + print <<EOF; +@@ -177,7 +175,7 @@ + + EOF + +-my $valgrind = prompt ("Enable valgrind support (y/n)", "n"); ++my $valgrind = 'n'; + $DEFINE .= " -DUSE_VALGRIND=1" if $valgrind =~ /[yY]/; + + print <<EOF; diff --git a/devel/p5-Coro/pkg-plist b/devel/p5-Coro/pkg-plist index eef1d9e4c9de..25fedcc579f4 100644 --- a/devel/p5-Coro/pkg-plist +++ b/devel/p5-Coro/pkg-plist @@ -1,40 +1,37 @@ @comment $FreeBSD$ -%%SITE_PERL%%/%%PERL_ARCH%%/auto/Coro/Event/Event.so -%%SITE_PERL%%/%%PERL_ARCH%%/auto/Coro/Event/Event.bs -%%SITE_PERL%%/%%PERL_ARCH%%/auto/Coro/State/State.so -%%SITE_PERL%%/%%PERL_ARCH%%/auto/Coro/State/State.bs -%%SITE_PERL%%/%%PERL_ARCH%%/auto/Coro/.packlist +%%EXAMPLESDIR%%/attributes +%%EXAMPLESDIR%%/bench +%%EXAMPLESDIR%%/dns +%%EXAMPLESDIR%%/event +%%EXAMPLESDIR%%/lwp +%%EXAMPLESDIR%%/myhttpd +%%EXAMPLESDIR%%/prodcons1 +%%EXAMPLESDIR%%/prodcons2 +%%EXAMPLESDIR%%/prodcons3 +%%EXAMPLESDIR%%/readline +%%PORTDOCS%%%%DOCSDIR%%/cede-vs-schedule %%SITE_PERL%%/%%PERL_ARCH%%/Coro.pm %%SITE_PERL%%/%%PERL_ARCH%%/Coro/AIO.pm -%%SITE_PERL%%/%%PERL_ARCH%%/Coro/Cont.pm -%%SITE_PERL%%/%%PERL_ARCH%%/Coro/State.pm %%SITE_PERL%%/%%PERL_ARCH%%/Coro/Channel.pm -%%SITE_PERL%%/%%PERL_ARCH%%/Coro/Semaphore.pm -%%SITE_PERL%%/%%PERL_ARCH%%/Coro/SemaphoreSet.pm -%%SITE_PERL%%/%%PERL_ARCH%%/Coro/RWLock.pm %%SITE_PERL%%/%%PERL_ARCH%%/Coro/CoroAPI.h -%%SITE_PERL%%/%%PERL_ARCH%%/Coro/Specific.pm -%%SITE_PERL%%/%%PERL_ARCH%%/Coro/Timer.pm +%%SITE_PERL%%/%%PERL_ARCH%%/Coro/Handle.pm +%%SITE_PERL%%/%%PERL_ARCH%%/Coro/LWP.pm %%SITE_PERL%%/%%PERL_ARCH%%/Coro/MakeMaker.pm +%%SITE_PERL%%/%%PERL_ARCH%%/Coro/RWLock.pm %%SITE_PERL%%/%%PERL_ARCH%%/Coro/Select.pm +%%SITE_PERL%%/%%PERL_ARCH%%/Coro/Semaphore.pm +%%SITE_PERL%%/%%PERL_ARCH%%/Coro/SemaphoreSet.pm %%SITE_PERL%%/%%PERL_ARCH%%/Coro/Signal.pm -%%SITE_PERL%%/%%PERL_ARCH%%/Coro/Handle.pm -%%SITE_PERL%%/%%PERL_ARCH%%/Coro/Util.pm -%%SITE_PERL%%/%%PERL_ARCH%%/Coro/Event.pm %%SITE_PERL%%/%%PERL_ARCH%%/Coro/Socket.pm -%%PORTDOCS%%%%EXAMPLESDIR%%/attributes -%%PORTDOCS%%%%EXAMPLESDIR%%/bench -%%PORTDOCS%%%%EXAMPLESDIR%%/cont -%%PORTDOCS%%%%EXAMPLESDIR%%/dns -%%PORTDOCS%%%%EXAMPLESDIR%%/event -%%PORTDOCS%%%%EXAMPLESDIR%%/lwp -%%PORTDOCS%%%%EXAMPLESDIR%%/myhttpd -%%PORTDOCS%%%%EXAMPLESDIR%%/prodcons1 -%%PORTDOCS%%%%EXAMPLESDIR%%/prodcons2 -%%PORTDOCS%%%%EXAMPLESDIR%%/prodcons3 -%%PORTDOCS%%%%EXAMPLESDIR%%/readline -%%PORTDOCS%%@dirrm %%EXAMPLESDIR%% -@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/Coro/Event -@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/Coro/State -@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/Coro -@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/Coro +%%SITE_PERL%%/%%PERL_ARCH%%/Coro/Specific.pm +%%SITE_PERL%%/%%PERL_ARCH%%/Coro/State.pm +%%SITE_PERL%%/%%PERL_ARCH%%/Coro/Timer.pm +%%SITE_PERL%%/%%PERL_ARCH%%/Coro/Util.pm +%%SITE_PERL%%/%%PERL_ARCH%%/auto/Coro/.packlist +%%SITE_PERL%%/%%PERL_ARCH%%/auto/Coro/State/State.bs +%%SITE_PERL%%/%%PERL_ARCH%%/auto/Coro/State/State.so +@dirrmtry %%SITE_PERL%%/%%PERL_ARCH%%/auto/Coro/State +@dirrmtry %%SITE_PERL%%/%%PERL_ARCH%%/auto/Coro +@dirrmtry %%SITE_PERL%%/%%PERL_ARCH%%/Coro +@dirrmtry %%EXAMPLESDIR%% +%%PORTDOCS%%@dirrm %%DOCSDIR%% |