This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH] gdb: sim: automatically pass down sysroot
- From: Joel Brobecker <brobecker at adacore dot com>
- To: Mike Frysinger <vapier at gentoo dot org>
- Cc: gdb-patches at sourceware dot org, toolchain-devel at blackfin dot uclinux dot org
- Date: Wed, 8 Jun 2011 09:49:39 -0700
- Subject: Re: [PATCH] gdb: sim: automatically pass down sysroot
- References: <1306440200-25087-1-git-send-email-vapier@gentoo.org>
> 2011-05-26 Mike Frysinger <vapier@gentoo.org>
>
> * remote-sim.c (gdbsim_open): Add the strlen of " --sysroot=" and
> gdb_sysroot to the "len" variable. Append both to "arg_buf".
It turns out that this is breaking some simulators, at least the ppc sim:
% powerpc-elf-gdb
(gdb) target sim
Unrecognized option
The problem is that some sims have their own argument parsing,
and they sometimes reject the --sysroot= option. Here is the patch
I just checked in to fix the ppc, but I think that other simulators
might have the same problem. I checked a few, and I think that
the d10v sim, for instance, will also need to be updated).
So, we have a decision to make: Either do a pass over all simulators,
and fix the ones that need fixing, or revert (in which case my ppc
patch also needs to be reverted).
--
Joel
commit df31576192c6a95c3a56583d7de54a452dd52110
Author: Joel Brobecker <brobecker@adacore.com>
Date: Wed Jun 8 09:17:09 2011 -0700
ppc sim: Allow --sysroot command-line option
There was a recent change that cuased the "target sim" command
to add a --sysroot option to the argument vector passed down to
the simulator. This caused a failure in the powerpc simulator,
as it did not recognize it. This patch fixes the problem by adding
support for the --sysroot option (it ignores it).
sim/ppc/ChangeLog:
* psim.c (psim_options): Accept and ignore `--sysroot=...'.
diff --git a/sim/ppc/ChangeLog b/sim/ppc/ChangeLog
index 2b9017a..2536fa4 100644
--- a/sim/ppc/ChangeLog
+++ b/sim/ppc/ChangeLog
@@ -1,3 +1,7 @@
+2011-06-08 Joel Brobecker <brobecker@adacore.com>
+
+ * psim.c (psim_options): Accept and ignore `--sysroot=...'.
+
2011-06-03 Joel Brobecker <brobecker@adacore.com> (obvious fix)
From Stephen Kitt <steve@sk2.org>
diff --git a/sim/ppc/psim.c b/sim/ppc/psim.c
index c311794..076a50c 100644
--- a/sim/ppc/psim.c
+++ b/sim/ppc/psim.c
@@ -357,6 +357,10 @@ psim_options(device *root,
}
else if (strcmp (argv[argp], "--help") == 0)
psim_usage (0, 1);
+ else if (strncmp (argv[argp], "--sysroot=",
+ sizeof ("--sysroot=")) == 0)
+ /* Ignore this option. */
+ p = argv[argp] + strlen(argv[argp]) - 1;
else if (strcmp (argv[argp], "--version") == 0)
{
extern const char version[];