Hi Rutherther,

On Wed, Dec 04, 2024 at 11:17 PM, Rutherther wrote:

> It is impossible to refer to %outputs in arguments like #:configure-flags
> (ie. `(assoc-ref %outputs "out")` leads to unbound-variable %outputs).

You should be able to use gexps, e.g. #$output (see
<https://guix.gnu.org/manual/devel/en/html_node/G_002dExpressions.html>
for more details). That is actually the preferred way now, though
there are still instances of assoc-ref.

I believe the commit in question is
<https://git.savannah.gnu.org/cgit/guix.git/commit?id=7d873f194ca69d6096d28d7a224ab78e83e34fe1>.

> I think the issue is in qt using different system than build systems such
> as cmake or gnu. Since I am unsure about the reason for qt not having
> the same structure, I am submitting this to guix devel for discussion,
> as well as opening a patch in case this is fine to be merged. If not,
> could someone please explain what the reason behind not adding
> inputs and outputs is, and what is the alternative?
>

Though perhaps you are getting at that you'd expect the older way to
still work? Perhaps qt-build purposefully left the older procedure
behind as it should have much fewer dependents (which may rely on the
old assoc-ref)?

Hope that helps! The short of it is to use gexps :)

John


Reply via email to