aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tromey@adacore.com>2019-10-01 06:52:44 -0600
committerTom Tromey <tromey@adacore.com>2019-10-02 13:43:41 -0600
commit80fd2826411c1033ec403658c5f3187bf9c1740a (patch)
tree7f5b7411ebaee9dbd719e0f6e0f2c0667c8f1dd6
parent700545387df82388b054947dc74cc0bb5cbd2a60 (diff)
downloadgdb-80fd2826411c1033ec403658c5f3187bf9c1740a.zip
gdb-80fd2826411c1033ec403658c5f3187bf9c1740a.tar.gz
gdb-80fd2826411c1033ec403658c5f3187bf9c1740a.tar.bz2
Fix type of startup_with_shell in gdbserver
startup_with_shell was changed to be of "bool" type, but I noticed that the definition in gdbserver disagreed. This disagreement caused some regressions on a big-endian machine. This patch removes the redundant declaration and definition of startup_with_shell and ensures that such clashes will be diagnosed. This moves the declaration to common-inferior.h, and introduces a new common-inferior.c, as suggested by Pedro. gdb/ChangeLog 2019-10-02 Tom Tromey <tromey@adacore.com> * Makefile.in (COMMON_SFILES): Add common-inferior.c. * gdbsupport/common-inferior.c: New file. * infcmd.c (startup_with_shell): Don't define. * nat/fork-inferior.h (startup_with_shell): Don't declare. * gdbsupport/common-inferior.h (startup_with_shell): Declare. * inferior.h (startup_with_shell): Don't declare. gdb/gdbserver/ChangeLog 2019-10-02 Tom Tromey <tromey@adacore.com> * Makefile.in (SFILES): Add common-inferior.c. (OBS): Add common-inferior.o. * server.c (startup_with_shell): Don't define.
-rw-r--r--gdb/ChangeLog9
-rw-r--r--gdb/Makefile.in1
-rw-r--r--gdb/gdbserver/ChangeLog6
-rw-r--r--gdb/gdbserver/Makefile.in2
-rw-r--r--gdb/gdbserver/server.c6
-rw-r--r--gdb/gdbsupport/common-inferior.c26
-rw-r--r--gdb/gdbsupport/common-inferior.h20
-rw-r--r--gdb/infcmd.c4
-rw-r--r--gdb/inferior.h19
-rw-r--r--gdb/nat/fork-inferior.h20
10 files changed, 64 insertions, 49 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 03c2498..13a1e46 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,12 @@
+2019-10-02 Tom Tromey <tromey@adacore.com>
+
+ * Makefile.in (COMMON_SFILES): Add common-inferior.c.
+ * gdbsupport/common-inferior.c: New file.
+ * infcmd.c (startup_with_shell): Don't define.
+ * nat/fork-inferior.h (startup_with_shell): Don't declare.
+ * gdbsupport/common-inferior.h (startup_with_shell): Declare.
+ * inferior.h (startup_with_shell): Don't declare.
+
2019-10-02 Christian Biesinger <cbiesinger@google.com>
* gdbsupport/gdb_assert.h: Include errors.h.
diff --git a/gdb/Makefile.in b/gdb/Makefile.in
index d628263..81bed90 100644
--- a/gdb/Makefile.in
+++ b/gdb/Makefile.in
@@ -953,6 +953,7 @@ COMMON_SFILES = \
gdbsupport/cleanups.c \
gdbsupport/common-debug.c \
gdbsupport/common-exceptions.c \
+ gdbsupport/common-inferior.c \
gdbsupport/common-regcache.c \
gdbsupport/common-utils.c \
gdbsupport/errors.c \
diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog
index 7eef2c5..0108d6d 100644
--- a/gdb/gdbserver/ChangeLog
+++ b/gdb/gdbserver/ChangeLog
@@ -1,3 +1,9 @@
+2019-10-02 Tom Tromey <tromey@adacore.com>
+
+ * Makefile.in (SFILES): Add common-inferior.c.
+ (OBS): Add common-inferior.o.
+ * server.c (startup_with_shell): Don't define.
+
2019-10-02 Andrew Burgess <andrew.burgess@embecosm.com>
* linux-low.c (linux_low_read_btrace): Update for change to
diff --git a/gdb/gdbserver/Makefile.in b/gdb/gdbserver/Makefile.in
index ca0a4cb..d79424b 100644
--- a/gdb/gdbserver/Makefile.in
+++ b/gdb/gdbserver/Makefile.in
@@ -203,6 +203,7 @@ SFILES = \
$(srcdir)/gdbsupport/cleanups.c \
$(srcdir)/gdbsupport/common-debug.c \
$(srcdir)/gdbsupport/common-exceptions.c \
+ $(srcdir)/gdbsupport/common-inferior.c \
$(srcdir)/gdbsupport/common-regcache.c \
$(srcdir)/gdbsupport/common-utils.c \
$(srcdir)/gdbsupport/errors.c \
@@ -248,6 +249,7 @@ OBS = \
gdbsupport/cleanups.o \
gdbsupport/common-debug.o \
gdbsupport/common-exceptions.o \
+ gdbsupport/common-inferior.o \
gdbsupport/job-control.o \
gdbsupport/common-regcache.o \
gdbsupport/common-utils.o \
diff --git a/gdb/gdbserver/server.c b/gdb/gdbserver/server.c
index 67e8e3e..8ee5518 100644
--- a/gdb/gdbserver/server.c
+++ b/gdb/gdbserver/server.c
@@ -67,12 +67,6 @@ char *current_directory;
static gdb_environ our_environ;
-/* Start the inferior using a shell. */
-
-/* We always try to start the inferior using a shell. */
-
-int startup_with_shell = 1;
-
int server_waiting;
static int extended_protocol;
diff --git a/gdb/gdbsupport/common-inferior.c b/gdb/gdbsupport/common-inferior.c
new file mode 100644
index 0000000..3a7c873
--- /dev/null
+++ b/gdb/gdbsupport/common-inferior.c
@@ -0,0 +1,26 @@
+/* Functions to deal with the inferior being executed on GDB or
+ GDBserver.
+
+ Copyright (C) 2019 Free Software Foundation, Inc.
+
+ This file is part of GDB.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+#include "gdbsupport/common-defs.h"
+#include "gdbsupport/common-inferior.h"
+
+/* See common-inferior.h. */
+
+bool startup_with_shell = true;
diff --git a/gdb/gdbsupport/common-inferior.h b/gdb/gdbsupport/common-inferior.h
index 72e4bd9..77d4ad9 100644
--- a/gdb/gdbsupport/common-inferior.h
+++ b/gdb/gdbsupport/common-inferior.h
@@ -38,4 +38,24 @@ extern const char *get_inferior_cwd ();
the directory. */
extern void set_inferior_cwd (const char *cwd);
+/* Whether to start up the debuggee under a shell.
+
+ If startup-with-shell is set, GDB's "run" will attempt to start up
+ the debuggee under a shell. This also happens when using GDBserver
+ under extended remote mode.
+
+ This is in order for argument-expansion to occur. E.g.,
+
+ (gdb) run *
+
+ The "*" gets expanded by the shell into a list of files.
+
+ While this is a nice feature, it may be handy to bypass the shell
+ in some cases. To disable this feature, do "set startup-with-shell
+ false".
+
+ The catch-exec traps expected during start-up will be one more if
+ the target is started up with a shell. */
+extern bool startup_with_shell;
+
#endif /* COMMON_COMMON_INFERIOR_H */
diff --git a/gdb/infcmd.c b/gdb/infcmd.c
index 20523fe..7105774 100644
--- a/gdb/infcmd.c
+++ b/gdb/infcmd.c
@@ -104,10 +104,6 @@ enum stop_stack_kind stop_stack_dummy;
int stopped_by_random_signal;
-/* See inferior.h. */
-
-bool startup_with_shell = true;
-
/* Accessor routines. */
diff --git a/gdb/inferior.h b/gdb/inferior.h
index 3a64a7c..43f0417 100644
--- a/gdb/inferior.h
+++ b/gdb/inferior.h
@@ -227,25 +227,6 @@ extern struct value *get_return_value (struct value *function,
extern void prepare_execution_command (struct target_ops *target,
int background);
-/* Whether to start up the debuggee under a shell.
-
- If startup-with-shell is set, GDB's "run" will attempt to start up
- the debuggee under a shell.
-
- This is in order for argument-expansion to occur. E.g.,
-
- (gdb) run *
-
- The "*" gets expanded by the shell into a list of files.
-
- While this is a nice feature, it may be handy to bypass the shell
- in some cases. To disable this feature, do "set startup-with-shell
- false".
-
- The catch-exec traps expected during start-up will be one more if
- the target is started up with a shell. */
-extern bool startup_with_shell;
-
/* Nonzero if stopped due to completion of a stack dummy routine. */
extern enum stop_stack_kind stop_stack_dummy;
diff --git a/gdb/nat/fork-inferior.h b/gdb/nat/fork-inferior.h
index 065496c..0a76ff8 100644
--- a/gdb/nat/fork-inferior.h
+++ b/gdb/nat/fork-inferior.h
@@ -54,26 +54,6 @@ extern ptid_t startup_inferior (pid_t pid, int ntraps,
struct target_waitstatus *mystatus,
ptid_t *myptid);
-/* Whether to start up the debuggee under a shell.
-
- If startup-with-shell is set, GDB's "run" will attempt to start up
- the debuggee under a shell. This also happens when using GDBserver
- under extended remote mode.
-
- This is in order for argument-expansion to occur. E.g.,
-
- (gdb) run *
-
- The "*" gets expanded by the shell into a list of files.
-
- While this is a nice feature, it may be handy to bypass the shell
- in some cases. To disable this feature, do "set startup-with-shell
- false".
-
- The catch-exec traps expected during start-up will be one more if
- the target is started up with a shell. */
-extern bool startup_with_shell;
-
/* Perform any necessary tasks before a fork/vfork takes place. ARGS
is a string containing all the arguments received by the inferior.
This function is mainly used by fork_inferior. */