Skip to content

Commit 8014d2a

Browse files
committed
Skip test for IPC::Run if user is overriding our search for PROVE.
The check for IPC::Run we added in commit c254970 is useful in simple cases, but there are real use-cases where "prove" is coming from a different Perl installation than the "perl" we want to use to build. In such cases asking whether "perl" knows about IPC::Run is irrelevant and can cause an unnecessary configure failure. Hence, if user has specified a value for PROVE, skip the IPC::Run check. Per discussion with Andrew Dunstan. Discussion: https://postgr.es/m/E1dcE5n-0005Sk-UE@gemulon.postgresql.org
1 parent cdc47d1 commit 8014d2a

File tree

2 files changed

+72
-66
lines changed

2 files changed

+72
-66
lines changed

configure

Lines changed: 63 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -16457,67 +16457,11 @@ fi
1645716457
# Check for test tools
1645816458
#
1645916459
if test "$enable_tap_tests" = yes; then
16460+
# Check for necessary modules, unless user has specified the "prove" to use;
16461+
# in that case it's her responsibility to have a working configuration.
16462+
# (prove might be part of a different Perl installation than perl, eg on
16463+
# MSys, so the result of AX_PROG_PERL_MODULES could be irrelevant anyway.)
1646016464
if test -z "$PROVE"; then
16461-
for ac_prog in prove
16462-
do
16463-
# Extract the first word of "$ac_prog", so it can be a program name with args.
16464-
set dummy $ac_prog; ac_word=$2
16465-
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
16466-
$as_echo_n "checking for $ac_word... " >&6; }
16467-
if ${ac_cv_path_PROVE+:} false; then :
16468-
$as_echo_n "(cached) " >&6
16469-
else
16470-
case $PROVE in
16471-
[\\/]* | ?:[\\/]*)
16472-
ac_cv_path_PROVE="$PROVE" # Let the user override the test with a path.
16473-
;;
16474-
*)
16475-
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
16476-
for as_dir in $PATH
16477-
do
16478-
IFS=$as_save_IFS
16479-
test -z "$as_dir" && as_dir=.
16480-
for ac_exec_ext in '' $ac_executable_extensions; do
16481-
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
16482-
ac_cv_path_PROVE="$as_dir/$ac_word$ac_exec_ext"
16483-
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
16484-
break 2
16485-
fi
16486-
done
16487-
done
16488-
IFS=$as_save_IFS
16489-
16490-
;;
16491-
esac
16492-
fi
16493-
PROVE=$ac_cv_path_PROVE
16494-
if test -n "$PROVE"; then
16495-
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $PROVE" >&5
16496-
$as_echo "$PROVE" >&6; }
16497-
else
16498-
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
16499-
$as_echo "no" >&6; }
16500-
fi
16501-
16502-
16503-
test -n "$PROVE" && break
16504-
done
16505-
16506-
else
16507-
# Report the value of PROVE in configure's output in all cases.
16508-
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for PROVE" >&5
16509-
$as_echo_n "checking for PROVE... " >&6; }
16510-
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $PROVE" >&5
16511-
$as_echo "$PROVE" >&6; }
16512-
fi
16513-
16514-
if test -z "$PROVE"; then
16515-
as_fn_error $? "prove not found" "$LINENO" 5
16516-
fi
16517-
if test -z "$PERL"; then
16518-
as_fn_error $? "Perl not found" "$LINENO" 5
16519-
fi
16520-
# Check for necessary modules
1652116465

1652216466

1652316467

@@ -16595,6 +16539,65 @@ else
1659516539
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: could not find perl" >&5
1659616540
$as_echo "$as_me: WARNING: could not find perl" >&2;}
1659716541
fi
16542+
fi
16543+
# Now make sure we know where prove is
16544+
if test -z "$PROVE"; then
16545+
for ac_prog in prove
16546+
do
16547+
# Extract the first word of "$ac_prog", so it can be a program name with args.
16548+
set dummy $ac_prog; ac_word=$2
16549+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
16550+
$as_echo_n "checking for $ac_word... " >&6; }
16551+
if ${ac_cv_path_PROVE+:} false; then :
16552+
$as_echo_n "(cached) " >&6
16553+
else
16554+
case $PROVE in
16555+
[\\/]* | ?:[\\/]*)
16556+
ac_cv_path_PROVE="$PROVE" # Let the user override the test with a path.
16557+
;;
16558+
*)
16559+
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
16560+
for as_dir in $PATH
16561+
do
16562+
IFS=$as_save_IFS
16563+
test -z "$as_dir" && as_dir=.
16564+
for ac_exec_ext in '' $ac_executable_extensions; do
16565+
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
16566+
ac_cv_path_PROVE="$as_dir/$ac_word$ac_exec_ext"
16567+
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
16568+
break 2
16569+
fi
16570+
done
16571+
done
16572+
IFS=$as_save_IFS
16573+
16574+
;;
16575+
esac
16576+
fi
16577+
PROVE=$ac_cv_path_PROVE
16578+
if test -n "$PROVE"; then
16579+
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $PROVE" >&5
16580+
$as_echo "$PROVE" >&6; }
16581+
else
16582+
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
16583+
$as_echo "no" >&6; }
16584+
fi
16585+
16586+
16587+
test -n "$PROVE" && break
16588+
done
16589+
16590+
else
16591+
# Report the value of PROVE in configure's output in all cases.
16592+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for PROVE" >&5
16593+
$as_echo_n "checking for PROVE... " >&6; }
16594+
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $PROVE" >&5
16595+
$as_echo "$PROVE" >&6; }
16596+
fi
16597+
16598+
if test -z "$PROVE"; then
16599+
as_fn_error $? "prove not found" "$LINENO" 5
16600+
fi
1659816601
fi
1659916602

1660016603
# Thread testing

configure.in

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2134,16 +2134,19 @@ PGAC_PATH_PROGS(FOP, fop)
21342134
# Check for test tools
21352135
#
21362136
if test "$enable_tap_tests" = yes; then
2137+
# Check for necessary modules, unless user has specified the "prove" to use;
2138+
# in that case it's her responsibility to have a working configuration.
2139+
# (prove might be part of a different Perl installation than perl, eg on
2140+
# MSys, so the result of AX_PROG_PERL_MODULES could be irrelevant anyway.)
2141+
if test -z "$PROVE"; then
2142+
AX_PROG_PERL_MODULES(IPC::Run, ,
2143+
AC_MSG_ERROR([Perl module IPC::Run is required to run TAP tests]))
2144+
fi
2145+
# Now make sure we know where prove is
21372146
PGAC_PATH_PROGS(PROVE, prove)
21382147
if test -z "$PROVE"; then
21392148
AC_MSG_ERROR([prove not found])
21402149
fi
2141-
if test -z "$PERL"; then
2142-
AC_MSG_ERROR([Perl not found])
2143-
fi
2144-
# Check for necessary modules
2145-
AX_PROG_PERL_MODULES(IPC::Run, ,
2146-
AC_MSG_ERROR([Perl module IPC::Run is required to run TAP tests]))
21472150
fi
21482151

21492152
# Thread testing

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy