]> granicus.if.org Git - postgresql/commitdiff
Make configure check for a couple more Perl modules for --enable-tap-tests.
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 20 Mar 2018 19:16:16 +0000 (15:16 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 20 Mar 2018 19:16:16 +0000 (15:16 -0400)
Red Hat's notion of a basic Perl installation doesn't include Test::More
or Time::HiRes, and reportedly some Debian installs also omit Time::HiRes.
Check for those during configure to spare the user the pain of digging
through check-world output to find out what went wrong.  While we're at it,
we should also check the version of Test::More, since TestLib.pm requires
at least 0.87.

In principle this could be back-patched, but it's probably not necessary.

Discussion: https://postgr.es/m/516.1521475003@sss.pgh.pa.us

configure
configure.in

index 3943711283a1aea79697c1677f03b2b2c8bf6734..1be8a1ab3179c1cafe0e555d8dd1b4090016ca20 100755 (executable)
--- a/configure
+++ b/configure
@@ -16517,6 +16517,12 @@ if test "$enable_tap_tests" = yes; then
   # (prove might be part of a different Perl installation than perl, eg on
   # MSys, so the result of AX_PROG_PERL_MODULES could be irrelevant anyway.)
   if test -z "$PROVE"; then
+    # Test::More and Time::HiRes are supposed to be part of core Perl,
+    # but some distros omit them in a minimal installation.
+
+
+
+
 
 
 
@@ -16566,7 +16572,7 @@ fi
 
 if test "x$PERL" != x; then
   ax_perl_modules_failed=0
-  for ax_perl_module in 'IPC::Run' ; do
+  for ax_perl_module in 'IPC::Run' 'Test::More 0.87' 'Time::HiRes' ; do
     { $as_echo "$as_me:${as_lineno-$LINENO}: checking for perl module $ax_perl_module" >&5
 $as_echo_n "checking for perl module $ax_perl_module... " >&6; }
 
@@ -16588,7 +16594,7 @@ $as_echo "ok" >&6; };
 
   else
     :
-    as_fn_error $? "Perl module IPC::Run is required to run TAP tests" "$LINENO" 5
+    as_fn_error $? "Additional Perl modules are required to run TAP tests" "$LINENO" 5
   fi
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: could not find perl" >&5
index 1babdbb755a1b540067e3051f5c4568a864e8ba9..9a6f4b193c43d883b71a303a50c80cb61d7c8bd8 100644 (file)
@@ -2114,8 +2114,10 @@ if test "$enable_tap_tests" = yes; then
   # (prove might be part of a different Perl installation than perl, eg on
   # MSys, so the result of AX_PROG_PERL_MODULES could be irrelevant anyway.)
   if test -z "$PROVE"; then
-    AX_PROG_PERL_MODULES(IPC::Run, ,
-      AC_MSG_ERROR([Perl module IPC::Run is required to run TAP tests]))
+    # Test::More and Time::HiRes are supposed to be part of core Perl,
+    # but some distros omit them in a minimal installation.
+    AX_PROG_PERL_MODULES([IPC::Run Test::More=0.87 Time::HiRes], ,
+      [AC_MSG_ERROR([Additional Perl modules are required to run TAP tests])])
   fi
   # Now make sure we know where prove is
   PGAC_PATH_PROGS(PROVE, prove)