The whole argument about attempting to enforce individual platform
standards should be rendered moot if the new PREFIX algorithm works.
Keep in mind, the hard coded directory structure is a *fall back* if
the intellegent guesses fail.


I've just hit a small snag.  On the left is your typical Debian system
installation (which is sufficiently odd enough to be non-trivial).  On
the right is the result under the proposed PREFIX algorithm.

       Config           system                       local
    installprefix   /usr                         $PREFIX
    installbin      /usr/bin                     $PREFIX/bin
    installman1dir  /usr/share/man/man1          $PREFIX/share/man/man1
    installman3dir  /usr/share/man/man3          $PREFIX/share/man/man3
    installscript   /usr/bin                     $PREFIX/bin
    installarchlib  /usr/lib/perl/5.6.1          $PREFIX/lib/perl/5.6.1
    installprivlib  /usr/share/perl/5.6.1        $PREFIX/share/perl/5.6.1
    installsitearch /usr/local/lib/perl/5.6.1    $PREFIX/local/lib/perl/5.6.1
    installsitebin  /usr/local/bin               $PREFIX/local/bin
    installsitelib  /usr/local/share/perl/5.6.1  $PREFIX/local/share/perl/5.6.1

we're all ok until we hit installsite*.  It effectively has a
different prefix.  And it does!  siteprefix, which I've never noticed
before.  So if we slightly alter the algorithm to apply siteprefix to
the installsite* variables:

       Config           system                       local
    installprefix   /usr                         $PREFIX
    siteprefx       /usr/local                   $PREFIX
    installbin      /usr/bin                     $PREFIX/bin
    installman1dir  /usr/share/man/man1          $PREFIX/share/man/man1
    installman3dir  /usr/share/man/man3          $PREFIX/share/man/man3
    installscript   /usr/bin                     $PREFIX/bin
    installarchlib  /usr/lib/perl/5.6.1          $PREFIX/lib/perl/5.6.1
    installprivlib  /usr/share/perl/5.6.1        $PREFIX/share/perl/5.6.1
    installsitearch /usr/local/lib/perl/5.6.1    $PREFIX/lib/perl/5.6.1
    installsitebin  /usr/local/bin               $PREFIX/bin
    installsitelib  /usr/local/share/perl/5.6.1  $PREFIX/share/perl/5.6.1

I think that's pretty good.


MakeMaker currently ignores 'siteprefix'.  It also ignores other
potentially useful things like 'installstyle', which I'm still
figuring out what its for.  

And then there's the installvendor* set which the Debian folks find so
useful but MakeMaker also ignores.  There's a Debian patch for it,
I'll examine it closely to see how it can be worked in.


-- 

Michael G. Schwern   <[EMAIL PROTECTED]>    http://www.pobox.com/~schwern/
Perl Quality Assurance      <[EMAIL PROTECTED]>         Kwalitee Is Job One
It's Miller time!

Reply via email to