From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1R4TZI-0006sz-Cx for garchives@archives.gentoo.org; Fri, 16 Sep 2011 08:14:40 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id B1E7B21C1CB; Fri, 16 Sep 2011 08:14:25 +0000 (UTC) Received: from mail-wy0-f180.google.com (mail-wy0-f180.google.com [74.125.82.180]) by pigeon.gentoo.org (Postfix) with ESMTP id D05D621C1D3 for ; Fri, 16 Sep 2011 08:13:21 +0000 (UTC) Received: by wyj26 with SMTP id 26so4428136wyj.11 for ; Fri, 16 Sep 2011 01:13:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=date:from:to:cc:subject:message-id:in-reply-to:references:x-mailer :mime-version:content-type; bh=X3Zn31koBQmMKR+A2TPzlC3tLUxJc7l0vytegfTrObo=; b=r5MpThcsANcpa0xVjajCbe7sRVujs86fT64Jzruhib6WXhvXkCP5TgGTk3rcLmF5cO 9WVDf2nWRuAsowrkGc6GneyfoTNJDYOtQoNwnPrG27U0RdRaWlcBKNQqwlxOz9zhYkeR 3XoTTyiRuYIRIZ5yMbWYOx4dIs87ALlNKEDTo= Received: by 10.227.30.154 with SMTP id u26mr739308wbc.73.1316160801029; Fri, 16 Sep 2011 01:13:21 -0700 (PDT) Received: from localhost (cpc1-broo4-0-0-cust780.14-2.cable.virginmedia.com. [86.4.215.13]) by mx.google.com with ESMTPS id en9sm4222061wbb.24.2011.09.16.01.13.19 (version=TLSv1/SSLv3 cipher=OTHER); Fri, 16 Sep 2011 01:13:20 -0700 (PDT) Date: Fri, 16 Sep 2011 09:08:36 +0100 From: Ciaran McCreesh To: =?UTF-8?B?TWljaGHFgiBHw7Nybnk=?= Cc: gentoo-dev@lists.gentoo.org Subject: Re: [gentoo-dev] How to handle dependencies on protocol headers? Message-ID: <20110916090836.27313e1e@googlemail.com> In-Reply-To: <20110916095447.18cc8808@pomiocik.lan> References: <20110916072529.0b44999f@googlemail.com> <20110916095447.18cc8808@pomiocik.lan> X-Mailer: Claws Mail 3.7.9 (GTK+ 2.24.5; x86_64-pc-linux-gnu) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org Mime-Version: 1.0 Content-Type: multipart/signed; micalg=PGP-SHA1; boundary="Sig_/w_1wt/FzYU.3uuVaWyB5RJY"; protocol="application/pgp-signature" X-Archives-Salt: X-Archives-Hash: f9a91ef861a408d689690a05804c0fb5 --Sig_/w_1wt/FzYU.3uuVaWyB5RJY Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Fri, 16 Sep 2011 09:54:47 +0200 Micha=C5=82 G=C3=B3rny wrote: > > This is a build-against dependency, and it's best expressed either > > by its own BADEPEND, or (because it's apparently now possible, and > > because otherwise we'd end up with six or seven *DEPEND variables) > > by switching to something like DEPENDENCIES with a build-against > > label. >=20 > Please do not wreak exheres into Gentoo. The current variable forms > are complex enough; there is no reason to put even more logic into > the parser. And yes, it's better to have 7 *DEPEND variables than one > more magical, conditional thingie in the 'Dependencies' section. =46rom feedback so far, I think you're in the minority on that (at least from people who have expressed an opinion), and that more people have come out in favour of a single unified variable (not necessarily with exactly the same syntax as exheres-0). *shrug* I don't really mind about the syntax either way, and I suspect that'll come down to a Council decision. I do care about getting the exact definitions of what the various kinds of dependencies mean right -- as you saw in the "what's available in pkg_setup?" discussion, we have to be very very careful to avoid contradictions. I think we need at least the following classes to represent all the different dependencies people seem to need: Build dependencies (DEPEND): available in src_*. Run dependencies (RDEPEND): available when the package is used to satisfy a dependency. Install dependencies (IDEPEND?): available in pkg_setup. (Anyone interested in why this is necessary should see the "Rephrasing *DEPEND" thread on gentoo-pms. Sticking something in both DEPEND and RDEPEND isn't enough, since RDEPEND-RDEPEND cycles are breakable. But please read the original discussion before claiming we're wrong.) Build-against dependencies (BDEPEND?): the thing described in the original post in this thread. Post dependencies (PDEPEND): available sometime. Suggested dependencies (SDEPEND?): optionally available sometime. We may also want: Recommended dependencies (TDEPEND?): optionally available sometime, and chosen unless the user says not to. If we're trying to solve the SCM fetch problem in EAPI 5 (I don't think we are): Special Fetch dependencies (FDEPEND?): available during the special fetch phase, however we decide to do that. Note that suggested dependencies *have* to be PDEPEND-like. You can't sensibly have suggested DEPENDs, since that violates the "repeatable builds" principle. If something's an optional DEPEND, it needs a flag. --=20 Ciaran McCreesh --Sig_/w_1wt/FzYU.3uuVaWyB5RJY Content-Type: application/pgp-signature; name=signature.asc Content-Disposition: attachment; filename=signature.asc -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.18 (GNU/Linux) iEYEARECAAYFAk5zBAkACgkQ96zL6DUtXhE4lgCgvxeLOEMJxXMHVU1iik/pyeYf ROcAnjbLz4ylLW1e1Q3868qjBVojjsnh =IyGy -----END PGP SIGNATURE----- --Sig_/w_1wt/FzYU.3uuVaWyB5RJY--