From owner-freebsd-ports@FreeBSD.ORG Sun May 8 18:44:59 2005 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 80F9716A4E4 for ; Sun, 8 May 2005 18:44:59 +0000 (GMT) Received: from mail-in-09.arcor-online.net (mail-in-09.arcor-online.net [151.189.21.49]) by mx1.FreeBSD.org (Postfix) with ESMTP id F072B43D60 for ; Sun, 8 May 2005 18:44:58 +0000 (GMT) (envelope-from lofi@freebsd.org) Received: from mail-in-05-z2.arcor-online.net (mail-in-05-z2.arcor-online.net [151.189.8.17]) by mail-in-09.arcor-online.net (Postfix) with ESMTP id B7B2B2369E; Sun, 8 May 2005 20:44:57 +0200 (CEST) Received: from mail-in-09.arcor-online.net (mail-in-09.arcor-online.net [151.189.21.49]) by mail-in-05-z2.arcor-online.net (Postfix) with ESMTP id 92BFC108D74; Sun, 8 May 2005 20:44:57 +0200 (CEST) Received: from lofi.dyndns.org (dsl-082-083-044-065.arcor-ip.net [82.83.44.65]) by mail-in-09.arcor-online.net (Postfix) with ESMTP id A71C82382B; Sun, 8 May 2005 20:44:56 +0200 (CEST) Received: from kiste.my.domain (lofi@kiste.my.domain [192.168.8.4]) (authenticated bits=0) by lofi.dyndns.org (8.13.3/8.13.3) with ESMTP id j48Iirtr011351 (version=TLSv1/SSLv3 cipher=RC4-MD5 bits=128 verify=NO); Sun, 8 May 2005 20:44:54 +0200 (CEST) (envelope-from lofi@freebsd.org) From: Michael Nottebrock To: freebsd-ports@freebsd.org Date: Sun, 8 May 2005 20:44:51 +0200 User-Agent: KMail/1.8 References: <427E4687.40901@uvm.edu> In-Reply-To: <427E4687.40901@uvm.edu> X-Face: =Ym$`&q\+S2X$4`X%x%6"L4>Y,$]<":'L%c9"#7#`2tb&E&wsN31on!N\)3BD[g<=?utf-8?q?=2EjnfV=5B=0A=093=23?=>XchLK,o;>bD>c:]^;:>0>vyZ.X[,63GW`&M>}nYnr]-Fp``,[[@lJ!QL|sfW!s)=?utf-8?q?A2!*=0A=09vNkB/=7CL-?=>&QdSbQg X-Virus-Scanned: by amavisd-new cc: "James E. Flemer" Subject: Re: Why are implicit package dependencies recorded? X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 08 May 2005 18:44:59 -0000 --nextPart1519824.U6JW9oHTiN Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline On Sunday, 8. May 2005 19:04, James E. Flemer wrote: > I ask mostly because it seems to easy to get the > sub-dependencies wrong. A simple case for incorrect sub-deps is this: > > There is a package P that depends on a package D. The package D has an > optional dependency on S via the make flag WITH_S. The dependency on S > defaults to false. If package D is built with -DWITH_S, then D depends > on S. Now, when package P is built the package-depends-list target will > recurse into D, but omits S from the list (remember the flag defaults to > false). > > The scenario above creates a hidden dependency in P on S (that is not > recorded in the @pkgdep list). If the case above is inverted, WITH_S > defaults to true and D is built with -DWITHOUT_S, then a bogus > dependency on S is recorded for P. Dependencies are recorded as they are flagged. If there's an .ifdef=20 WITH/WITHOUT_S wrapper around a *_DEPENDS line in a Makefile, the dependenc= y=20 will or will not be recorded into the binary package correctly, so it's=20 perfectly possible to build customized packages with different dependencies= =20 than the default ones (I guess that's what you want to do). > Both of these cases can be avoided by building P with the same flags > that D was built with. In the simple case, that does not seem like a > bad solution, but in practice there can be a huge number of deps and > sub-deps (mplayer has around 45). > > Is there a need for sub-deps to be recorded recursively? I believe that > pkg_add will do the right thing if they are not. I'm quite sure it won't. Have you tried? =2D-=20 ,_, | Michael Nottebrock | lofi@freebsd.org (/^ ^\) | FreeBSD - The Power to Serve | http://www.freebsd.org \u/ | K Desktop Environment on FreeBSD | http://freebsd.kde.org --nextPart1519824.U6JW9oHTiN Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (FreeBSD) iD8DBQBCfl4kXhc68WspdLARAvbbAJ0TRPnx/Wd2fyq8iJTDiV47csqfiACdG7u8 iJHTY3qVVakqwdNoA/60JDY= =Ut+4 -----END PGP SIGNATURE----- --nextPart1519824.U6JW9oHTiN--