On Wed, Jun 15, 2005 at 11:37:38PM +0200, Maarten Thibaut wrote: > You can see that the makefile generation depends on selecting the right > $PERL and $FULLPERL. I've been trying to at least automate this part by > writing a MY::find_perl, sticking this somewhere in my home directory and > try to get perl to find this find_perl instead of the one in MM_Unix. I > found another way: copying and editing MM_Unix.pm directly (fixing > find_perl) and setting PERL5LIB. Not very clean. Is there a better way?
MakeMaker will use whatever perl you run the Makefile.PL with, it only has to guess if the path to Perl is not absolute. If you run Makefile.PL with a full path MakeMaker won't have to guess. /full/path/to/your/perl Makefile.PL > The other one is much more difficult to do. Our perl installation ends up > with a Config.pm that has entries like this: > > installprivlib='/opt/local/stow/perl-5.8.0/lib/perl5/5.8.0' > > We need to put every module in its own install path, something like: > > /opt/local/sun4u-5.8/stow/cpan$VERSION.$MODULENAME/lib/perl5/5.8.0 > > So we end up doing a s/ regex to change all of those paths. You can set those paths by using INSTALLSITELIB, INSTALLSITEMAN3DIR, etc... perl Makefile.PL INSTALLSITELIB=/opt/local/sun4u-5.8/stow/cpan$VERSION.$MODULENAME/lib/perl5/5.8.0 Though for something like stow which does the "install a module in X but run it from Y" trick you'd be better off using DESTDIR. Stow should have documentation on how to build with systems that have a destdir concept. perl Makefile.PL DESTDIR=/opt/local/sun4u-5.8/stow/cpan$VERSION.$MODULENAME INSTALLSITELIB=/path/to/where/stow/will/symlink/to See the "make install" section of the ExtUtils::MakeMaker documentation for details on all the INSTALL* variables. Also note that upgrade versions of MakeMaker are available on CPAN so that you don't have to fight different bugs in different versions. -- Michael G Schwern [EMAIL PROTECTED] http://www.pobox.com/~schwern Ahh email, my old friend. Do you know that revenge is a dish that is best served cold? And it is very cold on the Internet!