Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* [PATCH] Use sed -E to escape variables in auto-load directories.
@ 2018-11-30 22:56 John Baldwin
  2018-11-30 23:05 ` Andreas Schwab
  0 siblings, 1 reply; 3+ messages in thread
From: John Baldwin @ 2018-11-30 22:56 UTC (permalink / raw)
  To: gdb-patches

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  <jhb@FreeBSD.org>
+
+	* configure: Re-generate.
+	* configure.ac: Use sed -E to escape variables in auto-load
+	directories.
+
 2018-11-30  John Baldwin  <jhb@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


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] Use sed -E to escape variables in auto-load directories.
  2018-11-30 22:56 [PATCH] Use sed -E to escape variables in auto-load directories John Baldwin
@ 2018-11-30 23:05 ` Andreas Schwab
  2018-11-30 23:20   ` John Baldwin
  0 siblings, 1 reply; 3+ messages in thread
From: Andreas Schwab @ 2018-11-30 23:05 UTC (permalink / raw)
  To: John Baldwin; +Cc: gdb-patches

On Nov 30 2018, John Baldwin <jhb@FreeBSD.org> wrote:

> Not all sed implementations support alternation via \| in the default
> regular expressions.  However, POSIX ERE available via -E do support
> these.

Not all sed implementations support -E.

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] Use sed -E to escape variables in auto-load directories.
  2018-11-30 23:05 ` Andreas Schwab
@ 2018-11-30 23:20   ` John Baldwin
  0 siblings, 0 replies; 3+ messages in thread
From: John Baldwin @ 2018-11-30 23:20 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: gdb-patches

On 11/30/18 3:05 PM, Andreas Schwab wrote:
> On Nov 30 2018, John Baldwin <jhb@FreeBSD.org> wrote:
> 
>> Not all sed implementations support alternation via \| in the default
>> regular expressions.  However, POSIX ERE available via -E do support
>> these.
> 
> Not all sed implementations support -E.

Hmm, the GNU sed manpage on a random Ubuntu box I have claims -E is part of
POSIX, but indeed I can't find it as part of POSIX.  I'll rework this to use
basic regular expressions instead.

-- 
John Baldwin

                                                                            


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-11-30 23:20 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-30 22:56 [PATCH] Use sed -E to escape variables in auto-load directories John Baldwin
2018-11-30 23:05 ` Andreas Schwab
2018-11-30 23:20   ` John Baldwin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox