Subject: Re: [bug#46740] [PATCH] gnu: make-nsis: Fix build

From: Christopher Baines <[email-masked]>
Date: Wed, 24 Feb 2021 08:43:15 +0000

Carl Dong <[email-masked]> writes:

> * gnu/packages/installers.scm (make-nsis)[arguments]: Use
> C{,PLUS}_INCLUDE_PATH instead of CPATH environment variable to fix
> build.
> ---
>  gnu/packages/installers.scm | 13 +++++++++++--
>  1 file changed, 11 insertions(+), 2 deletions(-)
>
> diff --git a/gnu/packages/installers.scm b/gnu/packages/installers.scm
> index a8a5c36a18..e8196b27d0 100644
> --- a/gnu/packages/installers.scm
> +++ b/gnu/packages/installers.scm
> @@ -96,9 +96,18 @@
>                               ;; CROSS_-prefixed version of env vars
>                               (setenv (string-append "CROSS_" env-name)
>                                       (filter-delimited-string env-val mingw-path?))))
> -                         '("CPATH" "LIBRARY_PATH"))
> +                         '("C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH" "LIBRARY_PATH"))
>                          ;; Hack to place mingw-w64 path at the end of search
>                          ;; paths.  Could probably use a specfile and dirafter
> +                        (setenv "CROSS_C_INCLUDE_PATH"
> +                                (string-join
> +                                 `(,@(map (cut string-append (assoc-ref %build-inputs "xgcc")
> +					                     "/lib/gcc/" ,triplet "/"
> +							     ,(package-version xgcc) <>)
> +                                                   '("/include"
> +                                                     "/include-fixed"))
> +                                   ,(getenv "CROSS_C_INCLUDE_PATH"))
> +                                 ":"))
>                          (setenv "CROSS_CPLUS_INCLUDE_PATH"
>                                  (string-join
>                                   `(,@(map (cut string-append (assoc-ref %build-inputs "xgcc") <>)
> @@ -108,7 +117,7 @@
>                                              ,@(map (cut string-append "/lib/gcc/" ,triplet "/" ,(package-version xgcc) <>)
>                                                     '("/include"
>                                                       "/include-fixed"))))
> -                                   ,(getenv "CROSS_CPATH"))
> +                                   ,(getenv "CROSS_CPLUS_INCLUDE_PATH"))
>                                   ":"))))
>                      (add-before 'build 'fix-target-detection
>                        (lambda _

Hey!

Looks like this does fix things which is great [1], but it also
introduces some lint warnings [2].

1: https://data.guix-patches.cbaines.net/compare/package-derivations?base_commit=c418c6b64cbfa7a4eb1bfb7d02a99083103dd40e&target_commit=28d1e194346b3dae2ae4e969c00724d4d1037ff4&locale=en_US.UTF-8
2: https://data.guix-patches.cbaines.net/compare?base_commit=c418c6b64cbfa7a4eb1bfb7d02a99083103dd40e&target_commit=28d1e194346b3dae2ae4e969c00724d4d1037ff4

So, I'd remove the tabs and tweak the indentation so you're not
introducing any new long lines. But apart from that I think it's fine to
push, you can push right?

Chris