summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2010-01-07 01:41:11 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2010-01-07 01:41:11 +0000
commit55233c3382ed5b9981f232e2f43003dab84c3925 (patch)
treed385964172f953af1ad78da6112e3864287744e4 /config
parentd15cb38dec01fcc8d882706a3fa493517597c76b (diff)
downloadpostgresql-55233c3382ed5b9981f232e2f43003dab84c3925.tar.gz
Make configure check the version of Perl we're building with, and reject
versions < 5.8. Also, if there's no Perl, emit a warning informing the user that he won't be able to build from a CVS pull. This is exactly the same treatment we give Bison and Perl, and for the same reasons.
Diffstat (limited to 'config')
-rw-r--r--config/perl.m429
1 files changed, 27 insertions, 2 deletions
diff --git a/config/perl.m4 b/config/perl.m4
index b42a04fbfd..ad64379e5a 100644
--- a/config/perl.m4
+++ b/config/perl.m4
@@ -1,10 +1,35 @@
-# $PostgreSQL: pgsql/config/perl.m4,v 1.5 2009/09/08 18:15:55 tgl Exp $
+# $PostgreSQL: pgsql/config/perl.m4,v 1.6 2010/01/07 01:41:11 tgl Exp $
# PGAC_PATH_PERL
# --------------
AC_DEFUN([PGAC_PATH_PERL],
-[AC_PATH_PROG(PERL, perl)])
+[# Let the user override the search
+if test -z "$PERL"; then
+ AC_PATH_PROG(PERL, perl)
+fi
+
+if test "$PERL"; then
+ pgac_perl_version=`$PERL -v 2>/dev/null | sed -n ['s/This is perl, v[a-z ]*//p'] | sed ['s/ .*//']`
+ AC_MSG_NOTICE([using perl $pgac_perl_version])
+ if echo "$pgac_perl_version" | sed ['s/[.a-z_]/ /g'] | \
+ $AWK '{ if ([$]1 = 5 && [$]2 >= 8) exit 1; else exit 0;}'
+ then
+ AC_MSG_WARN([
+*** The installed version of Perl, $PERL, is too old to use with PostgreSQL.
+*** Perl version 5.8 or later is required, but this is $pgac_perl_version.])
+ PERL=""
+ fi
+fi
+
+if test -z "$PERL"; then
+ AC_MSG_WARN([
+*** Without Perl you will not be able to build PostgreSQL from CVS.
+*** You can obtain Perl from any CPAN mirror site.
+*** (If you are using the official distribution of PostgreSQL then you do not
+*** need to worry about this, because the Perl output is pre-generated.)])
+fi
+])# PGAC_PATH_PERL
# PGAC_CHECK_PERL_CONFIG(NAME)