gnu: cmake: Update to 3.10.2.
* gnu/packages/cmake.scm (cmake): Update to 3.10.2. [source]: Remove cmake-fix-tests patch. Do not remove bundled cmlibuv. [arguments]: Replace system* with invoke. [inputs]: Add rhash. Sort. [home-page]: Update URL. * gnu/packages/patches/cmake-fix-tests.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Unregister it.master
parent
0223db58ef
commit
89db6c6de9
|
@ -598,7 +598,6 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/clisp-remove-failing-test.patch \
|
||||
%D%/packages/patches/clucene-pkgconfig.patch \
|
||||
%D%/packages/patches/clx-remove-demo.patch \
|
||||
%D%/packages/patches/cmake-fix-tests.patch \
|
||||
%D%/packages/patches/coda-use-system-libs.patch \
|
||||
%D%/packages/patches/cool-retro-term-dont-check-uninit-member.patch \
|
||||
%D%/packages/patches/cool-retro-term-fix-array-size.patch \
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
|
||||
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -41,7 +42,7 @@
|
|||
(define-public cmake
|
||||
(package
|
||||
(name "cmake")
|
||||
(version "3.7.2")
|
||||
(version "3.10.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.cmake.org/files/v"
|
||||
|
@ -49,8 +50,7 @@
|
|||
"/cmake-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1q6a60695prpzzsmczm2xrgxdb61fyjznb04dr6yls6iwv24c4nw"))
|
||||
(patches (search-patches "cmake-fix-tests.patch"))
|
||||
"12r1ldq4l032d6f5gc22dlayck4cr29cczqsl9xf0vdm9anzml40"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
|
@ -58,18 +58,31 @@
|
|||
(with-directory-excursion "Utilities"
|
||||
(for-each delete-file-recursively
|
||||
'("cmbzip2"
|
||||
;"cmcompress"
|
||||
;; "cmcompress"
|
||||
"cmcurl"
|
||||
"cmexpat"
|
||||
;"cmjsoncpp"
|
||||
;"cmlibarchive"
|
||||
;; "cmjsoncpp"
|
||||
;; "cmlibarchive"
|
||||
"cmliblzma"
|
||||
"cmlibuv"
|
||||
;; "cmlibuv"
|
||||
"cmzlib"))
|
||||
#t)))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:test-target "test"
|
||||
#:make-flags
|
||||
(let ((skipped-tests
|
||||
(list "BundleUtilities" ; This test fails on Guix.
|
||||
"CTestTestSubdir" ; This test fails to build 2 of the 3 tests.
|
||||
"CMake.String" ; This test depends on clock being set to
|
||||
; current time, which is not the case in
|
||||
; the build environment.
|
||||
;; These tests requires network access.
|
||||
"CTestCoverageCollectGCOV"
|
||||
"CTestTestUpload")))
|
||||
(list
|
||||
(string-append
|
||||
"ARGS=--exclude-regex ^\\(" (string-join skipped-tests "\\|") "\\)$")))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'patch-bin-sh
|
||||
|
@ -78,8 +91,6 @@
|
|||
;; files.
|
||||
(substitute*
|
||||
'("Modules/CompilerId/Xcode-3.pbxproj.in"
|
||||
"Modules/CompilerId/Xcode-1.pbxproj.in"
|
||||
"Modules/CompilerId/Xcode-2.pbxproj.in"
|
||||
"Modules/CPack.RuntimeScript.in"
|
||||
"Source/cmakexbuild.cxx"
|
||||
"Source/cmGlobalXCodeGenerator.cxx"
|
||||
|
@ -102,43 +113,45 @@
|
|||
(replace 'configure
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(zero? (system*
|
||||
"./configure"
|
||||
(string-append "--prefix=" out)
|
||||
"--system-libs"
|
||||
"--no-system-jsoncpp" ; FIXME: Circular dependency.
|
||||
;; By default, the man pages and other docs land
|
||||
;; in PREFIX/man and PREFIX/doc, but we want them
|
||||
;; in share/{man,doc}. Note that unlike
|
||||
;; autoconf-generated configure scripts, cmake's
|
||||
;; configure prepends "PREFIX/" to what we pass
|
||||
;; to --mandir and --docdir.
|
||||
"--mandir=share/man"
|
||||
,(string-append
|
||||
"--docdir=share/doc/cmake-"
|
||||
(version-major+minor version)))))))
|
||||
(invoke
|
||||
"./configure"
|
||||
(string-append "--prefix=" out)
|
||||
"--system-libs"
|
||||
"--no-system-jsoncpp" ; FIXME: Circular dependency.
|
||||
;; By default, the man pages and other docs land
|
||||
;; in PREFIX/man and PREFIX/doc, but we want them
|
||||
;; in share/{man,doc}. Note that unlike
|
||||
;; autoconf-generated configure scripts, cmake's
|
||||
;; configure prepends "PREFIX/" to what we pass
|
||||
;; to --mandir and --docdir.
|
||||
"--mandir=share/man"
|
||||
,(string-append
|
||||
"--docdir=share/doc/cmake-"
|
||||
(version-major+minor version))))))
|
||||
(add-before 'check 'set-test-environment
|
||||
(lambda _
|
||||
;; Get verbose output from failed tests.
|
||||
(setenv "CTEST_OUTPUT_ON_FAILURE" "TRUE")
|
||||
;; Parallel tests fail in the 3.10.2 release.
|
||||
;; Run tests in parallel.
|
||||
(setenv "CTEST_PARALLEL_LEVEL"
|
||||
(number->string (parallel-job-count)))
|
||||
;; (setenv "CTEST_PARALLEL_LEVEL"
|
||||
;; (number->string (parallel-job-count)))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("file" ,file)
|
||||
("curl" ,curl)
|
||||
("zlib" ,zlib)
|
||||
("expat" ,expat)
|
||||
("bzip2" ,bzip2)
|
||||
("ncurses" ,ncurses) ; required for ccmake
|
||||
("libuv" ,libuv)
|
||||
("libarchive" ,libarchive)))
|
||||
`(("bzip2" ,bzip2)
|
||||
("curl" ,curl)
|
||||
("expat" ,expat)
|
||||
("file" ,file)
|
||||
("libarchive" ,libarchive)
|
||||
("libuv" ,libuv)
|
||||
("ncurses" ,ncurses) ; required for ccmake
|
||||
("rhash" ,rhash)
|
||||
("zlib" ,zlib)))
|
||||
(native-search-paths
|
||||
(list (search-path-specification
|
||||
(variable "CMAKE_PREFIX_PATH")
|
||||
(files '("")))))
|
||||
(home-page "https://www.cmake.org/")
|
||||
(variable "CMAKE_PREFIX_PATH")
|
||||
(files '("")))))
|
||||
(home-page "https://cmake.org/")
|
||||
(synopsis "Cross-platform build system")
|
||||
(description
|
||||
"CMake is a family of tools designed to build, test and package software.
|
||||
|
|
|
@ -1,120 +0,0 @@
|
|||
From af0a62dadfb3db25880bc653e2e4c97435a604c9 Mon Sep 17 00:00:00 2001
|
||||
From: Efraim Flashner <efraim@flashner.co.il>
|
||||
Date: Mon, 29 Aug 2016 20:07:58 +0300
|
||||
Subject: [PATCH] cmake-fix-tests
|
||||
|
||||
---
|
||||
Tests/CMakeLists.txt | 83 ++++++++++++++++++++++++++++------------------------
|
||||
1 file changed, 44 insertions(+), 39 deletions(-)
|
||||
|
||||
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
|
||||
index f21e430..56014a2 100644
|
||||
--- a/Tests/CMakeLists.txt
|
||||
+++ b/Tests/CMakeLists.txt
|
||||
@@ -416,10 +416,12 @@ if(BUILD_TESTING)
|
||||
endif()
|
||||
|
||||
# run test for BundleUtilities on supported platforms/compilers
|
||||
- if(MSVC OR
|
||||
- MINGW OR
|
||||
- CMAKE_SYSTEM_NAME MATCHES "Linux" OR
|
||||
- CMAKE_SYSTEM_NAME MATCHES "Darwin")
|
||||
+# if(MSVC OR
|
||||
+# MINGW OR
|
||||
+# CMAKE_SYSTEM_NAME MATCHES "Linux" OR
|
||||
+# CMAKE_SYSTEM_NAME MATCHES "Darwin")
|
||||
+# This test fails on Guix: skip it.
|
||||
+ if(FALSE)
|
||||
if(NOT "${CMAKE_GENERATOR}" STREQUAL "Watcom WMake")
|
||||
|
||||
add_test(BundleUtilities ${CMAKE_CTEST_COMMAND}
|
||||
@@ -2481,30 +2483,32 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release
|
||||
PASS_REGULAR_EXPRESSION "Could not find executable"
|
||||
FAIL_REGULAR_EXPRESSION "SegFault")
|
||||
|
||||
- configure_file(
|
||||
- "${CMake_SOURCE_DIR}/Tests/CTestTestUpload/test.cmake.in"
|
||||
- "${CMake_BINARY_DIR}/Tests/CTestTestUpload/test.cmake"
|
||||
- @ONLY ESCAPE_QUOTES)
|
||||
- add_test(CTestTestUpload ${CMAKE_CTEST_COMMAND}
|
||||
- -S "${CMake_BINARY_DIR}/Tests/CTestTestUpload/test.cmake" -V
|
||||
- --output-log "${CMake_BINARY_DIR}/Tests/CTestTestUpload/testOut.log"
|
||||
- )
|
||||
- set_tests_properties(CTestTestUpload PROPERTIES
|
||||
- PASS_REGULAR_EXPRESSION "Upload\\.xml")
|
||||
-
|
||||
- configure_file(
|
||||
- "${CMake_SOURCE_DIR}/Tests/CTestCoverageCollectGCOV/test.cmake.in"
|
||||
- "${CMake_BINARY_DIR}/Tests/CTestCoverageCollectGCOV/test.cmake"
|
||||
- @ONLY ESCAPE_QUOTES)
|
||||
- add_test(CTestCoverageCollectGCOV ${CMAKE_CTEST_COMMAND}
|
||||
- -C \${CTEST_CONFIGURATION_TYPE}
|
||||
- -S "${CMake_BINARY_DIR}/Tests/CTestCoverageCollectGCOV/test.cmake" -VV
|
||||
- --output-log "${CMake_BINARY_DIR}/Tests/CTestCoverageCollectGCOV/testOut.log"
|
||||
- )
|
||||
- set_tests_properties(CTestCoverageCollectGCOV PROPERTIES
|
||||
- PASS_REGULAR_EXPRESSION
|
||||
- "PASSED with correct output.*Testing/CoverageInfo/main.cpp.gcov")
|
||||
- set_property(TEST CTestCoverageCollectGCOV PROPERTY ENVIRONMENT CTEST_PARALLEL_LEVEL=)
|
||||
+# This test requires network connectivity: skip it.
|
||||
+# configure_file(
|
||||
+# "${CMake_SOURCE_DIR}/Tests/CTestTestUpload/test.cmake.in"
|
||||
+# "${CMake_BINARY_DIR}/Tests/CTestTestUpload/test.cmake"
|
||||
+# @ONLY ESCAPE_QUOTES)
|
||||
+# add_test(CTestTestUpload ${CMAKE_CTEST_COMMAND}
|
||||
+# -S "${CMake_BINARY_DIR}/Tests/CTestTestUpload/test.cmake" -V
|
||||
+# --output-log "${CMake_BINARY_DIR}/Tests/CTestTestUpload/testOut.log"
|
||||
+# )
|
||||
+# set_tests_properties(CTestTestUpload PROPERTIES
|
||||
+# PASS_REGULAR_EXPRESSION "Upload\\.xml")
|
||||
+
|
||||
+# This test times out
|
||||
+# configure_file(
|
||||
+# "${CMake_SOURCE_DIR}/Tests/CTestCoverageCollectGCOV/test.cmake.in"
|
||||
+# "${CMake_BINARY_DIR}/Tests/CTestCoverageCollectGCOV/test.cmake"
|
||||
+# @ONLY ESCAPE_QUOTES)
|
||||
+# add_test(CTestCoverageCollectGCOV ${CMAKE_CTEST_COMMAND}
|
||||
+# -C \${CTEST_CONFIGURATION_TYPE}
|
||||
+# -S "${CMake_BINARY_DIR}/Tests/CTestCoverageCollectGCOV/test.cmake" -VV
|
||||
+# --output-log "${CMake_BINARY_DIR}/Tests/CTestCoverageCollectGCOV/testOut.log"
|
||||
+# )
|
||||
+# set_tests_properties(CTestCoverageCollectGCOV PROPERTIES
|
||||
+# PASS_REGULAR_EXPRESSION
|
||||
+# "PASSED with correct output.*Testing/CoverageInfo/main.cpp.gcov")
|
||||
+# set_property(TEST CTestCoverageCollectGCOV PROPERTY ENVIRONMENT CTEST_PARALLEL_LEVEL=)
|
||||
|
||||
configure_file(
|
||||
"${CMake_SOURCE_DIR}/Tests/CTestTestEmptyBinaryDirectory/test.cmake.in"
|
||||
@@ -2860,17 +2864,18 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release
|
||||
set_tests_properties(CTestTestStopTime PROPERTIES
|
||||
PASS_REGULAR_EXPRESSION "The stop time has been passed")
|
||||
|
||||
- configure_file(
|
||||
- "${CMake_SOURCE_DIR}/Tests/CTestTestSubdir/test.cmake.in"
|
||||
- "${CMake_BINARY_DIR}/Tests/CTestTestSubdir/test.cmake"
|
||||
- @ONLY ESCAPE_QUOTES)
|
||||
- add_test(CTestTestSubdir ${CMAKE_CTEST_COMMAND}
|
||||
- -S "${CMake_BINARY_DIR}/Tests/CTestTestSubdir/test.cmake" -V
|
||||
- --output-log "${CMake_BINARY_DIR}/Tests/CTestTestSubdir/testOutput.log"
|
||||
- )
|
||||
- #make sure all 3 subdirs were added
|
||||
- set_tests_properties(CTestTestSubdir PROPERTIES
|
||||
- PASS_REGULAR_EXPRESSION "0 tests failed out of 3")
|
||||
+# This test fails to build 2 of the 3 tests
|
||||
+# configure_file(
|
||||
+# "${CMake_SOURCE_DIR}/Tests/CTestTestSubdir/test.cmake.in"
|
||||
+# "${CMake_BINARY_DIR}/Tests/CTestTestSubdir/test.cmake"
|
||||
+# @ONLY ESCAPE_QUOTES)
|
||||
+# add_test(CTestTestSubdir ${CMAKE_CTEST_COMMAND}
|
||||
+# -S "${CMake_BINARY_DIR}/Tests/CTestTestSubdir/test.cmake" -V
|
||||
+# --output-log "${CMake_BINARY_DIR}/Tests/CTestTestSubdir/testOutput.log"
|
||||
+# )
|
||||
+# #make sure all 3 subdirs were added
|
||||
+# set_tests_properties(CTestTestSubdir PROPERTIES
|
||||
+# PASS_REGULAR_EXPRESSION "0 tests failed out of 3")
|
||||
|
||||
configure_file(
|
||||
"${CMake_SOURCE_DIR}/Tests/CTestTestTimeout/test.cmake.in"
|
||||
--
|
||||
2.9.3
|
||||
|
Reference in New Issue