Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 31645 - perl-module.eclass incorrectly patches for MakeMaker 6.11
Summary: perl-module.eclass incorrectly patches for MakeMaker 6.11
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Unclassified (show other bugs)
Hardware: All Linux
: High critical
Assignee: Gentoo Perl team
URL:
Whiteboard:
Keywords:
: 31643 (view as bug list)
Depends on:
Blocks:
 
Reported: 2003-10-20 22:12 UTC by Neil Katin
Modified: 2011-10-30 22:19 UTC (History)
1 user (show)

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 Neil Katin 2003-10-20 22:12:09 UTC
There is a typo in the <cvsroot>/eclass/perl-module.eclass file.

In this file (introduced in CVS version 1.50 on 24 Sep) there was
a specific workaround for an API change in MakeMaker.  MakeMaker 6.11
changed how PREFIX and DESTDIR are treated.  However, the actual code
of the test is:

MMSIXELEVEN=`perl -e 'use ExtUtils::MakeMaker; print(
$ExtUtils::MakeMaker::VERSION gt "6.11" )'`

However, this test checks for versions "greater than".  The
test should be "greater than or equal to":

MMSIXELEVEN=`perl -e 'use ExtUtils::MakeMaker; print(
$ExtUtils::MakeMaker::VERSION ge "6.11" )'`

One final note: This bug will go away on its own once a version of
ExtUtils-MakeMaker beyond 6.11 is unmasked...

Reproducible: Always
Steps to Reproduce:
I discovered this bug with dev-perl/Mail-SpamAssassin-2.60.  It autoupgraded
(via emerge -u) and stopped working.  I investigated, and found all the
paths were pointing in the /var/tmp/portage tree.

So: emerge Mail-SpamAssassin.
Actual Results:  
Examine /usr/bin/spamassassin

If the "my $PREFIX" line references a path in /var/tmp you have the bug.

Expected Results:  
After changing my local copy of perl-module.eclass and emerging again, the
line is now

my $PREFIX= '/usr';

as it should be.

Portage 2.0.49-r13-2 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r1, 2.4.20-gentoo-
r5)
=================================================================
System uname: 2.4.20-gentoo-r5 i686 VIA Ezra
Gentoo Base System version 1.4.3.10p1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-march=i586 -m3dnow -O2 -pipe -fomit-frame-pointer"
CHOST="i586-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /var/qmail/control /usr/share/config /usr/kde/2/share/confi
g /usr/kde/3/share/config /var/chroot/named/etc /var/chroot/apache2/etc /var/bin
d"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
CXXFLAGS="-march=i586 -m3dnow -O2 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs sandbox ccache fixpackages noclean"
GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/Linu
x/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 oss apm arts avi crypt cups encode foomaticdb gif imlib jpeg libg++ lib
www mad mikmod motif mpeg ncurses nls oggvorbis opengl pdflib png quicktime sdl
spell svga truetype xml2 xmms xv zlib gdbm berkdb slang readline java mysql gpm
tcpd pam perl python -X -gtk -gnome -kde -qt -alsa apache2 ssl"
Comment 1 Neil Katin 2003-10-20 22:16:28 UTC
*** Bug 31643 has been marked as a duplicate of this bug. ***
Comment 2 Robert Coie (RETIRED) gentoo-dev 2003-10-23 22:11:17 UTC
Fixed in cvs.  Thank you.
Comment 3 Pau Oliva 2003-11-24 14:46:44 UTC
Hello guys, there is something still wrong with this, please look at it deeply and reopen the bug if necessary.

If I try to emerge "gscmxx" which uses perl-module eclass, I get the error pasted below. I've made a quick and dirty fix in eclass to make gscmxx compile, by removing the 'if clause' in line 78 of perl-module.eclass but I don't know much about perl modules and can't help you to fix it the right way.


Installing /var/tmp/portage/gscmxx-0.4.1/image/usr/bin/gscmxx
Writing /var/tmp/portage/gscmxx-0.4.1/image//usr/lib/perl5/vendor_perl/5.8.2/i686-linux/auto/gscmxx/.packlist
/usr/bin/perl "-MExtUtils::Command" -e mkpath /usr/share/pixmaps/gscmxx
ACCESS DENIED  mkdir:     /usr/share/pixmaps/gscmxx
mkdir /usr/share/pixmaps/gscmxx: Permission denied at /usr/lib/perl5/5.8.2/ExtUtils/Command.pm line 186
make: *** [pixmaps] Error 255

!!! ERROR: app-misc/gscmxx-0.4.1 failed.
!!! Function perl-module_src_install, Line 78, Exitcode 2
!!! (no error message)

--------------------------- ACCESS VIOLATION SUMMARY ---------------------------
LOG FILE = "/tmp/sandbox-gscmxx-0.4.1-21390.log"

mkdir:     /usr/share/pixmaps/gscmxx
--------------------------------------------------------------------------------
w0 gscmxx #