[dh-make-perl] 03/04: Issue a warning in build_package if local::lib usage is detected.

gregor herrmann gregoa at debian.org
Mon Apr 11 21:08:05 UTC 2016


This is an automated email from the git hooks/post-receive script.

gregoa pushed a commit to branch master
in repository dh-make-perl.

commit f10df1d13c8b23d632a829cce4a241277c0daedc
Author: gregor herrmann <gregoa at debian.org>
Date:   Mon Apr 11 22:59:09 2016 +0200

    Issue a warning in build_package if local::lib usage is detected.
    
    local::lib sets the installation path (by default to $HOME/perl5) via
    PERL_MB_OPT/PERL_MM_OPT which is not what we want in the built package.
    
    Messing with the environment is a bit too brittle, so we issue a fat
    warning and give recommendations for deactivating the local::lib environment
    temporarily.
    
    Thanks: Jacob L Anawalt for the bug report.
    Closes: #820395
---
 lib/DhMakePerl/Command/make.pm | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/lib/DhMakePerl/Command/make.pm b/lib/DhMakePerl/Command/make.pm
index c40fc99..39477c3 100644
--- a/lib/DhMakePerl/Command/make.pm
+++ b/lib/DhMakePerl/Command/make.pm
@@ -400,6 +400,15 @@ sub build_package {
     my ( $self ) = @_;
 
     my $main_dir = $self->main_dir;
+    # warn if local::lib usage is detected. cf. #820395
+    if ( $ENV{PERL_LOCAL_LIB_ROOT} ) {
+        $self->warning('It seems that you are running in an active local::lib environment.');
+        $self->warning('local::lib usually sets PERL_MB_OPT=--install_base and PERL_MM_OPT=INSTALL_BASE');
+        $self->warning('which will change the install path in the about to be built package.');
+        $self->warning('We recommend that you disable local::lib temporarily, e.g. by running');
+        $self->warning('    eval $(perl -Mlocal::lib=--deactivate-all)');
+        $self->warning('in your shell. -- Continuing anyway ...');
+    }
     # uhmf! dpkg-genchanges doesn't cope with the deb being in another dir..
     #system("dpkg-buildpackage -b -us -uc " . $self->cfg->dbflags) == 0
     system("fakeroot make -C $main_dir -f debian/rules clean");

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/dh-make-perl.git



More information about the Pkg-perl-cvs-commits mailing list