[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [coldsync-hackers] Perl



> > > 	Perl under Redhat is broken: it wants to put locally-installed
> > > modules in /usr, instead of /usr/local . This violates a hidden
> > > assumption in the ColdSync Makefiles: that the Perl stuff goes in a
> > > subdirectory of ${PREFIX}.
> >
> > It's not broken, it's installed from a different point of view.
>
> 	According to
> http://www.redhat.com/docs/manuals/linux/RHL-7.2-Manual/ref-guide/
> s1-filesystem-fhs.html
>
> 	The /usr/local Directory
>
> 	The FHS says:
>
> 	"The /usr/local hierarchy is for use by the system
> 	administrator when installing software locally. It needs to be
> 	safe from being overwritten when the system software is
> 	updated.
>
> IOW, AIUI, if it didn't come from the vendor, it goes in /usr/local.

???, AndIUseIt? :-)

seriously, tho, that seems silly.  When I install libgtop, I don't make perl
install GTop.pm in /usr/share/gnome/lib/ (or insert equally contrived but
equivalent example here)!

> > perl will happily tell you what its prefix is
> >
> > perl -MConfig -e 'print $Config{prefix}'
> >
> > which can be used on any configline.
>
> 	That tells you where the Perl distribution is installed. You
> want
> 	sitearch
> 	sitearchexp
> 	installsitearch
> 	sitelib
> 	sitelibexp
> 	installsitelib
>
> which tell you where local additions go.
>
> 	If anyone has a solution to suggest, I'm all ears, but here's
> the scope of the problem:
>
> 	- The ColdSync distribution really consists of two packages:
> 	  ColdSync, and the ColdSync Perl modules.

And the one is pointless without the other.  And you ostensibly wouldn't
install coldsync Perl modules without installing Coldsync.  Conversely,
upgrading to an updated vv of the modules shouldn't necessarily affect
coldsync... but again you wouldn't have them at all unless you're using
coldsync anyway.

> 	- When you 'make install', everything should go under
> 	  ${PREFIX}. One approach to package management is to install
> 	  packages in their own subdirectories. Thus, if some package
> 	  'foopkg' allowed me to specify prefix=/opt/foopkg, and 'make
> 	  install' touched something outside of /opt/foopkg, I'd go
> 	  after the author with a blunt instrument.

Messing with @INC (perl's idea of where things live) is usually a gigantic
headache.  Oh, shure it's doable and supported.  But who wants to have to
add "use lib '/usr/local/coldysnc/perl-modules';" to the top of every
conduit?

> 	- It is desirable to be able to install everything in a single
> 	  directory, so that it can then be tarred up and installed
> 	  someplace else.

But coldsync is really two packages... one of which has a configure script,
suitable for establishing the local environment.  The other of which gets
that exact support information for free, *and* intelligently understands
where everything should go.

> 	- It is very desirable to configure with one value of
> 	  ${PREFIX} and install with a different value. This allows
> 	  you to build with prefix=/opt/coldsync, but install in
> 	  /tmp/coldsync-dist . But wen you run
> 	  /tmp/coldsync-dist/bin/coldsync, it'll look for config files
> 	  in /opt/coldsync .

But this is really irrelevant to Coldsync.pm, isn't it?  If you need it that
badly, a SANE implementation requires a path/pathname to the constructor of
Coldsync->new("/path/to/coldsyncrc"); # defaults to #					#
/usr/local/etc/coldsync.conf

> --
> Andrew Arensburger                      This message *does* represent the
> arensb@ooblick.com                      views of ooblick.com
>        Please continue the pettifoggery. I find it fascinating.
>
> --
> This message was sent through the coldsync-hackers mailing list.
> To remove
> yourself from this mailing list, send a message to majordomo@thedotin.net
> with the words "unsubscribe coldsync-hackers" in the message
> body.  For more
> information on Coldsync, send mail to coldsync-hackers-owner@thedotin.net.
>


-- 
This message was sent through the coldsync-hackers mailing list.  To remove
yourself from this mailing list, send a message to majordomo@thedotin.net
with the words "unsubscribe coldsync-hackers" in the message body.  For more
information on Coldsync, send mail to coldsync-hackers-owner@thedotin.net.