Re: [RFC] Add expat to the GDB sources

Eli Zaretskii
2006-07-24T20:29:02Z

> Date: Mon, 24 Jul 2006 15:51:18 -0400
> From: Daniel Jacobowitz <drow@false.org>
> Cc: cgf-gdb-patches@sourceware.org, gdb-patches@sourceware.org
>
> On Mon, Jul 24, 2006 at 10:47:54PM +0300, Eli Zaretskii wrote:
> > > Date: Mon, 24 Jul 2006 11:24:38 -0400
> > > From: Christopher Faylor <me@cgf.cx>
> > >
> > > I would really like to see a day when 'src' will no longer include
> > > 'tcl', or 'readline', or 'expat'.
> >
> > But the same could be said about libiberty, libbfd, and libopcodes.
> > Are you saying we should remove them, too, from the GDB distro? If
> > not, what is the difference between those and readline?
>
> In my opinion, the difference is that no independent releases are made
> of those projects.

They come with GCC and with Binutils.

Also, you seem to be saying that, once we remove readline, say, one
would have to use the last released version of readline for building
GDB, while the build out of CVS will still use the CVS version, is
that right? If so, it's a bad idea, IMHO.

> In an ideal world, maybe there would be independent
> releases, and we could use them. But BFD in particular doesn't have a
> stable API and (as recently discussed on the binutils list) doesn't
> have an interest in one.
>
> Compare to readline, tcl, and expat, each used by hundreds of different
> programs.

Sorry, I don't see any significant difference. The number of packages
is not really relevant; what is relevant is how easier or harder would
things become for Joe Random Hacker Who Just Wants To Build GDB.
Perhaps Chris and Daniel don't see any problem because they have the
latest versions of everything on their machines, at all times. From
my point of view, about the worst annoyance of Free Software is what
happens when I "./configure; make" just to find out that I need two
more packages, which in turn want each one two more packages, which
want yet some more ...

This is where I usually tell myself "Welcome to Free Software, where
maintainers care about users much less than they care about their own
convenience". (Present company excluded, of course.)

In other words, when I download a package, I want it ideally to build
out of the box, period. No questions asked, and no additional
prerequisites that could turn a simple build job into an agony that
lasts the better part of my day, because each prerequisite package
needs a bit of tweaking to build and install properly. By contrast,
when I get readline etc. with GDB, I can be _certain_ that someone
already tried and succeeded to build _this_ version of the library
with _this_ configury and _this_ GDB release.