From owner-freebsd-current Fri Nov 8 1:29:44 2002 Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6FE4A37B404 for ; Fri, 8 Nov 2002 01:29:42 -0800 (PST) Received: from herring.nlsystems.com (mailgate.nlsystems.com [62.49.251.130]) by mx1.FreeBSD.org (Postfix) with ESMTP id AA16C43E75 for ; Fri, 8 Nov 2002 01:29:40 -0800 (PST) (envelope-from dfr@nlsystems.com) Received: from herring.nlsystems.com (herring [10.0.0.2]) by herring.nlsystems.com (8.12.6/8.12.6) with ESMTP id gA89THVu078203; Fri, 8 Nov 2002 09:29:17 GMT (envelope-from dfr@nlsystems.com) Content-Type: text/plain; charset="iso-8859-1" From: Doug Rabson To: kientzle@acm.org, Terry Lambert , current@FreeBSD.ORG Subject: Re: [PATCH] note the __sF change in src/UPDATING Date: Fri, 8 Nov 2002 09:29:17 +0000 User-Agent: KMail/1.4.3 References: <3DCADE51.2090607@acm.org> In-Reply-To: <3DCADE51.2090607@acm.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Message-Id: <200211080929.17687.dfr@nlsystems.com> X-Spam-Status: No, hits=-7.7 required=5.0 tests=IN_REP_TO,QUOTED_EMAIL_TEXT,REFERENCES,SPAM_PHRASE_00_01, USER_AGENT,USER_AGENT_KMAIL version=2.41 Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Thursday 07 November 2002 9:42 pm, Tim Kientzle wrote: > Terry Lambert asked: > > Any chance we could get rid of all externally visable symbols that > > are not defined as being there by some standard, and not just __sF, > > since we are breaking the FORTRAN compiler and other third party > > code already? > > This cannot be entirely done if you still want to > manage library bloat. In short, library routines > have shared interfaces between them---common variables > or common functions---that are internal to the library > and should not be used by applications. > > To avoid this, you would have to bundle library functions > together, which causes bloat. Worse, you would have to > avoid or drastically limit your use of macros. (Any > macro that uses one of these internal symbols generates > a dependency in the compiled application.) > > It _would_ be a good idea to document any internal library > symbols used by macros. Removing such symbols is a > good way to break existing compiled applications. > > Library design involves a lot of tradeoffs. In the windows world, all this is handled by having a strict list of expl= icit=20 symbol exports, either in the source code using syntax extensions or with= a=20 file supplied to the linker. I'm not sure whether binutils supports this = kind=20 of thing but it would allow us to cut down the set of symbols exported fr= om=20 libc.so. --=20 Doug Rabson=09=09=09=09Mail: dfr@nlsystems.com =09=09=09=09=09Phone: +44 20 8348 6160 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message