PostgreSQL and Perl
I'm trying to find out what to do with this Perl library that PostgreSQL
produces.
The upstream Makefile.PL wants to put things into my own locations, and
I need to find out how to force things to debian/tmp... and what directory
under there I should put it in.
I ran this command to show the current paths as shown by the MakeMaker man
page:
$ perl '-V:install.*'
installarchlib='/usr/lib/perl5/i386-linux/5.00402'
installprivlib='/usr/lib/perl5'
installbin='/usr/bin'
installman1dir='/usr/man/man1'
installman3dir='/usr/man/man3'
installscript='/usr/bin'
installsitearch='/usr/local/lib/site_perl/i386-linux'
installsitelib='/usr/local/lib/site_perl'
The Makefile is trying to put things in $installsitelib; is that OK for
the FSSTND? (I think not, because no other package seems to use it;
as far as I can see similar stuff goes into /usr/lib/perl5.)
I see from the man page for MakeMaker that I can feed new variable values to
WriteMakefile(), but I'm not sure what effect this will have on Perl and I
really don't have time to find out.
How can I change this variable in a manner suitable for enclosing in a
Debian package? (I attach the Makefile.PL file; if anyone
can suggest the necessary changes, I shall be grateful.)
#-------------------------------------------------------
#
# $Id: Makefile.PL,v 1.4 1997/09/25 21:14:41 mergl Exp $
#
# Copyright (c) 1997 Edmund Mergl
#
#-------------------------------------------------------
use ExtUtils::MakeMaker;
use Config;
use strict;
print "\nConfiguring Pg\n";
print "Remember to actually read the README file !\n";
die "\nYou didn't read the README file !\n" unless ($] >= 5.002);
if (! $ENV{POSTGRES_HOME}) {
warn "\$POSTGRES_HOME not defined. Searching for PostgreSQL...\n";
foreach(qw(/usr/local/pgsql /usr/pgsql /home/pgsql /opt/pgsql /usr/local/postgres /usr/postgres /home/postgres /opt/postgres)) {
if (-d "$_/lib") {
$ENV{POSTGRES_HOME} = $_;
last;
}
}
}
if (-d "$ENV{POSTGRES_HOME}/lib" || $ENV{OVERRIDE}) {
# ^^^^^^^^^^^^^^^^^
# I put this bit in to stop it falling over because it couldn't find an
# already built and installed PostgreSQL - Oliver Elphick
print "Found PostgreSQL in $ENV{POSTGRES_HOME}\n";
} else {
die "Unable to determine PostgreSQL\n";
}
my %opts = (
NAME => 'Pg',
VERSION_FROM => 'Pg.pm',
INC => "-I$ENV{POSTGRES_HOME}/include -I../../include -I../libpq",
LIBS => ["-L$ENV{POSTGRES_HOME}/lib -L ../libpq -lpq"],
);
WriteMakefile(%opts);
exit(0);
# end of Makefile.PL
Oliver Elphick Oliver.Elphick@lfix.co.uk
Isle of Wight http://lfix.co.uk/oliver
PGP key from public servers; key ID 32B8FAA1
Reply to: