From: Bruce Momjian Date: Fri, 16 Oct 1998 04:37:38 +0000 (+0000) Subject: Perl fixes from Brook Milligan X-Git-Tag: REL6_4_2~208 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=baa2f9998ca392c3057cbe4c72a5a4b4c2c55bc0;p=postgresql Perl fixes from Brook Milligan --- diff --git a/src/configure.in b/src/configure.in index 3c380fbda9..074f00c2cd 100644 --- a/src/configure.in +++ b/src/configure.in @@ -246,17 +246,6 @@ AC_ARG_WITH( [ 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( @@ -902,6 +891,7 @@ AC_OUTPUT( 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 diff --git a/src/interfaces/Makefile b/src/interfaces/Makefile index d1537e1752..58e8a2b175 100644 --- a/src/interfaces/Makefile +++ b/src/interfaces/Makefile @@ -7,7 +7,7 @@ # # # IDENTIFICATION -# $Header: /cvsroot/pgsql/src/interfaces/Makefile,v 1.16 1998/10/07 06:41:40 thomas Exp $ +# $Header: /cvsroot/pgsql/src/interfaces/Makefile,v 1.17 1998/10/16 04:37:37 momjian Exp $ # #------------------------------------------------------------------------- @@ -15,13 +15,11 @@ SRCDIR= .. 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 @@ ifeq ($(USE_TCL), true) $(MAKE) -C libpgtcl $@ endif ifeq ($(USE_PERL), true) + -$(MAKE) -C perl5 $(PERL_CLEAN) + $(MAKE) perl5/Makefile $(MAKE) -C perl5 $@ endif ifeq ($(USE_ODBC), true) diff --git a/src/interfaces/perl5/Makefile.PL b/src/interfaces/perl5/Makefile.PL index 2accab41f9..f85a1c15b6 100644 --- a/src/interfaces/perl5/Makefile.PL +++ b/src/interfaces/perl5/Makefile.PL @@ -1,6 +1,6 @@ #------------------------------------------------------- # -# $Id: Makefile.PL,v 1.9 1998/09/27 19:12:21 mergl Exp $ +# $Id: Makefile.PL,v 1.10 1998/10/16 04:37:38 momjian Exp $ # # Copyright (c) 1997, 1998 Edmund Mergl # @@ -10,29 +10,25 @@ use ExtUtils::MakeMaker; 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 @@ 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$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 = (