diff options
author | Janneke Nieuwenhuizen <janneke@gnu.org> | 2023-06-12 16:46:37 +0200 |
---|---|---|
committer | Janneke Nieuwenhuizen <janneke@gnu.org> | 2023-07-20 10:11:35 +0200 |
commit | 07eff96a86670a693c1f9a5df52e5fc0062d4c78 (patch) | |
tree | c63d2af03f03dcb742ea267bfb3baf7d25f380c4 /gnu | |
parent | d408d479336754bad0069e006093fa8cc8ebbbff (diff) | |
download | guix-07eff96a86670a693c1f9a5df52e5fc0062d4c78.tar.gz guix-07eff96a86670a693c1f9a5df52e5fc0062d4c78.zip |
gnu: cmake-bootstrap: Fix build for the Hurd.
* gnu/packages/cmake.scm (%common-disabled-tests/hurd): New variable.
(cmake-bootstrap) [inputs]: Include libuv for the Hurd too.
[arguments]: Add %common-disabled-tests/hurd to #:make-flags for the Hurd.
Also add a 'patch-hurd' phase to fix the build.
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/packages/cmake.scm | 43 |
1 files changed, 28 insertions, 15 deletions
diff --git a/gnu/packages/cmake.scm b/gnu/packages/cmake.scm index 821b8808f7..9064ca3822 100644 --- a/gnu/packages/cmake.scm +++ b/gnu/packages/cmake.scm @@ -10,7 +10,7 @@ ;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2019, 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2019 Pierre-Moana Levesque <pierre.moana.levesque@gmail.com> -;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> +;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2021 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. @@ -136,6 +136,19 @@ using the CMake build system.") ;; This test fails for unknown reason. "RunCMake.file-GET_RUNTIME_DEPENDENCIES")) +(define %common-disabled-tests/hurd + '("CTestTestTimeout" + "CTestTestRerunFailed" + "RunCMake.CompilerChange" + "RunCMake.ctest_test" + "RunCMake.file" + "RunCMake.BundleUtilities" + "RunCMake.configure_file" + "RunCMake.CTestTimeout" + "RunCMake.CTestTimeoutAfterMatch" + "RunCMake.CommandLine" + "RunCMake.CTestCommandLine")) + (define %preserved-third-party-files '(;; 'Source/cm_getdate.c' includes archive_getdate.c wholesale, so it must ;; be available along with the required headers. @@ -190,7 +203,10 @@ using the CMake build system.") "CTestTestSubdir" ; This test fails to build 2 of the 3 tests. ;; This test fails when ARGS (below) is in use, see ;; <https://gitlab.kitware.com/cmake/cmake/issues/17165>. - "CTestCoverageCollectGCOV"))) + "CTestCoverageCollectGCOV" + #$@(if (target-hurd?) + %common-disabled-tests/hurd + #~())))) (list (string-append ;; These arguments apply for the tests only. @@ -210,20 +226,17 @@ using the CMake build system.") ;; CMake uses its own configure script. (replace 'configure (lambda* (#:key (configure-flags '()) #:allow-other-keys) - (apply invoke "./configure" configure-flags)))))) + (apply invoke "./configure" configure-flags))) + #$@(if (target-hurd?) + #~((add-after 'unpack 'patch-hurd + (lambda _ + ;; Version 3.25.0 has a similar fix. + (substitute* "Utilities/cmlibuv/src/unix/udp.c" + (("!defined\\(__QNX__\\)") + "!defined(__GNU__)"))))) + #~())))) (inputs - (append - (if (target-hurd?) - '() - (list libuv)) ;not supported on the Hurd - (list bzip2 - curl - expat - file - jsoncpp - libarchive - rhash - zlib))) + (list libuv bzip2 curl expat file jsoncpp libarchive rhash zlib)) (native-search-paths (list (search-path-specification (variable "CMAKE_PREFIX_PATH") |