mro compat stuff
[catagits/Catalyst-Runtime.git] / Makefile.PL
index 27e7206..d785b4a 100644 (file)
@@ -1,93 +1,76 @@
-use inc::Module::Install;
-
-name('Catalyst');
-abstract('Catalyst Web Framework');
-author('Sebastian Riedel');
-version_from('lib/Catalyst.pm');
-license('perl');
-
-include('ExtUtils::AutoInstall');
-
-requires( 'perl'               => '5.8.1' );
-requires( 'UNIVERSAL::require' => "0.10" );
-requires('Class::Accessor::Fast');
-requires('Class::Data::Inheritable');
-requires('Class::Inspector');
-requires('CGI::Cookie');
-requires('File::Modified');
-requires('HTML::Entities');
-requires( 'HTTP::Body'    => 0.5 );
-requires( 'HTTP::Headers' => 1.59 );
-requires('HTTP::Request');
-requires('HTTP::Response');
-requires('HTTP::Request::AsCGI');
-requires('LWP::UserAgent');
-requires('MIME::Types');
-requires( 'Module::Pluggable::Fast' => 0.16 );
-requires('NEXT');
-requires( 'Path::Class' => 0.09 );
-requires('Scalar::Util');
-requires('Template');
-requires('Text::SimpleTable');
-requires('Test::MockObject');
-requires('Time::HiRes');
-requires('Tree::Simple');
-requires('Tree::Simple::Visitor::FindByPath');
-requires( 'URI' => 1.35 );
-requires('File::Copy::Recursive');
-requires('Module::Install::Admin');
-requires('ExtUtils::AutoInstall');
-
-features(
-    'Apache/mod_perl Support' => [
-        -default                   => 0,
-        'Catalyst::Engine::Apache' => '1.00'
-    ],
-    'FastCGI Support' => [
-        -default            => 0,
-        'FCGI'              => 0,
-        'FCGI::ProcManager' => 0
-    ],
-    'PAR Support' => [
-        -default => 0,
-        'PAR'    => 0
-    ],
-    'CPANPLUS (for easier installations)' => [
-        -default   => 1,
-        'CPANPLUS' => 0
-    ],
-);
-
-install_script( glob('script/*.pl') );
-auto_install();
-&WriteAll;
-
-print( '*' x 80, "\n" );
-my $banner =
-  (qw/andyg chansen draven fordmason mst naughton sri jester/)[ int( rand(8) ) ]
-  . " is the greatest and gabb is "
-  . ( (localtime)[2] > 12 ? "drunk" : "hung over" )
-  . " again!";
-print " $banner \n";
-print( '*' x 80, "\n" );
-
-eval "use FCGI";
-print qq/ Install "FCGI" for FastCGI support.\n/ if $@;
-eval "use FCGI::ProcManager";
-print
-  qq/ Install "FCGI::ProcManager" for multiprocess FastCGI external support.\n/
-  if ($@);
-eval "use PAR ()";
-print qq/ Install "PAR" for PAR packaging support.\n/ if $@;
+use inc::Module::Install 0.64;
+
+use 5.008001; 
+perl_version '5.8.1';
+
+name 'Catalyst-Runtime';
+all_from 'lib/Catalyst/Runtime.pm';
+
+requires 'MooseX::Emulate::Class::Accessor::Fast';
+
+requires 'Carp';
+requires 'Class::Accessor::Fast';
+requires 'Class::Data::Inheritable';
+requires 'Class::Inspector' => '1.06';
+requires 'CGI::Simple::Cookie';
+requires 'Data::Dump';
+requires 'File::Modified';
+requires 'HTML::Entities';
+requires 'HTTP::Body'    => '0.9';
+requires 'HTTP::Headers' => '1.64';
+requires 'HTTP::Request';
+requires 'HTTP::Response';
+requires 'HTTP::Request::AsCGI' => '0.5';
+requires 'LWP::UserAgent';
+requires 'Module::Pluggable' => '3.01';
+requires 'NEXT';
+requires 'Path::Class' => '0.09';
+requires 'Scalar::Util';
+requires 'Text::SimpleTable' => '0.03';
+requires 'Time::HiRes';
+requires 'Tree::Simple' => '1.15';
+requires 'Tree::Simple::Visitor::FindByPath';
+requires 'URI' => '1.35';
+requires 'Text::Balanced'; # core in 5.8.x but mentioned for completeness
+requires 'MRO::Compat';
+
+if (-e 'inc/.author') {
+  build_requires 'Test::Perl::Critic';
+  build_requires 'Test::Pod' => 1.14;
+  build_requires 'Test::Pod::Coverage' => 1.04;
+
+  if ($^O eq 'darwin') { 
+      my $osx_ver = `/usr/bin/sw_vers -productVersion`;
+      chomp $osx_ver;
+
+      # TAR on 10.4 wants COPY_EXTENDED_ATTRIBUTES_DISABLE
+      # On 10.5 (Leopard) it wants COPYFILE_DISABLE
+      my $attr = $osx_ver eq '10.5' ? 'COPYFILE_DISABLE' : 'COPY_EXTENDED_ATTRIBUTES_DISABLE';
+
+      makemaker_args(dist => { PREOP => qq{\@if [ "\$\$$attr" != "true" ]; then}.
+                                        qq{ echo "You must set the ENV variable $attr to true,"; }.
+                                        ' echo "to avoid getting resource forks in your dist."; exit 255; fi' }); 
+  }
+}
+
+install_script glob('script/*.pl');
+auto_install;
+WriteAll;
 
 print <<"EOF";
 
  Important:
-    Install Task::Catalyst to get everything you need to start writing
-    serious applications with Catalyst.
 
-        perl -MCPANPLUS -e 'install Task::Catalyst'
-        perl -MCPAN -e 'install Task::Catalyst'
+    This library is for running Catalyst applications.
+
+    For development and use of catalyst.pl and myapp_create.pl, make sure
+    you also install the development tools package Catalyst::Devel.
+
+        perl -MCPANPLUS -e 'install Catalyst::Devel' # or
+        perl -MCPAN -e 'install Catalyst::Devel'
+
+    To get some commonly used plugins, as well as the TT view and DBIC 
+    model, install Task::Catalyst in the same way.
 
  Have fun!
 EOF