diff options
author | Mark H Weaver <mhw@netris.org> | 2019-08-22 15:53:27 -0400 |
---|---|---|
committer | Mark H Weaver <mhw@netris.org> | 2019-08-22 15:53:27 -0400 |
commit | 893c2df00daa4e6dd6a7ff3813d7df5329877f9e (patch) | |
tree | acd0db459464acae47083b66d5ce12cc656e2f10 /gnu/build/cross-toolchain.scm | |
parent | 04b9b7bb05aff4c41f46cd79aa7bc953ace16e86 (diff) | |
parent | 0ccc9a0f5bb89b239d56157ea66f8420fcec5ba6 (diff) | |
download | guix-893c2df00daa4e6dd6a7ff3813d7df5329877f9e.tar.gz |
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu/build/cross-toolchain.scm')
-rw-r--r-- | gnu/build/cross-toolchain.scm | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/gnu/build/cross-toolchain.scm b/gnu/build/cross-toolchain.scm index 53d6d39187..1704157750 100644 --- a/gnu/build/cross-toolchain.scm +++ b/gnu/build/cross-toolchain.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com> ;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2019 Carl Dong <contact@carldong.me> ;;; ;;; This file is part of GNU Guix. ;;; @@ -93,7 +94,7 @@ C_INCLUDE_PATH et al." ;; We're building the sans-libc cross-compiler, so nothing to do. #t))) -(define* (set-cross-path/mingw #:key inputs #:allow-other-keys) +(define* (set-cross-path/mingw #:key inputs target #:allow-other-keys) "Add the cross MinGW headers to CROSS_C_*_INCLUDE_PATH, and remove them from C_*INCLUDE_PATH." (let ((libc (assoc-ref inputs "libc")) @@ -110,7 +111,7 @@ C_*INCLUDE_PATH." (if libc (let ((cpath (string-append libc "/include" - ":" libc "/i686-w64-mingw32/include"))) + ":" libc "/" target "/include"))) (for-each (cut setenv <> cpath) %gcc-cross-include-paths)) @@ -140,7 +141,7 @@ C_*INCLUDE_PATH." (when libc (setenv "CROSS_LIBRARY_PATH" (string-append libc "/lib" - ":" libc "/i686-w64-mingw32/lib"))) + ":" libc "/" target "/lib"))) (setenv "CPP" (string-append gcc "/bin/cpp")) (for-each (lambda (var) @@ -166,8 +167,12 @@ C_*INCLUDE_PATH." a target triplet." (modify-phases phases (add-before 'configure 'set-cross-path - (if (string-contains target "mingw") - set-cross-path/mingw + ;; This mingw32 target checking logic should match that of target-mingw? + ;; in (guix utils), but (guix utils) is too large too copy over to the + ;; build side entirely and for now we have no way to select variables to + ;; copy over. See (gnu packages cross-base) for more details. + (if (string-suffix? "-mingw32" target) + (cut set-cross-path/mingw #:target target <...>) set-cross-path)) (add-after 'install 'make-cross-binutils-visible (cut make-cross-binutils-visible #:target target <...>)) |