X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=Makefile.PL;h=34527811958b184d567c382cbc85ba4206632145;hb=7e6d9ba3b1d34238b9af1b65d96399421f8220b7;hp=6fdf60cc4bb3e82997a7cdac7c60e709cb6f1074;hpb=fefa813c2e39e13eb6cc4daa457558178f8a0a78;p=catagits%2FCatalyst-Devel.git diff --git a/Makefile.PL b/Makefile.PL index 6fdf60c..3452781 100644 --- a/Makefile.PL +++ b/Makefile.PL @@ -1,19 +1,103 @@ use strict; use warnings; -use inc::Module::Install; +use inc::Module::Install 0.91; +use Module::Install::AuthorRequires; -name 'Catalyst-Devel'; +name 'Catalyst-Devel'; all_from 'lib/Catalyst/Devel.pm'; -requires 'Class::Accessor::Fast'; +requires 'Moose'; +requires 'MooseX::Emulate::Class::Accessor::Fast'; +requires 'File::ShareDir'; +requires 'namespace::clean'; +requires 'namespace::autoclean'; +requires 'Catalyst' => '5.8001402'; +requires 'Catalyst::Action::RenderView' => '0.10'; +requires 'Catalyst::Plugin::Static::Simple' => '0.21'; +requires 'Catalyst::Plugin::ConfigLoader' => '0.23'; +requires 'Config::General' => '2.42'; # as of 1.07, we use .conf and not .yaml +requires 'File::ChangeNotify' => '0.07'; +requires 'File::Copy::Recursive'; +requires 'Module::Install' => '0.91'; requires 'Path::Class' => '0.09'; requires 'Template' => '2.14'; -requires 'Catalyst' => '5.7000'; -requires 'Catalyst::Manual' => '5.7000'; # keep sync'd with Catalyst -requires 'Catalyst::Action::RenderView' => '0.04'; -requires 'Catalyst::Plugin::Static::Simple' => '0.14'; -requires 'Catalyst::Plugin::ConfigLoader'; -requires 'YAML' => '0.55'; -requires 'Module::Install' => '0.64'; -requires 'File::Copy::Recursive'; -WriteAll(); + +author_requires 'IPC::Run3'; + +test_requires 'Test::More' => '0.94'; + +install_share 'share'; + +if ( $^O eq 'MSWin32' ) { + # Proc::Background needs this on Win32 but doesn't actually + # require it, if it's missing it just dies in the Makefile.PL. + requires 'Win32::Process' => '0.04'; + requires 'Proc::Background'; +} + +if (!$ENV{CATALYST_DEVEL_NO_510_CHECK}) { + use Symbol 'gensym'; + use IPC::Open3; + use File::Spec; + open NULL, '>', File::Spec->devnull; + my $err = gensym; + my $pid = open3(gensym, '&>NULL', $err, "$^X -It/lib -MUnknownError -e 1"); + + my $unknown_error = 0; + + while (<$err>) { + $unknown_error = 1 if /^Unknown error/; + } + + waitpid $pid, 0; + + if ($unknown_error) { + warn <= 5.009_005 && can_use('Class::C3') && !can_use('Class::C3', 0.20)) { + requires 'Class::C3' => '0.20'; +} + +auto_install; + +WriteAll; + +if ($Module::Install::AUTHOR) { + Meta->{values}{resources} = [ + [ 'MailingList' => 'http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst' ], + [ 'IRC' => 'irc://irc.perl.org/#catalyst' ], + [ 'license', => 'http://dev.perl.org/licenses/' ], + [ 'homepage', => 'http://dev.catalyst.perl.org/'], + [ 'repository', => 'http://dev.catalyst.perl.org/repos/Catalyst/Catalyst-Devel/' ], + ]; + + Meta->{values}{requires} = [ grep { + $_->[0] ne 'Class::C3' + } @{ Meta->{values}{requires} } ]; + + Meta->write; +}