Hi,

>> Perl variable @INC says where the modules will be looked:
>>
>> $ perl -e 'print join "\n", @INC'
>> /store/install/perl/lib/site_perl               <- this is my own addition  
>> (.bashrc contains 'export PERLLIB=/store/install/perl/lib/site_perl')
>> /usr/perl5/5.8.4/lib/i86pc-solaris-64int        <-- perl (core)
>> /usr/perl5/5.8.4/lib                              \
>> /usr/perl5/site_perl/5.8.4/i86pc-solaris-64int  <---
>> /usr/perl5/site_perl/5.8.4                       \  site
>> /usr/perl5/site_perl                              \-
>> /usr/perl5/vendor_perl/5.8.4/i86pc-solaris-64int <---
>> /usr/perl5/vendor_perl/5.8.4                      \ vendor
>> /usr/perl5/vendor_perl                             \-
>>   
>>> 2. 5.8.4/lib/i86pc-solaris-64int hierarchy
>>> 3. site_perl/5.8.4/i86pc-solaris-64int hierarchy
>>> 4. vendor_perl/5.8.4/i86pc-solaris-64int hierarchy
>>>     
>>
>> Not exactly, it's actually  5.8.4/lib, site_perl/5.8.4 and
>> vendor_perl/5.8.4. (if you would have 5.8.4 only - no lib, the modules
>> would get mixed up with 5.8.4/bin and 5.8.4/man and that would not be
>> nice)
>>   
>
> Here I see inconsistency: where locally added binaries and manpages have  
> to go?
> There is no man/ and bin/ neither in vendor_perl/$VERSION, nor in  
> site_perl/$version

It's defined in Config.pm

========== /usr/perl5/5.8.4/lib/i86pc-solaris-64int/Config.pm ==========
installbin='/usr/perl5/5.8.4/bin'
installhtml1dir=''
installhtml3dir=''
installman1dir='/usr/perl5/5.8.4/man/man1'
installman3dir='/usr/perl5/5.8.4/man/man3'
installprefix='/usr/perl5/5.8.4'
installprefixexp='/usr/perl5/5.8.4'
installscript='/usr/perl5/5.8.4/bin'
installsitearch='/usr/perl5/site_perl/5.8.4/i86pc-solaris-64int'
installsitebin='/usr/perl5/5.8.4/bin'
installsitehtml1dir=''
installsitehtml3dir=''
installsitelib='/usr/perl5/site_perl/5.8.4'
installsiteman1dir='/usr/perl5/5.8.4/man/man1'
installsiteman3dir='/usr/perl5/5.8.4/man/man3'
installsitescript='/usr/perl5/5.8.4/bin'
installstyle='lib'
installusrbinperl='undef'
installvendorarch='/usr/perl5/vendor_perl/5.8.4/i86pc-solaris-64int'
installvendorbin='/usr/perl5/5.8.4/bin'
installvendorhtml1dir=''
installvendorhtml3dir=''
installvendorlib='/usr/perl5/vendor_perl/5.8.4'
installvendorman1dir='/usr/perl5/5.8.4/man/man1'
installvendorman3dir='/usr/perl5/5.8.4/man/man3'
installvendorscript='/usr/perl5/5.8.4/bin'
========================================================================

so all man pages are installed into the same location. Frankly it
surprises me too :)


>>> so the questions are:
>>> 1. what the point of i86pc-solaris-64int sub-hier in 5.8.4/lib (and  
>>> site_perl/5.8.4 and vendor_perl/5.8.4)? First guess was `dependency 
>>> on some binary stuff', but that's seems to be wrong.
>>>     
>>
>> You are correct, the i86pc-solaris-64int is platform dependent
>> directory.
>>   
> What is kinda strange, since for example  
> /usr/perl5/5.8.4/lib/i86pc-solaris-64int/MIME is not Solaris-specific.  
> Most modules there are POSIX-specific, and very few of them actually  
> i86pc + solaris + 64bit specific.

I have to agree with you :)



>>> 2. what the difference between $VERSION/lib, site_per/$VERSION (note: 
>>> no lib/) and vendor_perl/$VERSION (once again no lib/)?
>>>     
>>
>> Original reason to create 'perl(core)' 'site' and 'vendor' was to
>> separate directories for modules shipped with perl itself, shipped by
>> your distribution (vendor) and compiled on your own box (site).
>>
>> So modules shipped with Solaris should be in the vendor directory.
>> ( Oooh, why is SUNWimagick shipping
>> /usr/perl5/site_perl/5.8.4/i86pc-solaris-64int/Image/Magick.pm ?!? )
>> Correct way to do that (again, check MakeMaker documentation)
>>   
>
> Yep, my initial question was about policy. I'm not arguing, just asking  
> where to put stuff.

I would recommend to use preconfigured vendor dirs.

-- 
        Vlad

Attachment: pgpJ9VjBo7y9G.pgp
Description: PGP signature

_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss

Reply via email to