Re: [RFC] GDB ARIndex Linux rule cleanup

Eli Zaretskii
2009-04-15T16:04:00Z

> Date: Wed, 15 Apr 2009 17:23:18 +0200 (CEST)
> From: "Ulrich Weigand" <uweigand@de.ibm.com>
> Cc: muller@ics.u-strasbg.fr, brobecker@adacore.com, gdb-patches@sourceware.org,
> gdb@sourceware.org
>
> Eli Zaretskii wrote:
>
> > I think GDB's "target" is always the OS kernel, not the OS itself.
> >
> > The distinction FSF asks for is between the GNU/Linux as a whole
> > system, which includes all the main applications and libraries, and
> > Linux as the bare-bones OS. GDB targets the latter, not the former.
>
> Huh? I'd say a large part of what makes up a GDB target is unrelated
> to the OS kernel:
> - Processor properties (register names/types/groups)

That's hardware, and as such, unrelated to our discussion.

> - ABI elements (data types, function calling convention, stack unwinding,
> C++ ABI, platform-specific debug format details, ...)

Which has nothing to do with GNU.

> - Shared library support, thread support (those may depend on kernel
> details, but may also -in particular on Linux- depend on strictly
> user-space library-implemented details ...)

That's not part of the ``target'', in the sense that we were talking
about.

> If you were to write a program using a completely different user-space
> ABI, it might run just fine on the Linux kernel, but GDB configured
> for a -linux target would not really be able to successfully debug the
> program.

We are talking about a specific file, not about the whole of GDB built
for native debugging.

> > > Compare for example the usage in linux-nat.c:
> > >
> > > /* Create a prototype generic GNU/Linux target.
> >
> > That's a mistake, IMO. There's no need for GNU here.
>
> This is common usage throughout the Linux target and native files.
> Even looking just at the very first lines of those files:

Because people who don't understand the essence of the distinction
between the Linux kernel and GNU/Linux as a system get scared and put
the "GNU" part everywhere, lest they err on the wrong side.