--- Coro/Makefile.PL 2004/05/30 19:26:39 1.17 +++ Coro/Makefile.PL 2009/08/22 22:36:23 1.63 @@ -1,21 +1,22 @@ use ExtUtils::MakeMaker; -if ($] < 5.006) { +use 5.008002; + +unless (-e "Coro/libcoro/coro.c") { print < +*** ERROR: Coro/libcoro is missing or damaged. If you used a CVS check-out +*** of Coro, you also have to check-out the "libcoro" module from the same CVS +*** repository in the Coro subdirectory (i.e. Coro/Coro/libcoro from outside). *** EOF + exit 1; } +print "*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***\n\n"; + if (eval { require Event }) { if ($Event::VERSION < 0.86 or $Event::VERSION == 0.88) { print < { PREOP => 'pod2text Coro.pm | tee README >$(DISTVNAME)/README; chmod -R u=rwX,go=rX . ;', @@ -47,10 +67,42 @@ }, NAME => "Coro", VERSION_FROM => "Coro.pm", - DIR => ['Coro', ($EVENT ? 'Event' : ())], + DIR => ['Coro', ($EVENT ? 'Event' : ()), ($EV ? "EV" : ())], PREREQ_PM => { - Event => 0.86, + common::sense => 0, Scalar::Util => 0.00, + AnyEvent => 5.0, + Storable => 2.15, + Time::HiRes => 0, + Guard => 0.5, + + # for Coro::Event + #Event => 1.06, + + # for Coro::EV + #EV => 3.3, + + # for Coro::AIO + #IO::AIO => 2.3, + #AnyEvent::AIO => 1.1, + + # for Coro::BDB + #BDB => 1.5, + #AnyEvent::BDB => 1.0, + }, + # neither configure_requires nor recommends can be used + # for optional dependencies. whoever decided that a module needs + # to build properly without its dependencies installed + # needs his brain rearranged dramatically. + META_MERGE => { + recommends => { + Event => 1.08, + EV => 3.0, + IO::AIO => 3.1, + AnyEvent::AIO => 1.0, + BDB => 0, + AnyEvent::BDB => 1.0, + } }, PM => { 'Coro.pm' => '$(INST_LIBDIR)/Coro.pm', @@ -60,7 +112,7 @@ 'Coro/MakeMaker.pm' => '$(INST_LIBDIR)/Coro/MakeMaker.pm', 'Coro/CoroAPI.h' => '$(INST_LIBDIR)/Coro/CoroAPI.h', - 'Coro/Cont.pm' => '$(INST_LIBDIR)/Coro/Cont.pm', +# 'Coro/Cont.pm' => '$(INST_LIBDIR)/Coro/Cont.pm', 'Coro/Specific.pm' => '$(INST_LIBDIR)/Coro/Specific.pm', @@ -70,6 +122,18 @@ 'Coro/Semaphore.pm' => '$(INST_LIBDIR)/Coro/Semaphore.pm', 'Coro/SemaphoreSet.pm'=> '$(INST_LIBDIR)/Coro/SemaphoreSet.pm', 'Coro/RWLock.pm' => '$(INST_LIBDIR)/Coro/RWLock.pm', + + 'Coro/Debug.pm' => '$(INST_LIBDIR)/Coro/Debug.pm', + 'Coro/Util.pm' => '$(INST_LIBDIR)/Coro/Util.pm', + 'Coro/Select.pm' => '$(INST_LIBDIR)/Coro/Select.pm', + 'Coro/Handle.pm' => '$(INST_LIBDIR)/Coro/Handle.pm', + 'Coro/Socket.pm' => '$(INST_LIBDIR)/Coro/Socket.pm', + + 'Coro/AIO.pm' => '$(INST_LIBDIR)/Coro/AIO.pm', + 'Coro/BDB.pm' => '$(INST_LIBDIR)/Coro/BDB.pm', + 'Coro/LWP.pm' => '$(INST_LIBDIR)/Coro/LWP.pm', + 'Coro/Storable.pm' => '$(INST_LIBDIR)/Coro/Storable.pm', + 'Coro/AnyEvent.pm' => '$(INST_LIBDIR)/Coro/AnyEvent.pm', }, ); @@ -78,7 +142,7 @@ # set \$VERSION in all modules setver: - \$(PERL) -pi -e 's/^(\\s*\\\$\$VERSION\\s*=\\s*).*\$\$/\$\${1}\$(VERSION);/' *.pm Coro/*.pm Event/*.pm + \$(PERL) -pi -e 's/^(\\s*(our\\s*)?\\\$\$VERSION\\s*=\\s*).*\$\$/\$\${1}\$(VERSION);/' *.pm Coro/*.pm EV/*.pm Event/*.pm EOF }