# from [EMAIL PROTECTED] # on Sunday 17 February 2008 12:22: This still troubles me:
>+ 'INSTALLDIRS' => ($] >= 5.009003 ? 'perl' : 'site'), And the EU::CB Build.PL, (as well as a few others) has: > installdirs => ($] >= 5.009003 ? 'core' : 'site'), This idiom causes frustration when upgrading a debian system because their site directory has higher precedence than core. Thus, CPAN, Test-Harness, and Module-Build get upgraded by aptitude and the more recent files (installed from cpan) get overwritten with an older version. http://www.debian.org/doc/packaging-manuals/perl-policy/ch-perl.html $ perl -e 'use Config; my %incpos = map {$INC[$_] => $_} 0..$#INC; print "$incpos{$Config{$_}}: $_\n" for(qw( installsitearch installsitelib installarchlib installprivlib)); ' 5: installsitearch 6: installsitelib 9: installarchlib 10: installprivlib So, in this case, it is better for a dual-life module to install in site. Do debian users need to fix their configs, or do dual-life modules need to simply install into the @INC directory with higher-precedence? We sort-of had this discussion, but nothing changed (and I don't think we came to a conclusion.) It looks like the last word was: # from Michael G Schwern on Tuesday 16 October 2007 13:21: >All to add a convenience feature for a very narrow group of module > authors which already has an O(1) solution. But what is said solution? Have dual-life modules use the above installdirs idiom? I would like it to actually work if we're going to call it a solution. IMO, the trouble is that we're setting installdirs on the wrong criteria. The condition should be: $] >= 5.009003 && site_core_is_backwards() ? 'core' : 'site' --Eric -- You can't whack a chisel without a big wooden mallet. --------------------------------------------------- http://scratchcomputing.com ---------------------------------------------------