Re: [HACKERS] perl interface bug?

Поиск
Список
Период
Сортировка
От Bruce Momjian
Тема Re: [HACKERS] perl interface bug?
Дата
Msg-id 199810160437.AAA28981@candle.pha.pa.us
обсуждение исходный текст
Ответ на Re: [HACKERS] perl interface bug?  (Brook Milligan <brook@trillium.NMSU.Edu>)
Список 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 по дате отправления:

Предыдущее
От: Brook Milligan
Дата:
Сообщение: Re: [HACKERS] perl interface bug?
Следующее
От: Bruce Momjian
Дата:
Сообщение: Re: [HACKERS] small bug in src/interfaces/ecpg/lib/Makefile.in