From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 27678 invoked by alias); 24 Jul 2006 22:29:34 -0000 Received: (qmail 27479 invoked by uid 22791); 24 Jul 2006 22:29:33 -0000 X-Spam-Check-By: sourceware.org Received: from sibelius.xs4all.nl (HELO sibelius.xs4all.nl) (82.92.89.47) by sourceware.org (qpsmtpd/0.31) with ESMTP; Mon, 24 Jul 2006 22:29:31 +0000 Received: from elgar.sibelius.xs4all.nl (root@elgar.sibelius.xs4all.nl [192.168.0.2]) by sibelius.xs4all.nl (8.13.4/8.13.4) with ESMTP id k6OMTScp012036; Tue, 25 Jul 2006 00:29:28 +0200 (CEST) Received: from elgar.sibelius.xs4all.nl (kettenis@localhost.sibelius.xs4all.nl [127.0.0.1]) by elgar.sibelius.xs4all.nl (8.13.6/8.13.6) with ESMTP id k6OMTSJC014048; Tue, 25 Jul 2006 00:29:28 +0200 (CEST) Received: (from kettenis@localhost) by elgar.sibelius.xs4all.nl (8.13.6/8.13.6/Submit) id k6OMTR1a022831; Tue, 25 Jul 2006 00:29:28 +0200 (CEST) Date: Mon, 24 Jul 2006 22:29:00 -0000 Message-Id: <200607242229.k6OMTR1a022831@elgar.sibelius.xs4all.nl> From: Mark Kettenis To: cgf-use-the-mailinglist-please@sourceware.org CC: gdb-patches@sourceware.org In-reply-to: <20060724214157.GC25632@trixie.casa.cgf.cx> (message from Christopher Faylor on Mon, 24 Jul 2006 17:41:57 -0400) Subject: Re: [RFC] Add expat to the GDB sources References: <20060718134048.GA15685@nevyn.them.org> <20060723224032.GA5168@trixie.casa.cgf.cx> <200607232318.k6NNIV28004376@elgar.sibelius.xs4all.nl> <20060724152438.GA17094@trixie.casa.cgf.cx> <20060724195118.GE13612@nevyn.them.org> <20060724214157.GC25632@trixie.casa.cgf.cx> Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2006-07/txt/msg00375.txt.bz2 > Date: Mon, 24 Jul 2006 17:41:57 -0400 > From: Christopher Faylor > > Also, we're not talking about having to track down scores of packages, > we're talking about *one* package. If we actually were talking about > adding about more packages it would actually make less sense to do > something like this. 'src' would be bloated and we'd be in constant > package update mode. Therefore we should not add random features to GDB that require more "external" packages. > It sounds like you're advocating that every project which relies on > external libraries should include the source code for those libraries. > If that is the case, it means that we shouldn't bother with shared > libraries at all. Every package would, instead, be bloated by the > inclusion of its own version of expat, and openssl, and libtiff, etc. Shared libraries are hard. You can only do it right if you correctly implement a version policy, which is almost impossible to do if you don't have some sort of central control. It really is only worth doing if there are more than a handlful of different programs using the same library that are likely to be used simultaniously. > >In other words, when I download a package, I want it ideally to build > >out of the box, period. > > IMO, that is an unrealistic expectation. But one that is true for the current GDB on many systems right now. > >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. > > And, if you are on linux or windows, you can be certain that your > version of gdb has a different version of readline than every other > package on the system and that gdb is slightly bigger and possibly > slightly incompatible as a result. I hate this about insight, also. > The problem is even worse there. That is a standard problem with > including disparate versions of libraries. A properly engineered Linux distribution solves this by building everything, including gdb, with a properly chosen version of readline, and testing this setup extensively. When a user isn't satisfied with the > But, where does this philosophy end? Are you *really* advocating that > every shipping package should include the source code of any libraries > that they use? So gdb should also include ncurses? The philosophy has always been that one should be able to build a GNU toolchain without any external dependencies, to be able to bootstrap into a situation wher you can use the toolchain to build other Free Software.