libgomp: Fix up FLOCK fallback handling [PR113192]

My earlier change broke Solaris testing, because @FLOCK@ isn't substituted
just into libgomp/Makefile where it worked, but also the
testsuite/libgomp-site-extra.exp file where Make variables aren't present
and can't be substituted.

The following patch instead computes the absolute srcdir path and uses it
for FLOCK.

2024-01-10  Jakub Jelinek  <jakub@redhat.com>

	PR libgomp/113192
	* configure.ac (FLOCK): Use $libgomp_abs_srcdir/testsuite/flock
	instead of \$(abs_top_srcdir)/testsuite/flock.
	* configure: Regenerated.
pull/99/head
Jakub Jelinek 2024-01-10 13:29:47 +01:00
parent 5d8b60effc
commit 2fb3ee3ee8
2 changed files with 18 additions and 2 deletions

9
libgomp/configure vendored
View File

@ -16638,6 +16638,13 @@ done
# Fallback if 'perl' is available.
if test -z "$FLOCK"; then
# These need to be absolute paths, yet at the same time need to
# canonicalize only relative paths, because then amd will not unmount
# drives. Thus the use of PWDCMD: set it to 'pawd' or 'amq -w' if using amd.
case $srcdir in
[\\/$]* | ?:[\\/]*) libgomp_abs_srcdir=${srcdir} ;;
*) libgomp_abs_srcdir=`cd "$srcdir" && ${PWDCMD-pwd} || echo "$srcdir"` ;;
esac
# Extract the first word of "perl", so it can be a program name with args.
set dummy perl; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
@ -16655,7 +16662,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_FLOCK="\$(abs_top_srcdir)/testsuite/flock"
ac_cv_prog_FLOCK="$libgomp_abs_srcdir/testsuite/flock"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi

View File

@ -343,7 +343,16 @@ AC_MSG_NOTICE([checking for flock implementation])
AC_CHECK_PROGS(FLOCK, flock)
# Fallback if 'perl' is available.
if test -z "$FLOCK"; then
AC_CHECK_PROG(FLOCK, perl, \$(abs_top_srcdir)/testsuite/flock)
# These need to be absolute paths, yet at the same time need to
# canonicalize only relative paths, because then amd will not unmount
# drives. Thus the use of PWDCMD: set it to 'pawd' or 'amq -w' if using amd.
case $srcdir in
changequote(,)dnl
[\\/$]* | ?:[\\/]*) libgomp_abs_srcdir=${srcdir} ;;
changequote([,])dnl
*) libgomp_abs_srcdir=`cd "$srcdir" && ${PWDCMD-pwd} || echo "$srcdir"` ;;
esac
AC_CHECK_PROG(FLOCK, perl, $libgomp_abs_srcdir/testsuite/flock)
fi
AC_SUBST(SYSROOT_CFLAGS_FOR_TARGET)