From: Andrew Dunstan Date: Wed, 12 Nov 2008 00:00:05 +0000 (+0000) Subject: Detect and error out on inability to get proper linkage information required for... X-Git-Tag: REL8_4_BETA1~722 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=466368b8d00cf4a8d54270c3d12149d81badd1ab;p=postgresql Detect and error out on inability to get proper linkage information required for plperl, usually due to absence of perl ExtUtils::Embed module. Backpatch as far as 8.1. --- diff --git a/config/perl.m4 b/config/perl.m4 index 55c34574eb..6ca8b524fa 100644 --- a/config/perl.m4 +++ b/config/perl.m4 @@ -1,4 +1,4 @@ -# $PostgreSQL: pgsql/config/perl.m4,v 1.3 2003/11/29 19:51:17 pgsql Exp $ +# $PostgreSQL: pgsql/config/perl.m4,v 1.4 2008/11/12 00:00:05 adunstan Exp $ # PGAC_PATH_PERL @@ -32,4 +32,12 @@ pgac_tmp1=`$PERL -MExtUtils::Embed -e ldopts` pgac_tmp2=`$PERL -MConfig -e 'print $Config{ccdlflags}'` perl_embed_ldflags=`echo X"$pgac_tmp1" | sed "s/^X//;s%$pgac_tmp2%%"` AC_SUBST(perl_embed_ldflags)dnl -AC_MSG_RESULT([$perl_embed_ldflags])]) +if test -z "$perl_embed_ldflags" ; then + AC_MSG_RESULT(no) + AC_MSG_ERROR([could not determine flags for linking embedded Perl. +This probably means that ExtUtils::Embed or ExtUtils::MakeMaker is not +installed.]) +else + AC_MSG_RESULT([$perl_embed_ldflags]) +fi +])# PGAC_CHECK_PERL_EMBED_LDFLAGS diff --git a/configure b/configure index 0dc3460866..37af429c0f 100755 --- a/configure +++ b/configure @@ -6420,10 +6420,23 @@ echo $ECHO_N "checking for flags to link embedded Perl... $ECHO_C" >&6; } pgac_tmp1=`$PERL -MExtUtils::Embed -e ldopts` pgac_tmp2=`$PERL -MConfig -e 'print $Config{ccdlflags}'` perl_embed_ldflags=`echo X"$pgac_tmp1" | sed "s/^X//;s%$pgac_tmp2%%"` -{ echo "$as_me:$LINENO: result: $perl_embed_ldflags" >&5 +if test -z "$perl_embed_ldflags" ; then + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } + { { echo "$as_me:$LINENO: error: could not determine flags for linking embedded Perl. +This probably means that ExtUtils::Embed or ExtUtils::MakeMaker is not +installed." >&5 +echo "$as_me: error: could not determine flags for linking embedded Perl. +This probably means that ExtUtils::Embed or ExtUtils::MakeMaker is not +installed." >&2;} + { (exit 1); exit 1; }; } +else + { echo "$as_me:$LINENO: result: $perl_embed_ldflags" >&5 echo "${ECHO_T}$perl_embed_ldflags" >&6; } fi +fi + if test "$with_python" = yes; then # Extract the first word of "python", so it can be a program name with args. set dummy python; ac_word=$2