From owner-freebsd-ports@FreeBSD.ORG Sat Jun 2 12:18:49 2012 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D34EA1065672 for ; Sat, 2 Jun 2012 12:18:49 +0000 (UTC) (envelope-from alexander@leidinger.net) Received: from mail.ebusiness-leidinger.de (mail.ebusiness-leidinger.de [217.11.53.44]) by mx1.freebsd.org (Postfix) with ESMTP id 8C5258FC12 for ; Sat, 2 Jun 2012 12:18:49 +0000 (UTC) Received: from outgoing.leidinger.net (p5796DF34.dip.t-dialin.net [87.150.223.52]) by mail.ebusiness-leidinger.de (Postfix) with ESMTPSA id 201C7844855; Sat, 2 Jun 2012 14:18:30 +0200 (CEST) Received: from unknown (IO.Leidinger.net [192.168.1.12]) by outgoing.leidinger.net (Postfix) with ESMTPS id 66B0E1248; Sat, 2 Jun 2012 14:18:27 +0200 (CEST) Date: Sat, 2 Jun 2012 14:18:26 +0200 From: Alexander Leidinger To: freebsd-ports@freebsd.org Message-ID: <20120602141826.00004602@unknown> In-Reply-To: References: X-Mailer: Claws Mail 3.7.10cvs42 (GTK+ 2.16.6; i586-pc-mingw32msvc) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-EBL-MailScanner-Information: Please contact the ISP for more information X-EBL-MailScanner-ID: 201C7844855.AE75C X-EBL-MailScanner: Found to be clean X-EBL-MailScanner-SpamCheck: not spam, spamhaus-ZEN, SpamAssassin (not cached, score=-0.894, required 6, autolearn=disabled, ALL_TRUSTED -1.00, AWL 0.12, T_RP_MATCHES_RCVD -0.01) X-EBL-MailScanner-From: alexander@leidinger.net X-EBL-MailScanner-Watermark: 1339244311.48167@AtEzKJweUl05/FmrX/74+g X-EBL-Spam-Status: No Cc: carmel_ny@hotmail.com Subject: Re: EXPLICIT_PACKAGE_DEPENDS=true 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, 02 Jun 2012 12:18:49 -0000 On Sat, 2 Jun 2012 06:18:24 -0400 Carmel wrote: > I have seen the "EXPLICIT_PACKAGE_DEPENDS=true" knob mentioned in > several posts. I have three questions in its regards. > > 1) Exactly what does it do? I cannot seem to locate a definitive > answer. Currently if port A depends upon B and B upon C you will get a dependency recorded in A upon C. If you activate this know you will not get the A->C dependency, only the A->B and B->C ones. > 2) If this is a "good thing" then why is it not a default setting? If port B and C is a lib, and A is linked to B, A also contains a reference to C, even if A only references functions from B. For libs which are build with libtoo, this can be changes with a patch to libtool (my experience with this is based upon an investigation several years ago, I don't know if this changed, but I assume it hasn't). There where some good reasons to not activate this functionality in libtool back when I had a look at it, I don't know if those reasons still apply. > 3) What benefits could I expect to see from using this setting? Less ports to recompile when a library changed in a way which requires a rebuild of all programs which depend upon it. Bye, Alexander. -- http://www.Leidinger.net Alexander @ Leidinger.net: PGP ID = B0063FE7 http://www.FreeBSD.org netchild @ FreeBSD.org : PGP ID = 72077137