From cc8ddcb09771dff47c669a4e585f91c28d08359f Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Sun, 19 Apr 2015 09:59:23 -0500 Subject: gnu: perl: Fix Module::Pluggable for symlink forests. * gnu/packages/patches/perl-module-pluggable-search.patch: New file. * gnu-system.am (dist_patch_DATA): Add it. * gnu/packages/perl.scm (perl)[source]: Add patch. --- .../patches/perl-module-pluggable-search.patch | 25 ++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 gnu/packages/patches/perl-module-pluggable-search.patch (limited to 'gnu/packages/patches') diff --git a/gnu/packages/patches/perl-module-pluggable-search.patch b/gnu/packages/patches/perl-module-pluggable-search.patch new file mode 100644 index 0000000000..bb2a57f7e5 --- /dev/null +++ b/gnu/packages/patches/perl-module-pluggable-search.patch @@ -0,0 +1,25 @@ +Fix core Perl module Module::Pluggable such that it can find plugins that live +in symlinked directories. + +Patch borrowed/adapted from Nixpkgs. + +--- perl-5.16.1/cpan/Module-Pluggable/lib/Module/Pluggable/Object.pm 2015-04-08 23:28:48.120164135 -0500 ++++ perl-5.16.1/cpan/Module-Pluggable/lib/Module/Pluggable/Object.pm 2015-04-08 23:30:27.032166704 -0500 +@@ -164,7 +164,7 @@ + my $sp = catdir($dir, (split /::/, $searchpath)); + + # if it doesn't exist or it's not a dir then skip it +- next unless ( -e $sp && -d _ ); # Use the cached stat the second time ++ next unless ( -e $sp ); + + my @files = $self->find_files($sp); + +@@ -279,7 +279,7 @@ + (my $path = $File::Find::name) =~ s#^\\./##; + push @files, $path; + } +- }, $search_path ); ++ }, "$search_path/." ); + } + #chdir $cwd; + return @files; -- cgit v1.2.3