guix-devel
[Top][All Lists]
Advanced

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

Re: [PATCH 1/2] build: union: Add create-all-directory? parameter to uni


From: Huang\, Ying
Subject: Re: [PATCH 1/2] build: union: Add create-all-directory? parameter to union-build
Date: Fri, 24 Feb 2017 20:40:47 +0800
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux)

Hi, All,

Can anyone help me to review this patch?

Best Regards,
Huang, Ying

address@hidden writes:

> From: Huang Ying <address@hidden>
>
> * guix/build/union.scm (union-build): Add create-all-directory? keyword
>   parameter.  To add/remove some files from the directory.
> ---
>  guix/build/union.scm | 9 ++++++---
>  1 file changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/guix/build/union.scm b/guix/build/union.scm
> index 6640b5652..4783066be 100644
> --- a/guix/build/union.scm
> +++ b/guix/build/union.scm
> @@ -73,7 +73,8 @@ identical, #f otherwise."
>                                    (loop)))))))))))))
>  
>  (define* (union-build output inputs
> -                      #:key (log-port (current-error-port)))
> +                      #:key (log-port (current-error-port))
> +                      (create-all-directory? #f))
>    "Build in the OUTPUT directory a symlink tree that is the union of all
>  the INPUTS."
>  
> @@ -104,8 +105,10 @@ the INPUTS."
>    (define (union output inputs)
>      (match inputs
>        ((input)
> -       ;; There's only one input, so just make a link.
> -       (symlink* input output))
> +       ;; There's only one input, so just make a link unless 
> create-all-directory?
> +       (if (and create-all-directory? (file-is-directory? input))
> +           (union-of-directories output inputs)
> +           (symlink* input output)))
>        (_
>         (call-with-values (lambda () (partition file-is-directory? inputs))
>           (match-lambda*




reply via email to

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