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/;
L<Module::Build> extension for Catalyst.
+=head1 DEPRECATION NOTICE
+
+This module is deprecated in favor of L<Module::Install::Catalyst>. It's
+only left here for compability with older applications.
+
=head1 METHODS
-=over4
+=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
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 );
}
}
=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