When running a tarball or git install, the following is printed at the end of the process: --- BEGIN SNIPPET --- To change any configuration setting, please run perl Makefile.PL again. To override one of the target directories, you can do so on the command line like this: perl Makefile.PL PERL_MODULE_DIR=/usr/share/perl/5.8 You can also set different default values for parameters or override directory locations by using environment variables. --- END SNIPPET --- Seeing as 5.10 is the minimum version for Perl as of 3.6.x, this should be reflected. Test -------- $ perl Makefile.PL # hold down the enter key to accept all the defaults # scroll back up, if necessary, to see it does say 5.8 as above. Apply patch retest. The results should reflect an appropriate version. If there is /usr/share/perl/ in @INC, the first match is used. Otherwise, /usr/share/perl/5.10 is used (since the text does say LIKE this, and not EXACTLY this). Patch to follow shortly.
Created attachment 12079 [details] [review] Changed hardcoded path for a programmatic one. Changed hardcoded /usr/share/perl/5.8 message to be based on: my @version = grep /\/usr\/share\/perl\//, @INC; By doing a push @version, ('/usr/share/perl/5.10') if !$version[0]; If inexplicably the grep fails or @INC is empty, then there is a reasonable default value. print "\nperl Makefile.PL PERL_MODULE_DIR=$version[0]\n\n";
Created attachment 12143 [details] [review] Changed hardcoded path for a programmatic one. Accidentally uploaded wrong version of the patch. Previous version didn't work in the case that /usr/share/perl/ wasn't in the @INC. This one does. Test case (before patch): /usr/share/perl/5.8 is printed. Test case (normally): /usr/share/perl/ should be in @INC, that version should print. Just hold down the enter key on 'perl Makefile.PL' Test case (bizarre): I purposefully inserted a @version=(); to force the push to execute. Because the only case where perl wouldn't have /usr/share/perl/ in the @INC is some strange OS with a non-standard perl configuration (like Windows ;) ). I then removed @version=(); after. Printing /usr/share/perl/5.10 is no worse than /usr/share/perl/5.8 in that context. It's just the 5.10 is more accurate version wise.
Created attachment 12437 [details] [review] [SIGNED-OFF] Bug 8742 - Example uses perl 5.8 in Makefile.PL Changed hardcoded path for a programmatic one. Basing it on: grep /\/usr\/share\/perl\//, @INC; And doing a: push @version, ('/usr/share/perl/5.10') if !$version[0]; For a reasonable default otherwise. No more references to /usr/share/perl/5.8 hardcoded into the output. Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
QA comment * installer-only script * doc only passes QA
Patch pushed to master (pushed 2 days ago, I forgot to update the status)
Pushed to 3.8.x will be in 3.8.12