X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FCatalyst%2FBuild.pm;h=944d9e8e1d46b4f4d07c6a6bbddb25b6dd32fc4d;hb=264bac8c94a84d7dbac9912946d1a639fa37d1cd;hp=c314ad87ebb80f23050021b90c1ca8e3485dfeca;hpb=4f6748f101647dd3344339b19510947df6836412;p=catagits%2FCatalyst-Runtime.git diff --git a/lib/Catalyst/Build.pm b/lib/Catalyst/Build.pm index c314ad8..944d9e8 100644 --- a/lib/Catalyst/Build.pm +++ b/lib/Catalyst/Build.pm @@ -2,15 +2,20 @@ package Catalyst::Build; use strict; use Module::Build; -use base 'Module::Build'; use Path::Class; use File::Find 'find'; +our @ISA; +eval "require Module::Build"; +die "Please install Module::Build\n" if $@; +push @ISA, 'Module::Build'; + +our @ignore = + qw/Build Build.PL Changes MANIFEST META.yml Makefile.PL Makefile README + _build blib lib script t/; + our $FAKE; -our $ignore = '^(' - . join( '|', - qw/Build Build.PL Changes Makefile.PL README _build blib lib script t/ ) - . ')$'; +our $ignore = '^(' . join( '|', @ignore ) . ')$'; =head1 NAME @@ -24,8 +29,42 @@ See L L extension for Catalyst. +=head1 DEPRECATION NOTICE + +This module is deprecated in favor of L. It's +only left here for compability with older applications. + =head1 METHODS +=over 4 + +=item new + +=cut + +sub new { + my $class = shift; + my $self = $class->SUPER::new(@_); + + my $app_name = $self->{properties}{module_name}; + warn <<"EOF"; + + Note: + + The use of Build.PL for building and distributing Catalyst + applications is deprecated in Catalyst 5.58. + + We recommend using the new Module::Install-based Makefile + system. You can generate a new Makefile.PL for your application + by running: + + catalyst.pl -force -makefile $app_name + +EOF + + return $self; +} + =item ACTION_install =cut @@ -52,18 +91,16 @@ sub ACTION_fakeinstall { =cut sub ACTION_install_extras { - my $self = shift; - my $prefix = $self->{properties}{destdir} || ''; - my $path = dir( - $prefix, - $self->{config}{installsitelib}, - split( '::', $self->{properties}{module_name} ) - ); - my @files = $self->_find_extras; + my $self = shift; + my $prefix = $self->{properties}{destdir} || undef; + my $sitelib = $self->install_destination('lib'); + my @path = defined $prefix ? ( $prefix, $sitelib ) : ($sitelib); + my $path = dir( @path, split( '::', $self->{properties}{module_name} ) ); + my @files = $self->_find_extras; print "Installing extras to $path\n"; for (@files) { $FAKE - ? print "$_ -> $path/$_ (FAKE)\n" + ? print "$_ -> $path (FAKE)\n" : $self->copy_if_modified( $_, $path ); } } @@ -96,8 +133,8 @@ Sebastian Riedel, C =head1 LICENSE -This library is free software . You can redistribute it and/or modify it under -the same terms as perl itself. +This library is free software, you can redistribute it and/or modify it under +the same terms as Perl itself. =cut