From owner-freebsd-ports@FreeBSD.ORG Sat Mar 10 15:44:00 2007 Return-Path: X-Original-To: freebsd-ports@freebsd.org Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 54F8416A400; Sat, 10 Mar 2007 15:44:00 +0000 (UTC) (envelope-from jylefort@FreeBSD.org) Received: from mirapoint3.brutele.be (mirapoint3.brutele.be [212.68.199.148]) by mx1.freebsd.org (Postfix) with ESMTP id AF65013C500; Sat, 10 Mar 2007 15:43:59 +0000 (UTC) (envelope-from jylefort@FreeBSD.org) Received: from host-212-68-244-81.brutele.be (host-212-68-244-81.brutele.be [212.68.244.81]) by mirapoint3.brutele.be (MOS 3.7.5a-GA) with ESMTP id ADH96758; Sat, 10 Mar 2007 16:43:57 +0100 (CET) Received: from jsite.lefort.net (jsite.lefort.net [192.168.1.2]) by gateway.lefort.net (Postfix) with ESMTP id 24DC154C6; Sat, 10 Mar 2007 16:43:57 +0100 (CET) Received: from jsite.lefort.net (localhost [127.0.0.1]) by jsite.lefort.net (Postfix) with SMTP id E9BBE2E; Sat, 10 Mar 2007 16:43:56 +0100 (CET) Date: Sat, 10 Mar 2007 16:43:56 +0100 From: Jean-Yves Lefort To: Ade Lovett Message-Id: <20070310164356.a645e9d0.jylefort@FreeBSD.org> In-Reply-To: References: <45F1DDE2.5030404@FreeBSD.org> <45F1EA6A.6070904@FreeBSD.org> <20070310023034.c5939c48.jylefort@FreeBSD.org> <7CF1749C-3254-46AC-ABDD-BAB0D84ED7A1@FreeBSD.org> <20070310033000.c9d2a66f.jylefort@FreeBSD.org> <8E182699-3175-447C-92EF-B6F0E84B4244@FreeBSD.org> <20070310144528.1224e8f1.jylefort@FreeBSD.org> X-Mailer: Sylpheed running on FreeBSD Mime-Version: 1.0 Content-Type: multipart/signed; protocol="application/pgp-signature"; micalg="PGP-SHA1"; boundary="Signature=_Sat__10_Mar_2007_16_43_56_+0100_9bjZgKwirWYsqzl+" X-Junkmail-Status: score=10/50, host=mirapoint3.brutele.be X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A09020A.45F2D23E.0054,ss=1,fgs=0, ip=212.68.244.81, so=2006-05-09 23:27:51, dmn=5.2.125/2007-01-26 Cc: freebsd ports Subject: Re: Ports 104877 causing big problems X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 10 Mar 2007 15:44:00 -0000 --Signature=_Sat__10_Mar_2007_16_43_56_+0100_9bjZgKwirWYsqzl+ Content-Type: text/plain; charset=US-ASCII Content-Disposition: inline Content-Transfer-Encoding: 7bit On Sat, 10 Mar 2007 06:42:31 -0800 Ade Lovett wrote: > On Mar 10, 2007, at 05:45 , Jean-Yves Lefort wrote: > > Repeatedly read the PR until you understand it. Pay attention to the > > provided objdump diff, and to the fact that the patch modifies the > > link_all_deplibs variable. Understand what that variable > > does. Understand why it should be set to "no" rather than to > > "unknown". > > There is no empirical evidence in the PR. > > Statement #1: "This slows down the linking considerably" > This one should be easy enough to prove. Providing timings. Pay > particular attention to the relative timing of the final link-loader > step compared with the time taken to register all dependencies as > part of the pkg_install process. Prove it to yourself if you want. > Statement #2: "... creates a direct dependency between a library down > the tree and a leaf program" > Incorrect. Take three libraries; A, B, and C. A depends on B. B > depends on C. In order to ensure deterministic behavior in the event > of 'C' being upgraded, *all* ports depending on it should also be > rebuilt. Thus, if something relatively low level like libpng is > updated, then to guarantee at least deterministic failure modes, > everything that depends on libpng should also be rebuilt (either > manually, or via portupgrade/portmaster, both of which have flags to > make this an easy process). A does not reference C. There is no reason to rebuild A. This is called encapsulation. You don't need to rebuild your whole system when libpng is updated. It's relatively easy, yet it's entirely useless and going to take one day or two. > Statement #3: "The attached patch fixes the problem." > Unknown. There are no comparative timings for the link-loader stage > (statement 1), and merely obfuscates the dependency issue (statement > 2), particularly given that there are *two* dependency chains being > discussed, the one inherent to .la files, and the one provided by the > pkg_* tools. Unknown to you, because you don't understand the problem. The problem is that link_all_deplibs is set to unknown, and libtool therefore assumes that the system does not support library dependencies. It then proceeds by recursively linking the entire dependency graph into a program or library, not just the direct dependencies of that program or library. -- Jean-Yves Lefort jylefort@FreeBSD.org http://lefort.be.eu.org/ --Signature=_Sat__10_Mar_2007_16_43_56_+0100_9bjZgKwirWYsqzl+ Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (FreeBSD) iD8DBQFF8tI8yzD7UaO4AGoRAmY4AJ0Z7lbA888EBz5Q2fxeD0AsubE97gCfZZEj Q8sJqtMc8vcXv0I9BZFIUdc= =ner7 -----END PGP SIGNATURE----- --Signature=_Sat__10_Mar_2007_16_43_56_+0100_9bjZgKwirWYsqzl+--