#43148: p5.10-version: tries to modify Perl's version.pm during destroot ----------------------------+-------------------------------- Reporter: mojca@… | Owner: macports-tickets@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: Resolution: fixed | Keywords: Port: p5.10-version | ----------------------------+-------------------------------- Changes (by devans@…): * status: new => closed * resolution: => fixed Comment: The solution is, indeed, contained in bug referenced by Mojca in comment:1. version.pm was added to perl core in 5.10 which installs it here: {{{ ${prefix}/lib/perl5/5.10.1/version.pm }}} p5.10-version installs version.pm here: {{{ ${prefix}/lib/perl5/vendor_perl/5.10.1/darwin-thread-multi- 2level/version.pm }}} The default behavior of this port (see Makefile.PL) is to unlink the core version in favor of its own. This is applied only for perl versions < 5.12. Since perl 5.8 doesn't include version.pm in core, this is the reason that only p5.10-version is effected. It's not clear to me why, historically, this is the default behavior but it is unnecessary since the two versions are installed in different paths and due to the structure of @INC, p5-version will always override the core version.pm. You can use {{{ perl5.10 -Mversion -e'print $_ . " => " . $INC{$_} . "\n" for keys %INC' }}} both with and without p5.10-version active to prove this. In any case, as per the cited bug report, Makefile.PL now includes a check for env var PERL_NO_HIGHLANDER which, if present, will disable the attempt to unlink the core version of version.pm. Fix committed in r122719 which appends PERL_NO_HIGHLANDER to configure.env if perl5.major is 5.10. -- Ticket URL: <https://trac.macports.org/ticket/43148#comment:5> MacPorts <http://www.macports.org/> Ports system for OS X