diff options
author | Jakub Jelinek <jakub@redhat.com> | 2024-01-10 13:29:47 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2024-06-11 12:35:29 +0200 |
commit | 3f0d1e53892348d4df79d822a9910583378674d7 (patch) | |
tree | 031293a6063efef175dd394e0064d12b1d75a50b | |
parent | ca8ad807cf33ca9d74a2aecdd78b59af9834b882 (diff) | |
download | gcc-3f0d1e53892348d4df79d822a9910583378674d7.zip gcc-3f0d1e53892348d4df79d822a9910583378674d7.tar.gz gcc-3f0d1e53892348d4df79d822a9910583378674d7.tar.bz2 |
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.
(cherry picked from commit 2fb3ee3ee82874e160309344bc3e52afeed8f26a)
-rwxr-xr-x | libgomp/configure | 9 | ||||
-rw-r--r-- | libgomp/configure.ac | 11 |
2 files changed, 18 insertions, 2 deletions
diff --git a/libgomp/configure b/libgomp/configure index be2c5a6..67f6b14 100755 --- a/libgomp/configure +++ b/libgomp/configure @@ -16710,6 +16710,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 @@ -16727,7 +16734,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="$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 diff --git a/libgomp/configure.ac b/libgomp/configure.ac index cc96e5b..dd88f20 100644 --- a/libgomp/configure.ac +++ b/libgomp/configure.ac @@ -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, $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 # Get target configury. |