summary refs log tree commit diff
diff options
context:
space:
mode:
authorCarl Dong <contact@carldong.me>2021-02-03 20:21:31 +0000
committerCarl Dong <contact@carldong.me>2021-02-25 20:46:49 -0500
commit811a2015a28f328e2076bb6a78562c3c2b81dd91 (patch)
tree2576c07259d35178ac60d1077df2e94c0e4d043a
parent703005e88e19b07d5a55e4dfd36b01e00e66fc1f (diff)
downloadguix-811a2015a28f328e2076bb6a78562c3c2b81dd91.tar.gz
gnu: make-nsis: Fix build
* gnu/packages/installers.scm (make-nsis)[arguments]: Use
C{,PLUS}_INCLUDE_PATH instead of CPATH environment variable to fix
build.
-rw-r--r--gnu/packages/installers.scm29
1 files changed, 19 insertions, 10 deletions
diff --git a/gnu/packages/installers.scm b/gnu/packages/installers.scm
index a8a5c36a18..775b91f0f7 100644
--- a/gnu/packages/installers.scm
+++ b/gnu/packages/installers.scm
@@ -92,13 +92,23 @@
                              ;; for native toolchain
                              (setenv env-name
                                      (filter-delimited-string env-val (negate mingw-path?)))
-                             ;; Add the removed paths back into
-                             ;; CROSS_-prefixed version of env vars
+                             ;; Add the removed paths back into 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,21 +118,20 @@
                                             ,@(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 _
-                        ;; NSIS target detection is screwed up, manually
-                        ;; change it ourselves
+                        ;; NSIS target detection is screwed up, manually change
+                        ;; it ourselves
                         (substitute* "Source/build.cpp" (("m_target_type=TARGET_X86ANSI")
                                                          (string-append "m_target_type=" ,nsis-target-type))))))))
       (home-page "http://nsis.sourceforge.net/")
       (synopsis "A professional open source system to create Windows installers")
       (description
-       "NSIS (Nullsoft Scriptable Install System) is a professional open
-source system to create Windows installers. It is designed to be as small and
-flexible as possible and is therefore very suitable for internet
-distribution.")
+       "NSIS (Nullsoft Scriptable Install System) is a professional open source
+system to create Windows installers. It is designed to be as small and flexible
+as possible and is therefore very suitable for internet distribution.")
       (license (license:non-copyleft "file://COPYING"
                                      "See COPYING in the distribution.")))))