Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 156691 - g-cpan 0.14.0 fails to create ebuild for File::Spec::Mac
Summary: g-cpan 0.14.0 fails to create ebuild for File::Spec::Mac
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High normal
Assignee: Gentoo Perl team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-11-30 09:14 UTC by John Miller
Modified: 2006-12-05 18:17 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description John Miller 2006-11-30 09:14:04 UTC
g-cpan -p -v File::Spec::Mac
results in the following error:
<snip>
 * g-cpan: Checking on dependency Scalar::Util for File::Spec::Mac
 * g-cpan: Looking at /usr/local/portage
 * g-cpan: Scanning /usr/local/portage for Scalar-Util
 * g-cpan: Looking at /usr/portage
 * g-cpan: Scanning /usr/portage for Scalar-Util
 * g-cpan: Looking at /usr/local/portage
 * g-cpan: Scanning /usr/local/portage for Scalar-List-Utils
 * g-cpan: Looking at /usr/portage
 * g-cpan: Scanning /usr/portage for Scalar-List-Utils
 * g-cpan: Found ebuild under CPAN name (Scalar-List-Utils)
 * g-cpan: Ebuild already exists for Scalar-List-Utils
 * g-cpan: Looking at /usr/local/portage
 * g-cpan: Scanning /usr/local/portage for Scalar-List-Utils
 * g-cpan: Checking on dependency ($^O=~/^(dos|MSWin32)$/?(ExtUtils::Install for File::Spec::Mac
equal sign in command disabled (immature interface), you can set
 ! $CPAN::Shell::ADVANCED_QUERY=1
to enable it. But please note, this is HIGHLY EXPERIMENTAL code
that may go away anytime.
 * g-cpan: Cleaning temporary overlay


This is caused by the dependencies in the Build.PL for PathTools-3.24:
 build_requires => {
                      'File::Path' => 0,
                      'Test' => 0,
                      'Scalar::Util' => 0,
                      'Module::Build' => '0.19',
                      'ExtUtils::CBuilder' => 0,
--->                  ($^O =~ /^(dos|MSWin32)$/ ? ('ExtUtils::Install' => 1.39) : ()),
                     },

This requirement is not a static string pair, so Gentoo::CPAN fails to parse it.

Suggested fix:
In Gentoo::CPAN change lines 333-335 from:
       $pa =~ s/\n|\s+|\'//mg;
       if ($pa) {
          my ( $module, $vers ) = split( /=>/, $pa );
to:
       if ($pa =~ m/\S/) {
          my ( $module, $vers ) = eval $pa;
Comment 1 Michael Cummings (RETIRED) gentoo-dev 2006-12-05 05:41:01 UTC
Why are you trying to generate File-Spec-Mac in the first place? File::Spec::Mac is both shipped with perl and a part of the File-Spec perl-core module...? (not negating the coding bug here, just the choice in packages to try and generate)

Fixed in svn, had to modify it a little since the suggested block then complained when there wasn't an eval to do ;) Thanks!
Comment 2 John Miller 2006-12-05 18:17:32 UTC
I ran into it when trying to installing Catalyst (http://search.cpan.org/~mramberg/Catalyst-Runtime-5.7006/).  I repeated the issue on two separate computers, and this was the minimal package install to replicated the issue.

It occurs while g-cpan is analyzing the dependencies, not during the actual install.  So any package that has File::Spec::Mac as a dependency would have had the same problem.

Thanks!