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.
parent
d408d47933
commit
07eff96a86
|
@ -10,7 +10,7 @@
|
||||||
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;; Copyright © 2019, 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
;;; Copyright © 2019, 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||||
;;; Copyright © 2019 Pierre-Moana Levesque <pierre.moana.levesque@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>
|
;;; Copyright © 2021 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
|
@ -136,6 +136,19 @@ using the CMake build system.")
|
||||||
;; This test fails for unknown reason.
|
;; This test fails for unknown reason.
|
||||||
"RunCMake.file-GET_RUNTIME_DEPENDENCIES"))
|
"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
|
(define %preserved-third-party-files
|
||||||
'(;; 'Source/cm_getdate.c' includes archive_getdate.c wholesale, so it must
|
'(;; 'Source/cm_getdate.c' includes archive_getdate.c wholesale, so it must
|
||||||
;; be available along with the required headers.
|
;; 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.
|
"CTestTestSubdir" ; This test fails to build 2 of the 3 tests.
|
||||||
;; This test fails when ARGS (below) is in use, see
|
;; This test fails when ARGS (below) is in use, see
|
||||||
;; <https://gitlab.kitware.com/cmake/cmake/issues/17165>.
|
;; <https://gitlab.kitware.com/cmake/cmake/issues/17165>.
|
||||||
"CTestCoverageCollectGCOV")))
|
"CTestCoverageCollectGCOV"
|
||||||
|
#$@(if (target-hurd?)
|
||||||
|
%common-disabled-tests/hurd
|
||||||
|
#~()))))
|
||||||
(list
|
(list
|
||||||
(string-append
|
(string-append
|
||||||
;; These arguments apply for the tests only.
|
;; These arguments apply for the tests only.
|
||||||
|
@ -210,20 +226,17 @@ using the CMake build system.")
|
||||||
;; CMake uses its own configure script.
|
;; CMake uses its own configure script.
|
||||||
(replace 'configure
|
(replace 'configure
|
||||||
(lambda* (#:key (configure-flags '()) #:allow-other-keys)
|
(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
|
(inputs
|
||||||
(append
|
(list libuv bzip2 curl expat file jsoncpp libarchive rhash zlib))
|
||||||
(if (target-hurd?)
|
|
||||||
'()
|
|
||||||
(list libuv)) ;not supported on the Hurd
|
|
||||||
(list bzip2
|
|
||||||
curl
|
|
||||||
expat
|
|
||||||
file
|
|
||||||
jsoncpp
|
|
||||||
libarchive
|
|
||||||
rhash
|
|
||||||
zlib)))
|
|
||||||
(native-search-paths
|
(native-search-paths
|
||||||
(list (search-path-specification
|
(list (search-path-specification
|
||||||
(variable "CMAKE_PREFIX_PATH")
|
(variable "CMAKE_PREFIX_PATH")
|
||||||
|
|
Reference in New Issue