Re: Per-type architecture (Re: [10/15] Basic value access routines)

Ulrich Weigand
2009-06-23T16:57:20Z

Doug Evans wrote:
> On Mon, Jun 22, 2009 at 5:41 PM, Ulrich Weigand<uweigand@de.ibm.com> wrote:
> > In fact, if it weren't that
> > we want to avoid excessive dependencies on XML libraries, I'd argue we should
> > just parse XML into a standard DOM tree representation as provided by those.
> >
> > Looking at this this way, serialization/deserialization of XML into and out
> > of those "DOM tree" structures *should not* involve too much GDB specifics
> > like GDB private data structures, but simply follow the self-describing
> > property of the XML format ...
>
> OOC, what "excessive dependencies" are you referring to?
> It seems odd to want to avoid dependencies on libraries, libraries are good.
> [I'm sure there's more to the story here, hence the question. :-)]

Well, the concern was in fact really about adding a dependency on an external
library, if I recall correctly. GDB always used to be pretty self-contained,
you don't need to install any external libraries in order to build or use it.
While libraries are good from a developer's point of view, dependencies add
hassles for users ...

Daniel initially suggested to add the expat sources to the src tree in order
to keep that property, see the original discussion here:
http://sourceware.org/ml/gdb-patches/2006-07/msg00231.html

This approach was then discarded in favor of using an external expat library
installed by the user, but only for "non-essential" purposes: if that library
does not exist, it must still be possible to build and use GDB even if some
non-essential GDB features then no longer work:
http://sourceware.org/ml/gdb-patches/2006-08/msg00048.html

That's what I meant by "excessive dependency": if we were to add library
calls to core GDB components with no fallback option, this would *require*
presence of the library, or else GDB will not build at all any more. Up
to now we've always said we don't want to do that.

Bye,
Ulrich

--
Dr. Ulrich Weigand
GNU Toolchain for Linux on System z and Cell BE
Ulrich.Weigand@de.ibm.com