public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: Thomas de Grenier de Latour <degrenier@easyconnect.fr>
To: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] Reminder on dependencies.
Date: Tue, 25 Oct 2005 09:49:43 +0200	[thread overview]
Message-ID: <20051025094943.7706b624@eusebe> (raw)
In-Reply-To: <435DB66F.9060807@gentoo.org>

On Mon, 24 Oct 2005 21:37:03 -0700
Donnie Berkholz <spyderous@gentoo.org> wrote:

> The consequences of the two sides are like this, from what I can
> see:
>
> 1) Headers are run-time and build-time deps
> 2) Headers are build-time deps only

Imho, that case fall under the concept of "exported deps" i had
proposed some time ago, here:
http://thread.gmane.org/gmane.linux.gentoo.portage.devel/750

Quickly summarized, the idea (for RDEPEND) was, for instance, the
following:
- pkgA installs libA.so, and depending on USE flag "flagB", it's
libA.la file may contain "-lB".
- thus, a pkgC linked to libA may also be linked to libB, but that
depends on USE flags of pkgA, which can't be taken into account in
pkgC's RDEPEND. In such cases, one simply can't write correct
RDEPEND for pkgC.
- the proposed solution was that pkgA.ebuild declares a
EXPORTED_RDEPEND="flagB? ( pkgB )" variable. Evaluation of this
variable ("pkgB" or empty, depending on whether flagB was set at
pkgA compile time) would be stored in pkgA vardb metadatas, and
packages RDEPENDing on pkgA would also automatically include this
result in there RDEPENDs. Thus, pkgC would get correct RDEPENDs,
depending how pkgA was compiled.

Sure, the idea also applies for DEPEND (didn't talk about it in my
initial RFC, but that's required anyway for the above example with
libs explicitly linked through .la files). In the case of "headers
including other headers", it would be as follow:
 - pkgA installs headerA.h, which has an "#include <headerB.h>"
 - since pkgA's binaries/libs don't need pkgB at runtime, it doesn't
have an RDEPEND on this pkgB. But it should EXPORT_DEPEND="pkgB".
 - pkgC, which has a DEPEND="pkgA", would then automatically import
a DEPEND on pkgB.

Now, that's just a vague idea of portage improvement. Not sure how
good/bad it is, but anyway it's not something that would be
available anytime soon. And until something like that is possible,
i tend to agree Spider that cluttering RDEPENDs is the less worst
one can do to make things work.

--
TGL.

-- 
gentoo-dev@gentoo.org mailing list



  parent reply	other threads:[~2005-10-25  7:53 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-10-25  0:18 [gentoo-dev] Reminder on dependencies Spider (D.m.D. Lj.)
2005-10-25  4:37 ` Donnie Berkholz
2005-10-25  5:12   ` Joshua Baergen
2005-10-25  5:18   ` Ned Ludd
2005-10-26  8:46     ` Paul de Vrieze
2005-10-25  5:29   ` Spider (D.m.D. Lj.)
2005-10-25  5:51     ` Donnie Berkholz
2005-10-25  6:01       ` Spider (D.m.D. Lj.)
2005-10-26  8:45         ` Paul de Vrieze
2005-10-25  7:49   ` Thomas de Grenier de Latour [this message]
2005-10-25 12:15   ` Ciaran McCreesh
2005-10-25 14:09     ` Donnie Berkholz
2005-10-25 16:03       ` John Myers
2005-10-25 16:39       ` Ciaran McCreesh
2005-10-25 10:48         ` Donnie Berkholz
2005-10-25 17:55         ` solar
2005-10-25 19:16           ` Ciaran McCreesh
2005-10-25 19:28             ` Olivier Crete
2005-10-25 20:05             ` solar
2005-10-25 20:38               ` Ciaran McCreesh
2005-10-26  8:58                 ` Paul de Vrieze
2005-10-27  0:15                   ` Luca Barbato
2005-10-27  7:36                     ` Paul de Vrieze
2005-10-27 13:40                       ` Olivier Crête
2005-10-27 14:14                         ` Ned Ludd
2005-10-25 16:19   ` Grant Goodyear
2005-10-25  9:28     ` Donnie Berkholz
2005-10-25 16:41       ` Ciaran McCreesh
2005-10-25 17:16         ` Joshua Baergen
2005-10-25 17:25           ` Ciaran McCreesh
2005-10-25 17:37             ` Joshua Baergen
2005-10-25 17:41               ` Joshua Baergen
2005-10-25 17:44             ` Alec Joseph Warner
2005-10-25 17:55               ` Ciaran McCreesh
2005-10-25 16:55       ` Grant Goodyear
2005-10-26  9:04         ` Paul de Vrieze

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20051025094943.7706b624@eusebe \
    --to=degrenier@easyconnect.fr \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox