summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2009-06-23 03:46:00 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2009-06-23 03:46:00 +0000
commit8d355d7bbfea045415afe66a30e321d4621cc1b9 (patch)
tree294bc866913ee84655c0d6a44a7d7287c10f47a1 /config
parentbc00ceb159624ab1e4125995a64b318e6c2b1157 (diff)
downloadpostgresql-8d355d7bbfea045415afe66a30e321d4621cc1b9.tar.gz
Fix the makefiles to fail cleanly if Perl is needed but not present. This
used to work as intended, but got broken some time ago (a quoted empty string is not an empty string), and got broken some more by the changes to generate ecpg's preproc.y automatically. Given all the unprotected uses of $(PERL) elsewhere, it seems best to make use of the $(missing) script rather than trying to ensure each such use is protected individually. Also fix various bits of documentation that omitted to mention Perl as a requirement for building from a CVS pull. Per a complaint from Robert Haas.
Diffstat (limited to 'config')
-rwxr-xr-xconfig/missing25
1 files changed, 22 insertions, 3 deletions
diff --git a/config/missing b/config/missing
index 2d47501bb5..16e31756f6 100755
--- a/config/missing
+++ b/config/missing
@@ -1,6 +1,6 @@
#! /bin/sh
-# $PostgreSQL: pgsql/config/missing,v 1.4 2006/03/11 04:38:28 momjian Exp $
+# $PostgreSQL: pgsql/config/missing,v 1.5 2009/06/23 03:46:00 tgl Exp $
# This is *not* the GNU `missing' script, although it is similar in
# concept. You can call it from the makefiles to get consistent
@@ -17,7 +17,7 @@ case $1 in
WARNING: \`$1' is missing on your system. You should only need it
if you changed the file \`$input'; these changes will not take effect.
You can get $1 from a GNU mirror site.
-***"
+***" >&2
echo "touch $output"
touch "$output"
exit 0
@@ -28,8 +28,27 @@ ERROR: \`$1' is missing on your system. It is needed to create the
file \`$output'. You can either get $1 from a GNU mirror site
or download an official distribution of PostgreSQL, which contains
pre-packaged $1 output.
-***"
+***" >&2
exit 1
fi
;;
+
+ perl)
+ # `missing perl'
+ echo "\
+***
+ERROR: Perl is missing on your system. It is needed unless you are building
+from an unmodified official distribution of PostgreSQL.
+***" >&2
+ exit 1
+ ;;
+
+ *)
+ # `missing something-or-other'
+ echo "\
+***
+ERROR: \`$1' is missing on your system.
+***" >&2
+ exit 1
+ ;;
esac