John Baldwin
2018-11-30 22:54:24 UTC
Not all sed implementations support alternation via \| in the default
regular expressions. However, POSIX ERE available via -E do support
these. Switch to using POSIX ERE via -E when generating the escaped
versions of the auto-load directories. This fixes the default setting
of the auto-load directories on FreeBSD. Previously on FreeBSD the
sed invocation was a no-op causing the debugdir and datadir values to
be expanded yielding an autoload path of ':${prefix}/share/gdb'.
gdb/ChangeLog:
* configure: Re-generate.
* configure.ac: Use sed -E to escape variables in auto-load
directories.
---
gdb/ChangeLog | 6 ++++++
gdb/configure | 4 ++--
gdb/configure.ac | 4 ++--
3 files changed, 10 insertions(+), 4 deletions(-)
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 348eb65ec7..f7b45793b3 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,9 @@
+2018-11-30 John Baldwin <***@FreeBSD.org>
+
+ * configure: Re-generate.
+ * configure.ac: Use sed -E to escape variables in auto-load
+ directories.
+
2018-11-30 John Baldwin <***@FreeBSD.org>
* fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
diff --git a/gdb/configure b/gdb/configure
index 7665ba6531..9e925cd27d 100755
--- a/gdb/configure
+++ b/gdb/configure
@@ -6579,7 +6579,7 @@ else
with_auto_load_dir='$debugdir:$datadir/auto-load'
fi
-escape_dir=`echo $with_auto_load_dir | sed 's/[$]\(datadir\|debugdir\)\>/\\\\\\\\\\\\&/g'`
+escape_dir=`echo $with_auto_load_dir | sed -E 's/[$](datadir|debugdir)\>/\\\\\\\\\\\\&/g'`
test "x$prefix" = xNONE && prefix="$ac_default_prefix"
test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
@@ -6606,7 +6606,7 @@ else
with_auto_load_safe_path="$with_auto_load_dir"
fi
-escape_dir=`echo $with_auto_load_safe_path | sed 's/[$]\(datadir\|debugdir\)\>/\\\\\\\\\\\\&/g'`
+escape_dir=`echo $with_auto_load_safe_path | sed -E 's/[$](datadir|debugdir)\>/\\\\\\\\\\\\&/g'`
test "x$prefix" = xNONE && prefix="$ac_default_prefix"
test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
diff --git a/gdb/configure.ac b/gdb/configure.ac
index e1ea60660b..4e18f94fed 100644
--- a/gdb/configure.ac
+++ b/gdb/configure.ac
@@ -146,7 +146,7 @@ AC_ARG_WITH(auto-load-dir,
AS_HELP_STRING([--with-auto-load-dir=PATH],
[directories from which to load auto-loaded scripts @<:@$debugdir:$datadir/auto-load@:>@]),,
[with_auto_load_dir='$debugdir:$datadir/auto-load'])
-escape_dir=`echo $with_auto_load_dir | sed 's/[[$]]\(datadir\|debugdir\)\>/\\\\\\\\\\\\&/g'`
+escape_dir=`echo $with_auto_load_dir | sed -E 's/[[$]](datadir|debugdir)\>/\\\\\\\\\\\\&/g'`
AC_DEFINE_DIR(AUTO_LOAD_DIR, escape_dir,
[Directories from which to load auto-loaded scripts.])
AC_MSG_RESULT([$with_auto_load_dir])
@@ -161,7 +161,7 @@ AS_HELP_STRING([--without-auto-load-safe-path],
with_auto_load_safe_path="/"
fi],
[with_auto_load_safe_path="$with_auto_load_dir"])
-escape_dir=`echo $with_auto_load_safe_path | sed 's/[[$]]\(datadir\|debugdir\)\>/\\\\\\\\\\\\&/g'`
+escape_dir=`echo $with_auto_load_safe_path | sed -E 's/[[$]](datadir|debugdir)\>/\\\\\\\\\\\\&/g'`
AC_DEFINE_DIR(AUTO_LOAD_SAFE_PATH, escape_dir,
[Directories safe to hold auto-loaded files.])
AC_MSG_RESULT([$with_auto_load_safe_path])
regular expressions. However, POSIX ERE available via -E do support
these. Switch to using POSIX ERE via -E when generating the escaped
versions of the auto-load directories. This fixes the default setting
of the auto-load directories on FreeBSD. Previously on FreeBSD the
sed invocation was a no-op causing the debugdir and datadir values to
be expanded yielding an autoload path of ':${prefix}/share/gdb'.
gdb/ChangeLog:
* configure: Re-generate.
* configure.ac: Use sed -E to escape variables in auto-load
directories.
---
gdb/ChangeLog | 6 ++++++
gdb/configure | 4 ++--
gdb/configure.ac | 4 ++--
3 files changed, 10 insertions(+), 4 deletions(-)
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 348eb65ec7..f7b45793b3 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,9 @@
+2018-11-30 John Baldwin <***@FreeBSD.org>
+
+ * configure: Re-generate.
+ * configure.ac: Use sed -E to escape variables in auto-load
+ directories.
+
2018-11-30 John Baldwin <***@FreeBSD.org>
* fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
diff --git a/gdb/configure b/gdb/configure
index 7665ba6531..9e925cd27d 100755
--- a/gdb/configure
+++ b/gdb/configure
@@ -6579,7 +6579,7 @@ else
with_auto_load_dir='$debugdir:$datadir/auto-load'
fi
-escape_dir=`echo $with_auto_load_dir | sed 's/[$]\(datadir\|debugdir\)\>/\\\\\\\\\\\\&/g'`
+escape_dir=`echo $with_auto_load_dir | sed -E 's/[$](datadir|debugdir)\>/\\\\\\\\\\\\&/g'`
test "x$prefix" = xNONE && prefix="$ac_default_prefix"
test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
@@ -6606,7 +6606,7 @@ else
with_auto_load_safe_path="$with_auto_load_dir"
fi
-escape_dir=`echo $with_auto_load_safe_path | sed 's/[$]\(datadir\|debugdir\)\>/\\\\\\\\\\\\&/g'`
+escape_dir=`echo $with_auto_load_safe_path | sed -E 's/[$](datadir|debugdir)\>/\\\\\\\\\\\\&/g'`
test "x$prefix" = xNONE && prefix="$ac_default_prefix"
test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
diff --git a/gdb/configure.ac b/gdb/configure.ac
index e1ea60660b..4e18f94fed 100644
--- a/gdb/configure.ac
+++ b/gdb/configure.ac
@@ -146,7 +146,7 @@ AC_ARG_WITH(auto-load-dir,
AS_HELP_STRING([--with-auto-load-dir=PATH],
[directories from which to load auto-loaded scripts @<:@$debugdir:$datadir/auto-load@:>@]),,
[with_auto_load_dir='$debugdir:$datadir/auto-load'])
-escape_dir=`echo $with_auto_load_dir | sed 's/[[$]]\(datadir\|debugdir\)\>/\\\\\\\\\\\\&/g'`
+escape_dir=`echo $with_auto_load_dir | sed -E 's/[[$]](datadir|debugdir)\>/\\\\\\\\\\\\&/g'`
AC_DEFINE_DIR(AUTO_LOAD_DIR, escape_dir,
[Directories from which to load auto-loaded scripts.])
AC_MSG_RESULT([$with_auto_load_dir])
@@ -161,7 +161,7 @@ AS_HELP_STRING([--without-auto-load-safe-path],
with_auto_load_safe_path="/"
fi],
[with_auto_load_safe_path="$with_auto_load_dir"])
-escape_dir=`echo $with_auto_load_safe_path | sed 's/[[$]]\(datadir\|debugdir\)\>/\\\\\\\\\\\\&/g'`
+escape_dir=`echo $with_auto_load_safe_path | sed -E 's/[[$]](datadir|debugdir)\>/\\\\\\\\\\\\&/g'`
AC_DEFINE_DIR(AUTO_LOAD_SAFE_PATH, escape_dir,
[Directories safe to hold auto-loaded files.])
AC_MSG_RESULT([$with_auto_load_safe_path])
--
2.19.2
2.19.2