[Top][All Lists]

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

Re: Custom 'install phase

From: Raghav Gururajan
Subject: Re: Custom 'install phase
Date: Mon, 8 Mar 2021 03:16:20 -0500

Hi Julien!

I think you need to remove the apply, but keep one level of parenthesis, like so:

((assoc-ref …) args …)

Apply takes the last arguments, which must be a list and appends all its elements to the invocation. Like (apply foo '(1 2 3 4)) is tge same as (foo 1 2 3 4). Here you're probably confused because of the assoc-ref is not a procodure, but it's fine: it returns a procedure, so guile can execute it and pass arguments to it the normal way.

So I tried the following:

           (replace 'install
             (lambda _
               (for-each (lambda (solution)
                           (with-directory-excursion solution
                                ((assoc-ref copy:%standard-phases 'install)
'(("src" (string-append "include/" solution)
                                          #:include-regexp ("\\.h$"))))))

I get "In procedure string-append: Wrong type (expecting string): #f", with and without replacing `(string-append "include/" solution)` with `"include"`.


Attachment: OpenPGP_signature
Description: OpenPGP digital signature

reply via email to

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