public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: John Myers <electronerd@monolith3d.com>
To: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] Reminder on dependencies.
Date: Tue, 25 Oct 2005 09:03:23 -0700	[thread overview]
Message-ID: <200510250903.28250.electronerd@monolith3d.com> (raw)
In-Reply-To: <435E3C7F.6060308@gentoo.org>

[-- Attachment #1: Type: text/plain, Size: 2076 bytes --]

On Tuesday 25 October 2005 07:09, Donnie Berkholz wrote:
> Ciaran McCreesh wrote:
> | On Mon, 24 Oct 2005 21:37:03 -0700 Donnie Berkholz
> |
> | <spyderous@gentoo.org> wrote:
> | | Now, the other side of the story. It's not true runtime dependence
> | | because it's not required for programs to run, only to compile. And
> | | the way I see it, things required for programs to compile are by
> | | definition DEPEND rather than RDEPEND.
> |
> | Not at all. If you've installed libfoo, one of the things you must be
> | able to do is compile things that use libfoo. This sometimes means that
> | libfoo would need a non-build-time dependency upon any libraries used
> | by libfoo's header files.
>
> I disagree. You shouldn't expect to be able to compile things against it
> unless all DEPENDs are installed. The whole point of DEPEND is to be
> able to do things like this; remove all things not necessary for your
> programs to run, not to compile.

Perhaps, then, an additional dependency type would be useful? One that says "I 
may or may not need this for me to compile, Other programs definately need 
this to compile against me, and I don't necessarily need this to run"

Let's call this CDEPEND, for the sake of example:
package foo DEPENDs on bar, but does not CDEPEND or RDEPEND on it. bar 
CDEPENDs on baz, but does not DEPEND or RDEPEND on it.

Scenario 1:
1) emerge bar
- bar installed
2) emerge foo
- baz installed
- foo installed

Scenario 2:
1) emerge foo
- baz installed
- bar installed
- foo installed
2) "remove all compilation-only packages"
- bar uninstalled
- baz uninstalled
3) emerge bar
- bar installed
4) emerge -u foo
- baz installed
- foo installed

The pattern is that CDEPENDs of package fooquux are optional unless another 
package in the current dep list DEPENDs on fooquux. Only DEPEND would 
activate them, not RDEPEND or CDEPEND, so if fooquux needs a package in 
CDEPEND to compile, it must also specify it in DEPEND, and if it needs it at 
runtime, it must also specify it in RDEPEND.

[-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --]

  reply	other threads:[~2005-10-25 16:05 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
2005-10-25 12:15   ` Ciaran McCreesh
2005-10-25 14:09     ` Donnie Berkholz
2005-10-25 16:03       ` John Myers [this message]
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=200510250903.28250.electronerd@monolith3d.com \
    --to=electronerd@monolith3d.com \
    --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