Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
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

+63-60
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

+9-6
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)