mothacehe pushed a commit to branch wip-cross-system
in repository guix.
commit 657f9b414858c38336939ce5d42b8517c5112e14
Author: Mathieu Othacehe <[email protected]>
Date: Tue Jul 2 15:22:16 2019 +0200
gnu: cmake: Fix cross-compilation.
* gnu/packages/cmake.scm (cmake-minimal-cross): New package.
* guix/build-system/cmake.scm (default-cmake): Add new target argument and
use
it to select cmake-minimal or cmake-minimal-cross.
(lower): Pass target to default-cmake.
---
gnu/packages/cmake.scm | 8 ++++++++
guix/build-system/cmake.scm | 9 ++++++---
2 files changed, 14 insertions(+), 3 deletions(-)
diff --git a/gnu/packages/cmake.scm b/gnu/packages/cmake.scm
index 1d8d829..9bf0273 100644
--- a/gnu/packages/cmake.scm
+++ b/gnu/packages/cmake.scm
@@ -207,6 +207,14 @@ and workspaces that can be used in the compiler
environment of your choice.")
(outputs '("out" "doc"))
(properties (alist-delete 'hidden? (package-properties cmake-minimal)))))
+(define-public cmake-minimal-cross
+ (package
+ (inherit cmake-minimal)
+ (name "cmake-minimal-cross")
+ (native-search-paths '())
+ (search-paths
+ (package-native-search-paths cmake-minimal))))
+
(define-public emacs-cmake-mode
(package
(inherit cmake)
diff --git a/guix/build-system/cmake.scm b/guix/build-system/cmake.scm
index ca88fad..aa0f418 100644
--- a/guix/build-system/cmake.scm
+++ b/guix/build-system/cmake.scm
@@ -43,16 +43,19 @@
`((guix build cmake-build-system)
,@%gnu-build-system-modules))
-(define (default-cmake)
+(define (default-cmake target)
"Return the default CMake package."
;; Do not use `@' to avoid introducing circular dependencies.
(let ((module (resolve-interface '(gnu packages cmake))))
- (module-ref module 'cmake-minimal)))
+ (module-ref module
+ (if target
+ 'cmake-minimal-cross
+ 'cmake-minimal))))
(define* (lower name
#:key source inputs native-inputs outputs system target
- (cmake (default-cmake))
+ (cmake (default-cmake target))
#:allow-other-keys
#:rest arguments)
"Return a bag for NAME."