From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11702 invoked by alias); 31 Jul 2006 21:33:32 -0000 Received: (qmail 11694 invoked by uid 22791); 31 Jul 2006 21:33:31 -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, 31 Jul 2006 21:33:26 +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 k6VLWqNx010702; Mon, 31 Jul 2006 23:32:52 +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 k6VLWpV3026886; Mon, 31 Jul 2006 23:32:52 +0200 (CEST) Received: (from kettenis@localhost) by elgar.sibelius.xs4all.nl (8.13.6/8.13.6/Submit) id k6VLWpMT002274; Mon, 31 Jul 2006 23:32:51 +0200 (CEST) Date: Mon, 31 Jul 2006 21:33:00 -0000 Message-Id: <200607312132.k6VLWpMT002274@elgar.sibelius.xs4all.nl> From: Mark Kettenis To: drow@false.org CC: gdb-patches@sourceware.org In-reply-to: <20060731202422.GA16346@nevyn.them.org> (message from Daniel Jacobowitz on Mon, 31 Jul 2006 16:24:22 -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> <200607242229.k6OMTR1a022831@elgar.sibelius.xs4all.nl> <20060731173312.GA10875@nevyn.them.org> <20060731202422.GA16346@nevyn.them.org> 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/msg00440.txt.bz2 > Date: Mon, 31 Jul 2006 16:24:22 -0400 > From: Daniel Jacobowitz > > On Mon, Jul 31, 2006 at 01:33:12PM -0400, Daniel Jacobowitz wrote: > > As for optional versus required, I don't think there's a relevant FSF > > position. However, I very much wanted to use the XML target > > descriptions in some cases to replace the C-coded ones. So obviously > > I prefer to require expat. > > Which yields this patch. > > If our final decision is to make all features which require expat > optional, I can rework this patch to only issue a warning message, > and update the documentation accordingly. It currently: > - Searches $prefix/lib and $prefix/include for expat, as well > as the standard system directories. > - Offers a documented option to find expat elsewhere. > - Defines HAVE_LIBEXPAT in config.h. > > I think I've said everything useful that I can say on this subject; > I am not sure how to proceed. The options that I see are: > > 1. Refuse to use external libraries. > 2. Make external libraries optional. > 3. Require external libraries, with moderation and documentation. > > Obviously I prefer 3, followed by 2. > > Your thoughts welcome! It all depends on what the external library is used for. Making readline optional wouldn't make much sense, since it is used for GDB's primary user interface. Making expat optional make much more sense to me, as I can't see why I'd need it for a native debugger. There's another reason why I'd like to see expat as an optional library. Currently we (OpenBSD) ship GDB in our base system. This would mean we'd have to include expat in our base system too; something we'd rather not do especially if it doesn't give us any benefits. NetBSD and FreeBSD are in a similar situation I guess. That said, I'm willing to give in under two conditions: 1. We add the necessary glue to the toplevel configure such that it accepts a --with-expat-dir option similar to the --with-gmp-dir option that's already there for GCC. This will make it possible to keep building everything in one tree, which would come close to removing the objections I raised earlier about problemms installing expat on systems I use to test GDB on. 2. Try to keep the bits that need expat "optional", and review whether the code that needs it really benefits all of us, or only a few. Mark