Re: [HACKERS] perl interface bug? - Mailing list pgsql-hackers
From | Bruce Momjian |
---|---|
Subject | Re: [HACKERS] perl interface bug? |
Date | |
Msg-id | 199810160437.AAA28981@candle.pha.pa.us Whole thread Raw |
In response to | Re: [HACKERS] perl interface bug? (Brook Milligan <brook@trillium.NMSU.Edu>) |
List | pgsql-hackers |
Applied. > This patch does not apply properly. Please resubmit. > > Sorry. Here is a set that works against my copy of the BETA2 > tarball. Hope that works now. > > Cheers, > Brook > > =========================================================================== > --- interfaces/perl5/Makefile.PL.orig Mon Sep 28 01:00:21 1998 > +++ interfaces/perl5/Makefile.PL Thu Oct 15 12:55:19 1998 > @@ -10,29 +10,25 @@ > use Config; > use strict; > > -# because the perl5 interface is always contained in the source tree, > -# we can be sure about the location of the include files and libs. > -# For development and testing we still test for POSTGRES_HOME. > -# > -#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") { > -# print "Found PostgreSQL in $ENV{POSTGRES_HOME}\n"; > -#} else { > -# die "Unable to determine PostgreSQL\n"; > -#} > +# This Makefile.PL is intended for standalone use when PostgreSQL is > +# already installed. In that case, install the perl module as follows: > +# > +# setenv POSTGRES_HOME /path/to/root/of/installed/postgres > +# perl Makefile.PL > +# make > +# make test > +# make install > + > +# During normal installation of PostgreSQL, this file will be replaced > +# by one derived from Makefile.PL.in so that the installed shared > +# library libpq.so will be found during installation of this module. > +# As a result, the POSTGRES_HOME environment variable need not be set > +# during PostgreSQL installation. Note that ../Makefile takes care of > +# the `perl Makefile.PL' command. Note also that it is still possible > +# to follow the standalone installation procedure, even after > +# configuring and installing PostgreSQL, because the `else' > +# conditional branch below is identical in both Makefile.PL and > +# Makefile.PL.in. > > my %opts; > > @@ -41,14 +37,17 @@ > my $cwd = `pwd`; > chop $cwd; > > - %opts = ( > - NAME => 'Pg', > - VERSION_FROM => 'Pg.pm', > - INC => "-I$cwd/../libpq -I$cwd/../../include", > - OBJECT => "Pg\$(OBJ_EXT)", > - LIBS => ["-L$cwd/../libpq -lpq"], > - ); > + print "To install the perl interface for PostgreSQL do the following:\n"; > + print " - install PostgreSQL\n"; > + print " - set the POSTGRES_HOME environment variable appropriately\n"; > + print " - in this directory ($cwd):\n"; > + print " perl Makefile.PL\n"; > + print " make\n"; > + print " make test [ with a postmaster running ]\n"; > + print " make install\n"; > > + exit(1); > + > } else { > > %opts = ( > =========================================================================== > --- interfaces/perl5/Makefile.PL.in.orig Thu Oct 15 11:09:15 1998 > +++ interfaces/perl5/Makefile.PL.in Thu Oct 15 11:57:17 1998 > @@ -0,0 +1,44 @@ > +#------------------------------------------------------- > +# > +# $Id: Makefile.PL,v 1.9 1998/09/27 19:12:21 mergl Exp $ > +# > +# Copyright (c) 1997, 1998 Edmund Mergl > +# > +#------------------------------------------------------- > + > +use ExtUtils::MakeMaker; > +use Config; > +use strict; > + > +my %opts; > + > +if (! $ENV{POSTGRES_HOME}) { > + > + my $cwd = `pwd`; > + chop $cwd; > + > + %opts = ( > + NAME => 'Pg', > + VERSION_FROM => 'Pg.pm', > + INC => "-I$cwd/../libpq -I$cwd/../../include", > + OBJECT => "Pg\$(OBJ_EXT)", > + LIBS => ["-L@prefix@/lib -L$cwd/../libpq -lpq"], > + ); > + > +} else { > + > + %opts = ( > + NAME => 'Pg', > + VERSION_FROM => 'Pg.pm', > + INC => "-I$ENV{POSTGRES_HOME}/include", > + OBJECT => "Pg\$(OBJ_EXT)", > + LIBS => ["-L$ENV{POSTGRES_HOME}/lib -lpq"], > + ); > +} > + > + > +WriteMakefile(%opts); > + > +exit(0); > + > +# end of Makefile.PL > =========================================================================== > --- interfaces/Makefile.orig Wed Oct 7 01:00:23 1998 > +++ interfaces/Makefile Tue Oct 13 16:29:16 1998 > @@ -15,13 +15,11 @@ > include $(SRCDIR)/Makefile.global > > > -perl-makefile-dep := > -ifeq ($(USE_PERL), true) > - perl-makefile-dep := perl5/Makefile > -endif > +PERL_CLEAN := DO_NOTHING > +install: PERL_CLEAN := clean > > > -.DEFAULT all install clean dep depend distclean: $(perl-makefile-dep) > +.DEFAULT all install clean dep depend distclean: > $(MAKE) -C libpq $@ > $(MAKE) -C ecpg $@ > ifeq ($(HAVE_Cplusplus), true) > @@ -33,6 +31,8 @@ > $(MAKE) -C libpgtcl $@ > endif > ifeq ($(USE_PERL), true) > + -$(MAKE) -C perl5 $(PERL_CLEAN) > + $(MAKE) perl5/Makefile > $(MAKE) -C perl5 $@ > endif > ifeq ($(USE_ODBC), true) > =========================================================================== > --- configure.in.orig Thu Oct 15 01:00:20 1998 > +++ configure.in Thu Oct 15 11:54:09 1998 > @@ -266,17 +266,6 @@ > [ USE_PERL=false; AC_MSG_RESULT(disabled) ] > ) > > -#dnl Verify that postgres is already installed > -#dnl per instructions for perl interface installation > -if test "$USE_PERL" = "true" > -then > - if test "$WHOAMI" != "root" > - then AC_MSG_WARN(perl support disabled; must be root to install) > - USE_PERL= > - fi > -fi > -export USE_PERL > - > dnl We include odbc support unless we disable it with --with-odbc=false > AC_MSG_CHECKING(setting USE_ODBC) > AC_ARG_WITH( > @@ -917,6 +906,7 @@ > interfaces/libpgtcl/Makefile > interfaces/odbc/GNUmakefile > interfaces/odbc/Makefile.global > + interfaces/perl5/Makefile.PL > pl/plpgsql/src/Makefile > pl/plpgsql/src/mklang.sql > pl/tcl/mkMakefile.tcldefs.sh > -- Bruce Momjian | http://www.op.net/~candle maillist@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026
pgsql-hackers by date: