help-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Specifying dependencies among package outputs?


From: Brett Gilio
Subject: Re: Specifying dependencies among package outputs?
Date: Wed, 14 Oct 2020 17:55:36 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)

Simon South <simon@simonsouth.net> writes:

> Am I right in thinking there is no way to specify dependencies among the
> outputs of a single package? To specify that a package's "out" output
> depends on its "lib" output, for instance.
>
> I ask because the Knot package (in gnu/package/dns.scm) builds a number
> of logically distinct targets---daemon, libraries, administrative
> utilities, general-purpose utilities, and documentation---and it would
> be nice to separate at least some of these into individual outputs, in
> part because we could then specify only the libraries as a dependency of
> Knot Resolver.
>
> However, Knot's daemon and utilities have the same dependency on its own
> libraries, so pulling those into a separate "lib" output would be liable
> to break everything else.
>
> I've searched and can't find an example of this being done, nor can I
> find any mention of it in the documentation. So I assume it's simply not
> possible, and you would need to define an entirely separate package that
> builds from the same source code---right?

Unless I am mistaken, this is not possible. When using a specific
output, it still fetches the entire package closure. But only that
specific output propagates to the profile. Adding an output as a
dependency would surely cause a non-termination situation with the
interpreter.

I have cc'ed guix-devel as I think that is the better fit for this
question.

Best


-- 
Brett M. Gilio
<brettg@gnu.org>
https://brettgilio.com



reply via email to

[Prev in Thread] Current Thread [Next in Thread]