help-debbugs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#14196: Problem with invoking "missing" in directory with "(" in name


From: Zack Weinberg
Subject: bug#14196: Problem with invoking "missing" in directory with "(" in name (Automake 1.11.6, Autoconf 2.68
Date: Fri, 4 Sep 2020 09:44:33 -0400

reassign -1 automake
tags -1 + patch
quit

OK, after a quick investigation, the failure happens at configure time
but the problem code belongs to automake.  Specifically,
AM_MISSING_HAS_RUN. I think the tidiest fix is to quote the value of
$am_aux_dir/missing unconditionally:

diff --git a/m4/missing.m4 b/m4/missing.m4
index 6f742fb20..56c84fbf5 100644
--- a/m4/missing.m4
+++ b/m4/missing.m4
@@ -21,12 +21,7 @@ AC_DEFUN([AM_MISSING_HAS_RUN],
 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
 AC_REQUIRE_AUX_FILE([missing])dnl
 if test x"${MISSING+set}" != xset; then
-  case $am_aux_dir in
-  *\ * | *\    *)
-    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
-  *)
-    MISSING="\${SHELL} $am_aux_dir/missing" ;;
-  esac
+  MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
 fi
 # Use eval to expand $SHELL
 if eval "$MISSING --is-lightweight"; then

This doesn't handle the possibility of $am_aux_dir containing
backslash or double quote characters, but that's ok because
AM_SANITY_CHECK will already have refused to run configure with either
the current working directory or the source directory named like that.
(An alternative patch would be to add ( ) to the set of characters
rejected by AM_SANITY_CHECK.)

If m4sugar included a version of AS_ESCAPE that worked at configure
time, instead of m4 expansion time, I'd suggest using that, but it
doesn't.

zw





reply via email to

[Prev in Thread] Current Thread [Next in Thread]