Browse Source

tools/cmake : Bump to 3.19.8

Resolves compat issues when building against newer distros and toolchains.
RISCi_ATOM 7 months ago
parent
commit
bea1f96217

+ 6 - 17
tools/cmake/Makefile

@@ -7,34 +7,23 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=cmake
-PKG_VERSION:=3.15.1
+PKG_VERSION:=3.19.8
+PKG_RELEASE:=1
 PKG_CPE_ID:=cpe:/a:kitware:cmake
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://github.com/Kitware/CMake/releases/download/v$(PKG_VERSION)/ \
-		https://cmake.org/files/v3.15/
-PKG_HASH:=18dec548d8f8b04d53c60f9cedcebaa6762f8425339d1e2c889c383d3ccdd7f7
+		https://cmake.org/files/v3.19/
+PKG_HASH:=09b4fa4837aae55c75fb170f6a6e2b44818deba48335d1969deddfbb34e30369
 
 HOST_BUILD_PARALLEL:=1
 HOST_CONFIGURE_PARALLEL:=1
 
 include $(INCLUDE_DIR)/host-build.mk
 
-# Workaround for GCC versions below 6.X and ccache
-# Reference: https://github.com/openwrt/openwrt/pull/1929
-GCC_DMPVER_GREPCMD := grep -E '^(4\.[8-9]|[5]\.?)'
-GCC_DMPVER_STRING := $(shell $(HOSTCC_NOCACHE) -dumpversion | $(GCC_DMPVER_GREPCMD))
-ifneq ($(GCC_DMPVER_STRING),)
-  ifeq ($(CONFIG_CCACHE),y)
-    $(info GCC version less than 6.0 detected, disabling CCACHE)
-    HOST_CONFIGURE_VARS:=$(filter-out CC=% gcc%",$(HOST_CONFIGURE_VARS)) CC="$(HOSTCC_NOCACHE)"
-    HOST_CONFIGURE_VARS:=$(filter-out CXX=% g++%",$(HOST_CONFIGURE_VARS)) CXX="$(HOSTCXX_NOCACHE)"
-      else
-    $(info GCC version greater or equal to 6.0 detected, no workaround set for CCACHE)
-  endif
-endif
-
 HOST_CONFIGURE_VARS += \
+	CC="$(HOSTCC_NOCACHE)" \
+	CXX="$(HOSTCXX_NOCACHE)" \
 	MAKEFLAGS="$(HOST_JOBS)" \
 	CXXFLAGS="$(HOST_CFLAGS)"
 

+ 0 - 34
tools/cmake/patches/100-disable_qt_tests.patch

@@ -1,34 +0,0 @@
---- a/Tests/RunCMake/CMakeLists.txt
-+++ b/Tests/RunCMake/CMakeLists.txt
-@@ -325,15 +325,6 @@ add_RunCMake_test(no_install_prefix)
- add_RunCMake_test(configure_file)
- add_RunCMake_test(CTestTimeoutAfterMatch)
- 
--find_package(Qt4 QUIET)
--find_package(Qt5Core QUIET)
--if (QT4_FOUND AND Qt5Core_FOUND AND NOT Qt5Core_VERSION VERSION_LESS 5.1.0)
--  add_RunCMake_test(IncompatibleQt)
--endif()
--if (QT4_FOUND)
--  add_RunCMake_test(ObsoleteQtMacros -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE})
--endif()
--
- find_package(PkgConfig QUIET)
- if(PKG_CONFIG_FOUND)
-   add_RunCMake_test(FindPkgConfig)
---- a/Tests/CMakeLists.txt
-+++ b/Tests/CMakeLists.txt
-@@ -483,13 +483,6 @@ if(BUILD_TESTING)
- 
-   list(APPEND TEST_BUILD_DIRS ${CMake_TEST_INSTALL_PREFIX})
- 
--  if(NOT DEFINED CMake_TEST_Qt4)
--    set(CMake_TEST_Qt4 1)
--  endif()
--  if(CMake_TEST_Qt4 AND NOT QT4_FOUND)
--    find_package(Qt4 QUIET)
--  endif()
--
-   if(CMake_TEST_Qt4 AND QT4_FOUND)
-     # test whether the Qt4 which has been found works, on some machines
-     # which run nightly builds there were errors like "wrong file format"

+ 33 - 0
tools/cmake/patches/100-no-testing.patch

@@ -0,0 +1,33 @@
+--- a/Modules/CTest.cmake
++++ b/Modules/CTest.cmake
+@@ -47,7 +47,7 @@ the :variable:`CTEST_USE_LAUNCHERS` vari
+ in the ``CTestConfig.cmake`` file.
+ #]=======================================================================]
+ 
+-option(BUILD_TESTING "Build the testing tree." ON)
++option(BUILD_TESTING "Build the testing tree." OFF)
+ 
+ # function to turn generator name into a version string
+ # like vs9 or vs10
+--- a/Modules/Dart.cmake
++++ b/Modules/Dart.cmake
+@@ -33,7 +33,7 @@ whether testing support should be enable
+ #
+ #
+ 
+-option(BUILD_TESTING "Build the testing tree." ON)
++option(BUILD_TESTING "Build the testing tree." OFF)
+ 
+ if(BUILD_TESTING)
+   find_package(Dart QUIET)
+--- a/Tests/Contracts/VTK/Dashboard.cmake.in
++++ b/Tests/Contracts/VTK/Dashboard.cmake.in
+@@ -25,7 +25,7 @@ ctest_empty_binary_directory(${CTEST_BIN
+ 
+ file(WRITE "${CTEST_BINARY_DIRECTORY}/CMakeCache.txt" "
+   VTK_BUILD_EXAMPLES:BOOL=ON
+-  VTK_BUILD_TESTING:STRING=WANT
++  VTK_BUILD_TESTING:STRING=OFF
+   VTK_WRAP_PYTHON:BOOL=ON
+   ExternalData_OBJECT_STORES:FILEPATH=@base_dir@/ExternalData
+ ")

+ 0 - 11
tools/cmake/patches/110-libarchive-fix-libressl-compat.patch

@@ -1,11 +0,0 @@
---- a/Utilities/cmlibarchive/libarchive/archive_openssl_evp_private.h
-+++ b/Utilities/cmlibarchive/libarchive/archive_openssl_evp_private.h
-@@ -28,7 +28,7 @@
- #include <openssl/evp.h>
- #include <openssl/opensslv.h>
- 
--#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
- #include <stdlib.h> /* malloc, free */
- #include <string.h> /* memset */
- static inline EVP_MD_CTX *EVP_MD_CTX_new(void)

+ 3 - 3
tools/cmake/patches/120-curl-fix-libressl-linking.patch

@@ -20,10 +20,10 @@ Signed-off-by: Jo-Philipp Wich <jo@mein.io>
 ---
 --- a/Utilities/cmcurl/CMakeLists.txt
 +++ b/Utilities/cmcurl/CMakeLists.txt
-@@ -453,6 +453,14 @@ if(CMAKE_USE_OPENSSL)
+@@ -508,6 +508,14 @@ if(CMAKE_USE_OPENSSL)
+   endif()
+   set(SSL_ENABLED ON)
    set(USE_OPENSSL ON)
-   set(HAVE_LIBCRYPTO ON)
-   set(HAVE_LIBSSL ON)
 +  check_library_exists("rt" clock_gettime "" HAVE_LIBRT)
 +  if(HAVE_LIBRT)
 +    list(APPEND OPENSSL_LIBRARIES rt)

+ 4 - 4
tools/cmake/patches/130-bootstrap_parallel_make_flag.patch

@@ -1,14 +1,14 @@
 --- a/bootstrap
 +++ b/bootstrap
-@@ -1168,7 +1168,10 @@ int main(){ printf("1%c", (char)0x0a); r
+@@ -1397,7 +1397,10 @@ int main(){ printf("1%c", (char)0x0a); r
  ' > "test.c"
  cmake_original_make_flags="${cmake_make_flags}"
- if [ "x${cmake_parallel_make}" != "x" ]; then
+ if test "x${cmake_parallel_make}" != "x"; then
 -  cmake_make_flags="${cmake_make_flags} -j ${cmake_parallel_make}"
-+  case "$cmake_paralle_make" in
++  case "$cmake_parallel_make" in
 +    [0-9]*) cmake_parallel_make="-j ${cmake_parallel_make}";;
 +  esac
 +  cmake_make_flags="${cmake_make_flags} ${cmake_parallel_make}"
  fi
  for a in ${cmake_make_processors}; do
-   if [ -z "${cmake_make_processor}" ] && cmake_try_make "${a}" "${cmake_make_flags}" >> ../cmake_bootstrap.log 2>&1; then
+   if test -z "${cmake_make_processor}" && cmake_try_make "${a}" "${cmake_make_flags}" >> ../cmake_bootstrap.log 2>&1; then

+ 0 - 25
tools/cmake/patches/140-libarchive-fix-libressl.patch

@@ -1,25 +0,0 @@
-From 5da00ad75b09e262774ec3675bbe4d5a4502a852 Mon Sep 17 00:00:00 2001
-From: Bernard Spil <brnrd@FreeBSD.org>
-Date: Sun, 1 Apr 2018 23:01:44 +0200
-Subject: [PATCH] fix build with LibreSSL 2.7
-
-LibreSSL 2.7 adds OpenSSL 1.1 API leading to conflicts on method names
-
-See also: https://bugs.freebsd.org/226853
-Signed-off-by: Bernard Spil <brnrd@FreeBSD.org>
----
- libarchive/archive_openssl_hmac_private.h | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
---- a/Utilities/cmlibarchive/libarchive/archive_openssl_evp_private.h
-+++ b/Utilities/cmlibarchive/libarchive/archive_openssl_evp_private.h
-@@ -28,7 +28,8 @@
- #include <openssl/evp.h>
- #include <openssl/opensslv.h>
- 
--#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
-+	(defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x20700000L)
- #include <stdlib.h> /* malloc, free */
- #include <string.h> /* memset */
- static inline EVP_MD_CTX *EVP_MD_CTX_new(void)