Compare commits

..

No commits in common. 'c9' and 'i9-spice' have entirely different histories.
c9 ... i9-spice

@ -1 +1 @@
0c0c76bd90092bbc36288ffd25d8e7f7ebc3c2e5 SOURCES/cmake-3.20.2.tar.gz
cf332727ac863cc0c86ac4f8cd3b711d05a5e417 SOURCES/cmake-3.28.3.tar.gz

2
.gitignore vendored

@ -1 +1 @@
SOURCES/cmake-3.20.2.tar.gz
SOURCES/cmake-3.28.3.tar.gz

@ -1,142 +0,0 @@
From 8db50771206c44f6e2b301c78b1cad8abc46ece3 Mon Sep 17 00:00:00 2001
From: Domen Vrankar <domen.vrankar@gmail.com>
Date: Mon, 29 Mar 2021 00:06:05 +0200
Subject: [PATCH 1/3] CPackRPM: handle scripts in debuginfo single package mode
Enabling CPACK_RPM_DEBUGINFO_SINGLE_PACKAGE while
using rpm install or erase scripts resulted in
resulted missing scripts for non default components.
Fixes: #21974
(cherry picked from commit 31c184ad690be45494cf997df71ad09293a0d4b0)
---
Modules/Internal/CPack/CPackRPM.cmake | 19 +++++++++++++++++++
.../RunCMake/CPack/RPM/Prerequirements.cmake | 7 +++++++
Tests/RunCMake/CPack/RunCMakeTest.cmake | 2 +-
.../tests/INSTALL_SCRIPTS/ExpectedFiles.cmake | 7 ++++++-
...RPM-COMPONENT-single_debug_info-stderr.txt | 1 +
.../INSTALL_SCRIPTS/RPM-Prerequirements.cmake | 11 +++++++++++
.../CPack/tests/INSTALL_SCRIPTS/test.cmake | 6 ++++++
7 files changed, 51 insertions(+), 2 deletions(-)
create mode 100644 Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/RPM-COMPONENT-single_debug_info-stderr.txt
create mode 100644 Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/RPM-Prerequirements.cmake
diff --git a/Modules/Internal/CPack/CPackRPM.cmake b/Modules/Internal/CPack/CPackRPM.cmake
index 08bbc6804c..2ee062238c 100644
--- a/Modules/Internal/CPack/CPackRPM.cmake
+++ b/Modules/Internal/CPack/CPackRPM.cmake
@@ -1637,6 +1637,25 @@ Vendor: \@CPACK_RPM_PACKAGE_VENDOR\@
%description -n \@CPACK_RPM_PACKAGE_NAME\@
\@CPACK_RPM_PACKAGE_DESCRIPTION\@
+%post -n \@CPACK_RPM_PACKAGE_NAME\@
+\@RPM_SYMLINK_POSTINSTALL\@
+\@CPACK_RPM_SPEC_POSTINSTALL\@
+
+%posttrans -n \@CPACK_RPM_PACKAGE_NAME\@
+\@CPACK_RPM_SPEC_POSTTRANS\@
+
+%postun -n \@CPACK_RPM_PACKAGE_NAME\@
+\@CPACK_RPM_SPEC_POSTUNINSTALL\@
+
+%pre -n \@CPACK_RPM_PACKAGE_NAME\@
+\@CPACK_RPM_SPEC_PREINSTALL\@
+
+%pretrans -n \@CPACK_RPM_PACKAGE_NAME\@
+\@CPACK_RPM_SPEC_PRETRANS\@
+
+%preun -n \@CPACK_RPM_PACKAGE_NAME\@
+\@CPACK_RPM_SPEC_PREUNINSTALL\@
+
%files -n \@CPACK_RPM_PACKAGE_NAME\@
%defattr(\@TMP_DEFAULT_FILE_PERMISSIONS\@,\@TMP_DEFAULT_USER\@,\@TMP_DEFAULT_GROUP\@,\@TMP_DEFAULT_DIR_PERMISSIONS\@)
\@CPACK_RPM_INSTALL_FILES\@
diff --git a/Tests/RunCMake/CPack/RPM/Prerequirements.cmake b/Tests/RunCMake/CPack/RPM/Prerequirements.cmake
index 3416205bc6..e95cd15161 100644
--- a/Tests/RunCMake/CPack/RPM/Prerequirements.cmake
+++ b/Tests/RunCMake/CPack/RPM/Prerequirements.cmake
@@ -13,4 +13,11 @@ function(get_test_prerequirements found_var config_file)
"\nset(RPMBUILD_EXECUTABLE \"${RPMBUILD_EXECUTABLE}\")")
set(${found_var} true PARENT_SCOPE)
endif()
+
+ # optional tool for some tests
+ find_program(OBJDUMP_EXECUTABLE objdump)
+ if(OBJDUMP_EXECUTABLE)
+ file(APPEND "${config_file}"
+ "\nset(OBJDUMP_EXECUTABLE \"${OBJDUMP_EXECUTABLE}\")")
+ endif()
endfunction()
diff --git a/Tests/RunCMake/CPack/RunCMakeTest.cmake b/Tests/RunCMake/CPack/RunCMakeTest.cmake
index 15bfb60ee0..48b9c1d95c 100644
--- a/Tests/RunCMake/CPack/RunCMakeTest.cmake
+++ b/Tests/RunCMake/CPack/RunCMakeTest.cmake
@@ -16,7 +16,7 @@ run_cpack_test(VERSION "RPM.VERSION;DEB.VERSION" false "MONOLITHIC;COMPONENT")
run_cpack_test(EXTRA "DEB.EXTRA" false "COMPONENT")
run_cpack_test_subtests(GENERATE_SHLIBS "soversion_not_zero;soversion_zero" "DEB.GENERATE_SHLIBS" true "COMPONENT")
run_cpack_test(GENERATE_SHLIBS_LDCONFIG "DEB.GENERATE_SHLIBS_LDCONFIG" true "COMPONENT")
-run_cpack_test(INSTALL_SCRIPTS "RPM.INSTALL_SCRIPTS" false "COMPONENT")
+run_cpack_test_subtests(INSTALL_SCRIPTS "default;single_debug_info" "RPM.INSTALL_SCRIPTS" false "COMPONENT")
run_cpack_test(LONG_FILENAMES "DEB.LONG_FILENAMES" false "MONOLITHIC")
run_cpack_test_subtests(MAIN_COMPONENT "invalid;found" "RPM.MAIN_COMPONENT" false "COMPONENT")
run_cpack_test(MINIMAL "RPM.MINIMAL;DEB.MINIMAL;7Z;TBZ2;TGZ;TXZ;TZ;ZIP;STGZ;External" false "MONOLITHIC;COMPONENT")
diff --git a/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/ExpectedFiles.cmake b/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/ExpectedFiles.cmake
index de38df9ef4..29e36a33fb 100644
--- a/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/ExpectedFiles.cmake
+++ b/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/ExpectedFiles.cmake
@@ -1,5 +1,10 @@
+if(RunCMake_SUBTEST_SUFFIX STREQUAL "single_debug_info")
+ set(EXPECTED_FILE_1 "install_scripts-0.1.1-1.*.rpm")
+else()
+ set(EXPECTED_FILE_1_COMPONENT "foo")
+endif()
+
set(EXPECTED_FILES_COUNT "2")
-set(EXPECTED_FILE_1_COMPONENT "foo")
set(EXPECTED_FILE_CONTENT_1_LIST "/foo;/foo/CMakeLists.txt")
set(EXPECTED_FILE_2_COMPONENT "bar")
set(EXPECTED_FILE_CONTENT_2_LIST "/bar;/bar/CMakeLists.txt")
diff --git a/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/RPM-COMPONENT-single_debug_info-stderr.txt b/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/RPM-COMPONENT-single_debug_info-stderr.txt
new file mode 100644
index 0000000000..8d98f9debd
--- /dev/null
+++ b/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/RPM-COMPONENT-single_debug_info-stderr.txt
@@ -0,0 +1 @@
+.*
diff --git a/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/RPM-Prerequirements.cmake b/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/RPM-Prerequirements.cmake
new file mode 100644
index 0000000000..c5d20cc691
--- /dev/null
+++ b/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/RPM-Prerequirements.cmake
@@ -0,0 +1,11 @@
+function(get_test_prerequirements found_var config_file)
+ if(SUBTEST_SUFFIX STREQUAL "single_debug_info")
+ include(${config_file})
+
+ if(OBJDUMP_EXECUTABLE)
+ set(${found_var} true PARENT_SCOPE)
+ endif()
+ else()
+ set(${found_var} true PARENT_SCOPE)
+ endif()
+endfunction()
diff --git a/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/test.cmake b/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/test.cmake
index c200fa502c..6877c57744 100644
--- a/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/test.cmake
+++ b/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/test.cmake
@@ -24,6 +24,12 @@ if(GENERATOR_TYPE STREQUAL "RPM")
"${CMAKE_CURRENT_BINARY_DIR}/pre_trans_foo.sh")
set(CPACK_RPM_foo_POST_TRANS_SCRIPT_FILE
"${CMAKE_CURRENT_BINARY_DIR}/post_trans_foo.sh")
+
+ if(RunCMake_SUBTEST_SUFFIX STREQUAL "single_debug_info")
+ set(CPACK_RPM_MAIN_COMPONENT "foo")
+ set(CPACK_RPM_DEBUGINFO_SINGLE_PACKAGE ON)
+ set(CPACK_RPM_FOO_FILE_NAME "RPM-DEFAULT")
+ endif()
endif()
set(CMAKE_BUILD_WITH_INSTALL_RPATH 1)
--
2.40.1

@ -1,41 +0,0 @@
From f72734ff7712d6aae837f940a45d6e7508bb182c Mon Sep 17 00:00:00 2001
From: Brad King <brad.king@kitware.com>
Date: Thu, 20 Oct 2022 13:38:20 -0400
Subject: [PATCH] Tests: Explicitly allow usage of git file-based protocol in
test cases
Due to CVE-2022-39253, Git 2.30.6 sets `protocol.file.allow=user` by
default. The change has also been backported to other Git versions by
distros. This breaks some of our test cases that use the file-based
protocol locally to simulate real workflows without requiring network
access. In these cases the file protocol is safe, so explicitly enable
it in the tests.
(cherry picked from commit 79ce0f434e916684d734e136b92e14f472a9d14a)
---
Tests/CMakeLists.txt | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
index 8e7c04fbd0..d011020f99 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
@@ -1540,6 +1540,7 @@ if(BUILD_TESTING)
)
list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/ExternalProject")
set_tests_properties(ExternalProject PROPERTIES
+ ENVIRONMENT GIT_ALLOW_PROTOCOL=file
RUN_SERIAL 1
TIMEOUT ${CMAKE_LONG_TEST_TIMEOUT})
@@ -2653,6 +2654,7 @@ if(BUILD_TESTING)
-P "${CMake_BINARY_DIR}/Tests/CTestUpdateGIT.cmake"
)
list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/${CTestUpdateGIT_DIR}")
+ set_property(TEST CTest.UpdateGIT PROPERTY ENVIRONMENT GIT_ALLOW_PROTOCOL=file)
endif()
# Test CTest Update with HG
--
2.31.1

@ -1,390 +0,0 @@
From b085a0fc400d005f5a70b4148ac7d946967d50dc Mon Sep 17 00:00:00 2001
From: Domen Vrankar <domen.vrankar@gmail.com>
Date: Thu, 1 Apr 2021 22:28:24 +0200
Subject: [PATCH 2/3] CPackRPM: add scriplets tags only if scripts exist
Scriplet tags should not be added to generated
spec files if scripts weren't provided as those
tags are otherwise present in generated rpm file
even if the script wasn't provided thereby
generating unneeded dependency on shell.
Fixes: #21345
(cherry picked from commit 34c8a23044eaf8d56f405c4c9f13b53d0b47c963)
---
Modules/Internal/CPack/CPackRPM.cmake | 103 ++++++++++------
Tests/RunCMake/CPack/RunCMakeTest.cmake | 2 +-
.../tests/INSTALL_SCRIPTS/ExpectedFiles.cmake | 2 +-
...NT-no_scripts_single_debug_info-stderr.txt | 1 +
.../INSTALL_SCRIPTS/RPM-Prerequirements.cmake | 2 +-
.../tests/INSTALL_SCRIPTS/VerifyResult.cmake | 39 ++++---
.../CPack/tests/INSTALL_SCRIPTS/test.cmake | 110 +++++++++---------
7 files changed, 153 insertions(+), 106 deletions(-)
create mode 100644 Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/RPM-COMPONENT-no_scripts_single_debug_info-stderr.txt
diff --git a/Modules/Internal/CPack/CPackRPM.cmake b/Modules/Internal/CPack/CPackRPM.cmake
index 2ee062238c..d4d13b8367 100644
--- a/Modules/Internal/CPack/CPackRPM.cmake
+++ b/Modules/Internal/CPack/CPackRPM.cmake
@@ -6,6 +6,56 @@
cmake_policy(PUSH)
cmake_policy(SET CMP0057 NEW) # if IN_LIST
+function(set_spec_script_if_enabled TYPE PACKAGE_NAME VAR)
+ if(NOT "${VAR}" STREQUAL "" AND NOT "${VAR}" STREQUAL "\n")
+ if(PACKAGE_NAME)
+ set(PACKAGE_NAME " -n ${PACKAGE_NAME}")
+ endif()
+ set(${TYPE}_
+ "%${TYPE}${PACKAGE_NAME}\n"
+ "${VAR}\n" PARENT_SCOPE)
+ else()
+ set(${TYPE} "" PARENT_SCOPE)
+ endif()
+endfunction()
+
+macro(set_spec_scripts PACKAGE_NAME)
+ # we should only set scripts that were provided
+ # as script announcement without content inside
+ # spec file will generate unneeded dependency
+ # on shell
+
+ set_spec_script_if_enabled(
+ "post"
+ "${PACKAGE_NAME}"
+ "${RPM_SYMLINK_POSTINSTALL}\n${CPACK_RPM_SPEC_POSTINSTALL}")
+
+ set_spec_script_if_enabled(
+ "posttrans"
+ "${PACKAGE_NAME}"
+ "${CPACK_RPM_SPEC_POSTTRANS}")
+
+ set_spec_script_if_enabled(
+ "postun"
+ "${PACKAGE_NAME}"
+ "${CPACK_RPM_SPEC_POSTUNINSTALL}")
+
+ set_spec_script_if_enabled(
+ "pre"
+ "${PACKAGE_NAME}"
+ "${CPACK_RPM_SPEC_PREINSTALL}")
+
+ set_spec_script_if_enabled(
+ "pretrans"
+ "${PACKAGE_NAME}"
+ "${CPACK_RPM_SPEC_PRETRANS}")
+
+ set_spec_script_if_enabled(
+ "preun"
+ "${PACKAGE_NAME}"
+ "${CPACK_RPM_SPEC_PREUNINSTALL}")
+endmacro()
+
function(get_file_permissions FILE RETURN_VAR)
execute_process(COMMAND ls -l ${FILE}
OUTPUT_VARIABLE permissions_
@@ -1607,6 +1657,9 @@ Vendor: \@CPACK_RPM_PACKAGE_VENDOR\@
)
elseif(GENERATE_SPEC_PARTS) # binary rpm with single debuginfo package
+
+ set_spec_scripts("${CPACK_RPM_PACKAGE_NAME}")
+
file(WRITE ${CPACK_RPM_BINARY_SPECFILE}.in
"# -*- rpm-spec -*-
%package -n \@CPACK_RPM_PACKAGE_NAME\@
@@ -1637,24 +1690,12 @@ Vendor: \@CPACK_RPM_PACKAGE_VENDOR\@
%description -n \@CPACK_RPM_PACKAGE_NAME\@
\@CPACK_RPM_PACKAGE_DESCRIPTION\@
-%post -n \@CPACK_RPM_PACKAGE_NAME\@
-\@RPM_SYMLINK_POSTINSTALL\@
-\@CPACK_RPM_SPEC_POSTINSTALL\@
-
-%posttrans -n \@CPACK_RPM_PACKAGE_NAME\@
-\@CPACK_RPM_SPEC_POSTTRANS\@
-
-%postun -n \@CPACK_RPM_PACKAGE_NAME\@
-\@CPACK_RPM_SPEC_POSTUNINSTALL\@
-
-%pre -n \@CPACK_RPM_PACKAGE_NAME\@
-\@CPACK_RPM_SPEC_PREINSTALL\@
-
-%pretrans -n \@CPACK_RPM_PACKAGE_NAME\@
-\@CPACK_RPM_SPEC_PRETRANS\@
-
-%preun -n \@CPACK_RPM_PACKAGE_NAME\@
-\@CPACK_RPM_SPEC_PREUNINSTALL\@
+\@post_\@
+\@posttrans_\@
+\@postun_\@
+\@pre_\@
+\@pretrans_\@
+\@preun_\@
%files -n \@CPACK_RPM_PACKAGE_NAME\@
%defattr(\@TMP_DEFAULT_FILE_PERMISSIONS\@,\@TMP_DEFAULT_USER\@,\@TMP_DEFAULT_GROUP\@,\@TMP_DEFAULT_DIR_PERMISSIONS\@)
@@ -1681,6 +1722,8 @@ Vendor: \@CPACK_RPM_PACKAGE_VENDOR\@
set(RPMBUILD_FLAGS "-bb")
if(CPACK_RPM_GENERATE_USER_BINARY_SPECFILE_TEMPLATE OR NOT CPACK_RPM_USER_BINARY_SPECFILE)
+ set_spec_scripts("")
+
file(WRITE ${CPACK_RPM_BINARY_SPECFILE}.in
"# Restore old style debuginfo creation for rpm >= 4.14.
%undefine _debugsource_packages
@@ -1744,24 +1787,12 @@ mv %_topdir/tmpBBroot $RPM_BUILD_ROOT
%clean
-%post
-\@RPM_SYMLINK_POSTINSTALL\@
-\@CPACK_RPM_SPEC_POSTINSTALL\@
-
-%posttrans
-\@CPACK_RPM_SPEC_POSTTRANS\@
-
-%postun
-\@CPACK_RPM_SPEC_POSTUNINSTALL\@
-
-%pre
-\@CPACK_RPM_SPEC_PREINSTALL\@
-
-%pretrans
-\@CPACK_RPM_SPEC_PRETRANS\@
-
-%preun
-\@CPACK_RPM_SPEC_PREUNINSTALL\@
+\@post_\@
+\@posttrans_\@
+\@postun_\@
+\@pre_\@
+\@pretrans_\@
+\@preun_\@
%files
%defattr(\@TMP_DEFAULT_FILE_PERMISSIONS\@,\@TMP_DEFAULT_USER\@,\@TMP_DEFAULT_GROUP\@,\@TMP_DEFAULT_DIR_PERMISSIONS\@)
diff --git a/Tests/RunCMake/CPack/RunCMakeTest.cmake b/Tests/RunCMake/CPack/RunCMakeTest.cmake
index 48b9c1d95c..a3c72a1cf2 100644
--- a/Tests/RunCMake/CPack/RunCMakeTest.cmake
+++ b/Tests/RunCMake/CPack/RunCMakeTest.cmake
@@ -16,7 +16,7 @@ run_cpack_test(VERSION "RPM.VERSION;DEB.VERSION" false "MONOLITHIC;COMPONENT")
run_cpack_test(EXTRA "DEB.EXTRA" false "COMPONENT")
run_cpack_test_subtests(GENERATE_SHLIBS "soversion_not_zero;soversion_zero" "DEB.GENERATE_SHLIBS" true "COMPONENT")
run_cpack_test(GENERATE_SHLIBS_LDCONFIG "DEB.GENERATE_SHLIBS_LDCONFIG" true "COMPONENT")
-run_cpack_test_subtests(INSTALL_SCRIPTS "default;single_debug_info" "RPM.INSTALL_SCRIPTS" false "COMPONENT")
+run_cpack_test_subtests(INSTALL_SCRIPTS "default;single_debug_info;no_scripts;no_scripts_single_debug_info" "RPM.INSTALL_SCRIPTS" false "COMPONENT")
run_cpack_test(LONG_FILENAMES "DEB.LONG_FILENAMES" false "MONOLITHIC")
run_cpack_test_subtests(MAIN_COMPONENT "invalid;found" "RPM.MAIN_COMPONENT" false "COMPONENT")
run_cpack_test(MINIMAL "RPM.MINIMAL;DEB.MINIMAL;7Z;TBZ2;TGZ;TXZ;TZ;ZIP;STGZ;External" false "MONOLITHIC;COMPONENT")
diff --git a/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/ExpectedFiles.cmake b/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/ExpectedFiles.cmake
index 29e36a33fb..5a87c442b5 100644
--- a/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/ExpectedFiles.cmake
+++ b/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/ExpectedFiles.cmake
@@ -1,4 +1,4 @@
-if(RunCMake_SUBTEST_SUFFIX STREQUAL "single_debug_info")
+if(RunCMake_SUBTEST_SUFFIX MATCHES ".*single_debug_info")
set(EXPECTED_FILE_1 "install_scripts-0.1.1-1.*.rpm")
else()
set(EXPECTED_FILE_1_COMPONENT "foo")
diff --git a/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/RPM-COMPONENT-no_scripts_single_debug_info-stderr.txt b/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/RPM-COMPONENT-no_scripts_single_debug_info-stderr.txt
new file mode 100644
index 0000000000..8d98f9debd
--- /dev/null
+++ b/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/RPM-COMPONENT-no_scripts_single_debug_info-stderr.txt
@@ -0,0 +1 @@
+.*
diff --git a/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/RPM-Prerequirements.cmake b/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/RPM-Prerequirements.cmake
index c5d20cc691..90cfe4467f 100644
--- a/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/RPM-Prerequirements.cmake
+++ b/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/RPM-Prerequirements.cmake
@@ -1,5 +1,5 @@
function(get_test_prerequirements found_var config_file)
- if(SUBTEST_SUFFIX STREQUAL "single_debug_info")
+ if(SUBTEST_SUFFIX MATCHES ".*single_debug_info")
include(${config_file})
if(OBJDUMP_EXECUTABLE)
diff --git a/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/VerifyResult.cmake b/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/VerifyResult.cmake
index 1a1e983737..0c42d90695 100644
--- a/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/VerifyResult.cmake
+++ b/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/VerifyResult.cmake
@@ -7,23 +7,34 @@ function(checkScripts_ FILE COMPARE_LIST)
ERROR_QUIET
OUTPUT_STRIP_TRAILING_WHITESPACE)
- string(REPLACE "\n" ";" FILE_SCRIPTS_LIST_ "${FILE_SCRIPTS_}")
+ if(COMPARE_LIST STREQUAL "")
+ if(NOT FILE_SCRIPTS_ STREQUAL "")
+ message(FATAL_ERROR "No scripts were expected in '${FILE}'; file info: '${FILE_SCRIPTS_}'")
+ endif()
+ else()
+ string(REPLACE "\n" ";" FILE_SCRIPTS_LIST_ "${FILE_SCRIPTS_}")
+
+ foreach(COMPARE_REGEX_ IN LISTS COMPARE_LIST)
+ unset(FOUND_)
- foreach(COMPARE_REGEX_ IN LISTS COMPARE_LIST)
- unset(FOUND_)
+ foreach(COMPARE_ IN LISTS FILE_SCRIPTS_LIST_)
+ if(COMPARE_ MATCHES "${COMPARE_REGEX_}")
+ set(FOUND_ true)
+ break()
+ endif()
+ endforeach()
- foreach(COMPARE_ IN LISTS FILE_SCRIPTS_LIST_)
- if(COMPARE_ MATCHES "${COMPARE_REGEX_}")
- set(FOUND_ true)
- break()
+ if(NOT FOUND_)
+ message(FATAL_ERROR "Missing scripts in '${FILE}'; file info: '${FILE_SCRIPTS_}'; missing: '${COMPARE_REGEX_}'")
endif()
endforeach()
-
- if(NOT FOUND_)
- message(FATAL_ERROR "Missing scripts in '${FILE}'; file info: '${FILE_SCRIPTS_}'; missing: '${COMPARE_REGEX_}'")
- endif()
- endforeach()
+ endif()
endfunction()
-checkScripts_("${FOUND_FILE_1}" "echo \"pre install foo\";echo \"post install foo\";echo \"pre uninstall foo\";echo \"post uninstall foo\";echo \"pre trans foo\";echo \"post trans foo\"")
-checkScripts_("${FOUND_FILE_2}" "echo \"pre install\";echo \"post install\";echo \"pre uninstall\";echo \"post uninstall\";echo \"pre trans\";echo \"post trans\"")
+if(RunCMake_SUBTEST_SUFFIX MATCHES "no_scripts.*")
+ checkScripts_("${FOUND_FILE_1}" "")
+ checkScripts_("${FOUND_FILE_2}" "")
+else()
+ checkScripts_("${FOUND_FILE_1}" "echo \"pre install foo\";echo \"post install foo\";echo \"pre uninstall foo\";echo \"post uninstall foo\";echo \"pre trans foo\";echo \"post trans foo\"")
+ checkScripts_("${FOUND_FILE_2}" "echo \"pre install\";echo \"post install\";echo \"pre uninstall\";echo \"post uninstall\";echo \"pre trans\";echo \"post trans\"")
+endif()
diff --git a/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/test.cmake b/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/test.cmake
index 6877c57744..ce5db0cfe8 100644
--- a/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/test.cmake
+++ b/Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/test.cmake
@@ -1,31 +1,5 @@
if(GENERATOR_TYPE STREQUAL "RPM")
- set(CPACK_RPM_PRE_INSTALL_SCRIPT_FILE
- "${CMAKE_CURRENT_BINARY_DIR}/pre_install.sh")
- set(CPACK_RPM_POST_INSTALL_SCRIPT_FILE
- "${CMAKE_CURRENT_BINARY_DIR}/post_install.sh")
- set(CPACK_RPM_PRE_UNINSTALL_SCRIPT_FILE
- "${CMAKE_CURRENT_BINARY_DIR}/pre_uninstall.sh")
- set(CPACK_RPM_POST_UNINSTALL_SCRIPT_FILE
- "${CMAKE_CURRENT_BINARY_DIR}/post_uninstall.sh")
- set(CPACK_RPM_PRE_TRANS_SCRIPT_FILE
- "${CMAKE_CURRENT_BINARY_DIR}/pre_trans.sh")
- set(CPACK_RPM_POST_TRANS_SCRIPT_FILE
- "${CMAKE_CURRENT_BINARY_DIR}/post_trans.sh")
-
- set(CPACK_RPM_foo_PRE_INSTALL_SCRIPT_FILE
- "${CMAKE_CURRENT_BINARY_DIR}/pre_install_foo.sh")
- set(CPACK_RPM_foo_POST_INSTALL_SCRIPT_FILE
- "${CMAKE_CURRENT_BINARY_DIR}/post_install_foo.sh")
- set(CPACK_RPM_foo_PRE_UNINSTALL_SCRIPT_FILE
- "${CMAKE_CURRENT_BINARY_DIR}/pre_uninstall_foo.sh")
- set(CPACK_RPM_foo_POST_UNINSTALL_SCRIPT_FILE
- "${CMAKE_CURRENT_BINARY_DIR}/post_uninstall_foo.sh")
- set(CPACK_RPM_foo_PRE_TRANS_SCRIPT_FILE
- "${CMAKE_CURRENT_BINARY_DIR}/pre_trans_foo.sh")
- set(CPACK_RPM_foo_POST_TRANS_SCRIPT_FILE
- "${CMAKE_CURRENT_BINARY_DIR}/post_trans_foo.sh")
-
- if(RunCMake_SUBTEST_SUFFIX STREQUAL "single_debug_info")
+ if(RunCMake_SUBTEST_SUFFIX MATCHES ".*single_debug_info")
set(CPACK_RPM_MAIN_COMPONENT "foo")
set(CPACK_RPM_DEBUGINFO_SINGLE_PACKAGE ON)
set(CPACK_RPM_FOO_FILE_NAME "RPM-DEFAULT")
@@ -34,33 +8,63 @@ endif()
set(CMAKE_BUILD_WITH_INSTALL_RPATH 1)
-# default
-file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/pre_install.sh"
- "echo \"pre install\"\n")
-file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/post_install.sh"
- "echo \"post install\"\n")
-file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/pre_uninstall.sh"
- "echo \"pre uninstall\"\n")
-file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/post_uninstall.sh"
- "echo \"post uninstall\"\n")
-file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/pre_trans.sh"
- "echo \"pre trans\"\n")
-file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/post_trans.sh"
- "echo \"post trans\"\n")
+if(NOT RunCMake_SUBTEST_SUFFIX MATCHES "no_scripts.*")
+ if(GENERATOR_TYPE STREQUAL "RPM")
+ set(CPACK_RPM_PRE_INSTALL_SCRIPT_FILE
+ "${CMAKE_CURRENT_BINARY_DIR}/pre_install.sh")
+ set(CPACK_RPM_POST_INSTALL_SCRIPT_FILE
+ "${CMAKE_CURRENT_BINARY_DIR}/post_install.sh")
+ set(CPACK_RPM_PRE_UNINSTALL_SCRIPT_FILE
+ "${CMAKE_CURRENT_BINARY_DIR}/pre_uninstall.sh")
+ set(CPACK_RPM_POST_UNINSTALL_SCRIPT_FILE
+ "${CMAKE_CURRENT_BINARY_DIR}/post_uninstall.sh")
+ set(CPACK_RPM_PRE_TRANS_SCRIPT_FILE
+ "${CMAKE_CURRENT_BINARY_DIR}/pre_trans.sh")
+ set(CPACK_RPM_POST_TRANS_SCRIPT_FILE
+ "${CMAKE_CURRENT_BINARY_DIR}/post_trans.sh")
+
+ set(CPACK_RPM_foo_PRE_INSTALL_SCRIPT_FILE
+ "${CMAKE_CURRENT_BINARY_DIR}/pre_install_foo.sh")
+ set(CPACK_RPM_foo_POST_INSTALL_SCRIPT_FILE
+ "${CMAKE_CURRENT_BINARY_DIR}/post_install_foo.sh")
+ set(CPACK_RPM_foo_PRE_UNINSTALL_SCRIPT_FILE
+ "${CMAKE_CURRENT_BINARY_DIR}/pre_uninstall_foo.sh")
+ set(CPACK_RPM_foo_POST_UNINSTALL_SCRIPT_FILE
+ "${CMAKE_CURRENT_BINARY_DIR}/post_uninstall_foo.sh")
+ set(CPACK_RPM_foo_PRE_TRANS_SCRIPT_FILE
+ "${CMAKE_CURRENT_BINARY_DIR}/pre_trans_foo.sh")
+ set(CPACK_RPM_foo_POST_TRANS_SCRIPT_FILE
+ "${CMAKE_CURRENT_BINARY_DIR}/post_trans_foo.sh")
+ endif()
+
+ # default
+ file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/pre_install.sh"
+ "echo \"pre install\"\n")
+ file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/post_install.sh"
+ "echo \"post install\"\n")
+ file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/pre_uninstall.sh"
+ "echo \"pre uninstall\"\n")
+ file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/post_uninstall.sh"
+ "echo \"post uninstall\"\n")
+ file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/pre_trans.sh"
+ "echo \"pre trans\"\n")
+ file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/post_trans.sh"
+ "echo \"post trans\"\n")
-# specific
-file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/pre_install_foo.sh"
- "echo \"pre install foo\"\n")
-file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/post_install_foo.sh"
- "echo \"post install foo\"\n")
-file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/pre_uninstall_foo.sh"
- "echo \"pre uninstall foo\"\n")
-file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/post_uninstall_foo.sh"
- "echo \"post uninstall foo\"\n")
-file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/pre_trans_foo.sh"
- "echo \"pre trans foo\"\n")
-file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/post_trans_foo.sh"
- "echo \"post trans foo\"\n")
+ # specific
+ file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/pre_install_foo.sh"
+ "echo \"pre install foo\"\n")
+ file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/post_install_foo.sh"
+ "echo \"post install foo\"\n")
+ file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/pre_uninstall_foo.sh"
+ "echo \"pre uninstall foo\"\n")
+ file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/post_uninstall_foo.sh"
+ "echo \"post uninstall foo\"\n")
+ file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/pre_trans_foo.sh"
+ "echo \"pre trans foo\"\n")
+ file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/post_trans_foo.sh"
+ "echo \"post trans foo\"\n")
+endif()
install(FILES CMakeLists.txt DESTINATION foo COMPONENT foo)
install(FILES CMakeLists.txt DESTINATION bar COMPONENT bar)
--
2.40.1

@ -1,33 +0,0 @@
From 3a2e5547615cff5ec4eace50f4de799443f81b98 Mon Sep 17 00:00:00 2001
From: Artur Samarin <39006-asamarin97@users.noreply.gitlab.kitware.com>
Date: Fri, 30 Jul 2021 19:38:56 +0300
Subject: [PATCH 3/3] CPackRPM: avoid a spurious `;` in the `%pre` and other
sections with scripts
This was accidentally added by commit 34c8a23044 (CPackRPM: add
scriplets tags only if scripts exist, 2021-04-01, v3.21.0-rc1~387^2).
Fixes: #22501
(cherry picked from commit 3cdf23985fc4578b719546a0e76bdcf82457477a)
---
Modules/Internal/CPack/CPackRPM.cmake | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/Modules/Internal/CPack/CPackRPM.cmake b/Modules/Internal/CPack/CPackRPM.cmake
index d4d13b8367..66a97da675 100644
--- a/Modules/Internal/CPack/CPackRPM.cmake
+++ b/Modules/Internal/CPack/CPackRPM.cmake
@@ -11,9 +11,7 @@ function(set_spec_script_if_enabled TYPE PACKAGE_NAME VAR)
if(PACKAGE_NAME)
set(PACKAGE_NAME " -n ${PACKAGE_NAME}")
endif()
- set(${TYPE}_
- "%${TYPE}${PACKAGE_NAME}\n"
- "${VAR}\n" PARENT_SCOPE)
+ set(${TYPE}_ "%${TYPE}${PACKAGE_NAME}\n${VAR}\n" PARENT_SCOPE)
else()
set(${TYPE} "" PARENT_SCOPE)
endif()
--
2.40.1

@ -1,11 +0,0 @@
diff -up cmake-3.20.0/Tests/RunCMake/CPack/tests/THREADED_ALL/test.cmake.CPACK_THREADS cmake-3.20.0/Tests/RunCMake/CPack/tests/THREADED_ALL/test.cmake
--- cmake-3.20.0/Tests/RunCMake/CPack/tests/THREADED_ALL/test.cmake.CPACK_THREADS 2021-03-23 10:43:17.000000000 -0500
+++ cmake-3.20.0/Tests/RunCMake/CPack/tests/THREADED_ALL/test.cmake 2021-03-23 13:29:14.539434722 -0500
@@ -1,6 +1,6 @@
install(FILES CMakeLists.txt DESTINATION foo COMPONENT test)
-set(CPACK_THREADS 0)
+set(CPACK_THREADS 4)
if(PACKAGING_TYPE STREQUAL "COMPONENT")
set(CPACK_COMPONENTS_ALL test)

@ -1,62 +0,0 @@
From 635ab930f6185d1ec3e4d99109e2edf0533b0d00 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= <besser82@fedoraproject.org>
Date: Wed, 23 Jun 2021 21:03:15 +0200
Subject: [PATCH] testDynamicLoader: Use LIBDL_SO macro if defined.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Starting with glibc v2.34 there is no external version of libdl.so
anymore. It has been merged into the glibc libc.so.
Assuming libdl.so will be present will break the test, thus the
LIBDL_SO macro should be used. If the macro is not defined on
the system, we ensure it will be defined using the previously
hardcoded value.
Signed-off-by: Björn Esser <besser82@fedoraproject.org>
---
cmake-3.20.4/Source/kwsys/testDynamicLoader.cxx | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
Index: cmake-3.21.0-rc1/Source/kwsys/testDynamicLoader.cxx
===================================================================
--- cmake-3.21.0-rc1.orig/Source/kwsys/testDynamicLoader.cxx
+++ cmake-3.21.0-rc1/Source/kwsys/testDynamicLoader.cxx
@@ -8,6 +8,25 @@
# include <be/kernel/OS.h> /* disable_debugger() API. */
#endif
+// Needed for __GLIBC__ test macro.
+#ifdef __linux__
+# include <features.h>
+#endif
+
+// Will define LIBDL_SO macro on systems with glibc.
+#ifdef __GLIBC__
+# include <gnu/lib-names.h>
+// Define to LIBC_SO, if not defined by above header.
+# ifndef LIBDL_SO
+# define LIBDL_SO LIBC_SO
+# endif
+#endif
+
+// Define the LIBDL_SO macro, if not defined above.
+#ifndef LIBDL_SO
+# define LIBDL_SO "libdl.so"
+#endif
+
// Work-around CMake dependency scanning limitation. This must
// duplicate the above list of headers.
#if 0
@@ -107,8 +126,8 @@ int testDynamicLoader(int argc, char* ar
// This one is actually fun to test, since dlopen is by default
// loaded...wonder why :)
res += TestDynamicLoader("foobar.lib", "dlopen", 0, 1, 0);
- res += TestDynamicLoader("libdl.so", "dlopen", 1, 1, 1);
- res += TestDynamicLoader("libdl.so", "TestDynamicLoader", 1, 0, 1);
+ res += TestDynamicLoader(LIBDL_SO, "dlopen", 1, 1, 1);
+ res += TestDynamicLoader(LIBDL_SO, "TestDynamicLoader", 1, 0, 1);
#endif
// Now try on the generated library
std::string libname = GetLibName(KWSYS_NAMESPACE_STRING "TestDynload");

@ -1,8 +1,8 @@
Index: cmake-3.18.0-rc1/Modules/FindRuby.cmake
Index: cmake-3.23.0-rc2/Modules/FindRuby.cmake
===================================================================
--- cmake-3.18.0-rc1.orig/Modules/FindRuby.cmake
+++ cmake-3.18.0-rc1/Modules/FindRuby.cmake
@@ -289,14 +289,9 @@ if(Ruby_EXECUTABLE AND NOT Ruby_VERSION_
--- cmake-3.23.0-rc2.orig/Modules/FindRuby.cmake
+++ cmake-3.23.0-rc2/Modules/FindRuby.cmake
@@ -315,14 +315,9 @@ if(Ruby_EXECUTABLE AND NOT Ruby_VERSION_
_RUBY_CONFIG_VAR("sitearchdir" Ruby_SITEARCH_DIR)
_RUBY_CONFIG_VAR("sitelibdir" Ruby_SITELIB_DIR)

@ -1,21 +0,0 @@
Index: cmake-3.17.0-rc1/Modules/Platform/Windows-GNU.cmake
===================================================================
--- cmake-3.17.0-rc1.orig/Modules/Platform/Windows-GNU.cmake
+++ cmake-3.17.0-rc1/Modules/Platform/Windows-GNU.cmake
@@ -25,12 +25,14 @@ endif()
if(MINGW)
set(CMAKE_FIND_LIBRARY_PREFIXES "lib" "")
- set(CMAKE_FIND_LIBRARY_SUFFIXES ".dll.a" ".a" ".lib")
+ set(CMAKE_FIND_LIBRARY_SUFFIXES ".dll" ".dll.a" ".a" ".lib")
set(CMAKE_C_STANDARD_LIBRARIES_INIT "-lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32")
set(CMAKE_CXX_STANDARD_LIBRARIES_INIT "${CMAKE_C_STANDARD_LIBRARIES_INIT}")
+ set(CMAKE_DL_LIBS "dl")
+else()
+ set(CMAKE_DL_LIBS "")
endif()
-set(CMAKE_DL_LIBS "")
set(CMAKE_LIBRARY_PATH_FLAG "-L")
set(CMAKE_LINK_LIBRARY_FLAG "-l")
set(CMAKE_LINK_DEF_FILE_FLAG "") # Empty string: passing the file is enough

@ -9,23 +9,16 @@
%__ctest /usr/bin/ctest
%__cmake_builddir %{!?__cmake_in_source_build:%{_vpath_builddir}}%{?__cmake_in_source_build:.}
# - Set default compile flags
# - CMAKE_*_FLAGS_RELEASE are added *after* the *FLAGS environment variables
# and default to -O3 -DNDEBUG. Strip the -O3 so we can override with *FLAGS
# and default to -O3 -DNDEBUG. Strip the -O3 so we can override with *FLAGS
# - Turn on verbose makefiles so we can see and verify compile flags
# - Turn off stripping by default so RPM can do it separately
# - Set default install prefixes and library install directories
# - Turn on shared libraries by default
%cmake \
%if 0%{?set_build_flags:1} \
%set_build_flags \
%else \
CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS ; \
CXXFLAGS="${CXXFLAGS:-%optflags}" ; export CXXFLAGS ; \
FFLAGS="${FFLAGS:-%optflags%{?_fmoddir: -I%_fmoddir}}" ; export FFLAGS ; \
FCFLAGS="${FCFLAGS:-%optflags%{?_fmoddir: -I%_fmoddir}}" ; export FCFLAGS ; \
%{?__global_ldflags:LDFLAGS="${LDFLAGS:-%__global_ldflags}" ; export LDFLAGS ;} \
%endif \
%{set_build_flags} \
%__cmake \\\
%{!?__cmake_in_source_build:-S "%{_vpath_srcdir}"} \\\
%{!?__cmake_in_source_build:-B "%{__cmake_builddir}"} \\\
@ -50,13 +43,18 @@
%cmake_install \
DESTDIR="%{buildroot}" %__cmake --install "%{__cmake_builddir}"
%ctest(:-:) \
cd "%{__cmake_builddir}" \
%__ctest --output-on-failure --force-new-ctest-process %{?_smp_mflags} %{**} \
cd -
%ctest(:-:h:j:u:v:A:C:D:E:F:H:I:L:M:N:O:Q:R:S:T:U:V:) \
%__ctest --test-dir "%{__cmake_builddir}" \\\
--output-on-failure \\\
--force-new-ctest-process \\\
%ifarch riscv64 \
--timeout 6000 \\\
%endif \
%{?_smp_mflags} %{**}
%cmake@@CMAKE_MAJOR_VERSION@@ %cmake
%cmake@@CMAKE_MAJOR_VERSION@@_build %cmake_build
%cmake@@CMAKE_MAJOR_VERSION@@_install %cmake_install
%ctest@@CMAKE_MAJOR_VERSION@@(:-:) %ctest %{**}
%ctest@@CMAKE_MAJOR_VERSION@@(:-:h:j:u:v:A:C:D:E:F:H:I:L:M:N:O:Q:R:S:T:U:V:) \
%ctest %{**}

@ -16,7 +16,7 @@
# Run git tests
%bcond_without git_test
# Set to bcond_with or use --without gui to disable qt4 gui build
# Set to bcond_with or use --without gui to disable qt gui build
%bcond_without gui
# Use ncurses for colorful output
@ -42,12 +42,22 @@
%bcond_without bundled_rhash
%endif
# cppdap is currently shipped as a static lib from upstream,
# so we do not have it in the repos.
%bcond_without bundled_cppdap
# Run tests
%bcond_without test
# Enable X11 tests
%bcond_without X11_test
# Do not build non-lto objects to reduce build time significantly.
%global build_cflags %(echo '%{build_cflags}' | sed -e 's!-ffat-lto-objects!-fno-fat-lto-objects!g')
%global build_cxxflags %(echo '%{build_cxxflags}' | sed -e 's!-ffat-lto-objects!-fno-fat-lto-objects!g')
%global build_fflags %(echo '%{build_fflags}' | sed -e 's!-ffat-lto-objects!-fno-fat-lto-objects!g')
%global build_fcflags %(echo '%{build_fflags}' | sed -e 's!-ffat-lto-objects!-fno-fat-lto-objects!g')
# Place rpm-macros into proper location
%global rpm_macros_dir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d)
@ -58,22 +68,30 @@
%{!?_vpath_builddir:%global _vpath_builddir %{_target_platform}}
%global major_version 3
%global minor_version 20
# Set to RC version if building RC, else %%{nil}
#global rcsuf rc1
%{?rcsuf:%global relsuf .%{rcsuf}}
%{?rcsuf:%global versuf -%{rcsuf}}
%global minor_version 28
%global patch_version 3
# For handling bump release by rpmdev-bumpspec and mass rebuild
%global baserelease 9
%global baserelease 7
# Set to RC version if building RC, else comment out.
#%%global rcsuf rc3
%if 0%{?rcsuf:1}
%global pkg_version %{major_version}.%{minor_version}.%{patch_version}~%{rcsuf}
%global tar_version %{major_version}.%{minor_version}.%{patch_version}-%{rcsuf}
%else
%global pkg_version %{major_version}.%{minor_version}.%{patch_version}
%global tar_version %{major_version}.%{minor_version}.%{patch_version}
%endif
# Uncomment if building for EPEL
#global name_suffix %%{major_version}
%global orig_name cmake
Name: %{orig_name}%{?name_suffix}
Version: %{major_version}.%{minor_version}.2
Release: %{baserelease}%{?relsuf}%{?dist}
Version: %{pkg_version}
Release: %{baserelease}%{?dist}.inferit
Summary: Cross-platform make system
# most sources are BSD
@ -81,11 +99,11 @@ Summary: Cross-platform make system
# Source/kwsys/MD5.c is zlib
# some GPL-licensed bison-generated files, which all include an
# exception granting redistribution under terms of your choice
License: BSD and MIT and zlib
License: BSD-3-Clause AND MIT-open-group AND Zlib%{?with_bundled_cppdap: AND Apache-2.0}
URL: http://www.cmake.org
Source0: http://www.cmake.org/files/v%{major_version}.%{minor_version}/%{orig_name}-%{version}%{?versuf}.tar.gz
Source0: http://www.cmake.org/files/v%{major_version}.%{minor_version}/%{orig_name}-%{tar_version}.tar.gz
Source1: %{name}-init.el
Source2: macros.%{name}
Source2: macros.%{name}.in
# See https://bugzilla.redhat.com/show_bug.cgi?id=1202899
Source3: %{name}.attr
Source4: %{name}.prov
@ -99,32 +117,10 @@ Source5: %{name}.req
# http://public.kitware.com/Bug/view.php?id=12965
# https://bugzilla.redhat.com/show_bug.cgi?id=822796
Patch100: %{name}-findruby.patch
# replace release flag -O3 with -O2 for fedora
%if 0%{?fedora} && 0%{?fedora} < 34
Patch101: %{name}-fedora-flag_release.patch
%endif
# Add dl to CMAKE_DL_LIBS on MINGW
# https://gitlab.kitware.com/cmake/cmake/issues/17600
Patch102: %{name}-mingw-dl.patch
# memory-hungry tests when building on koji builders with *lots* of cores
# so limit it to some reasonable number (4)
Patch103: cmake-3.20-CPACK_THREADS.patch
# see rhbz#1975096
Patch104: cmake-3.20.4-glibc_libdl.patch
# rhbz#2162696
Patch105: 0001-Tests-Explicitly-allow-usage-of-git-file-based-proto.patch
# RHEL-14086
Patch106: 0001-CPackRPM-handle-scripts-in-debuginfo-single-package-.patch
Patch107: 0002-CPackRPM-add-scriplets-tags-only-if-scripts-exist.patch
Patch108: 0003-CPackRPM-avoid-a-spurious-in-the-pre-and-other-secti.patch
# Patch for renaming on EPEL
%if 0%{?name_suffix:1}
Patch1: %{name}-rename.patch
Patch1: %{name}-rename.patch
%endif
BuildRequires: coreutils
@ -150,6 +146,11 @@ BuildRequires: %{_bindir}/sphinx-build
%if %{without bootstrap}
BuildRequires: bzip2-devel
BuildRequires: curl-devel
%if %{with bundled_cppdap}
Provides: bundled(cppdap)
%else
BuildRequires: cppdap-devel
%endif
BuildRequires: expat-devel
%if %{with bundled_jsoncpp}
Provides: bundled(jsoncpp)
@ -184,7 +185,9 @@ BuildRequires: python2-devel
%endif
%endif
%if %{with gui}
%if 0%{?fedora} || 0%{?rhel} > 7
%if 0%{?fedora} || 0%{?rhel} > 9
BuildRequires: pkgconfig(Qt6Widgets)
%elif 0%{?rhel} > 7
BuildRequires: pkgconfig(Qt5Widgets)
%else
BuildRequires: pkgconfig(QtGui)
@ -202,7 +205,7 @@ BuildRequires: %{name}-rpm-macros
BuildRequires: make
Requires: %{name}-data = %{version}-%{release}
Requires: %{name}-rpm-macros = %{version}-%{release}
Requires: (%{name}-rpm-macros = %{version}-%{release} if rpm-build)
Requires: %{name}-filesystem%{?_isa} = %{version}-%{release}
# Explicitly require make. (rhbz#1862014)
@ -231,7 +234,7 @@ generation, code generation, and template instantiation.
Summary: Common data-files for %{name}
Requires: %{name} = %{version}-%{release}
Requires: %{name}-filesystem = %{version}-%{release}
Requires: %{name}-rpm-macros = %{version}-%{release}
Requires: (%{name}-rpm-macros = %{version}-%{release} if rpm-build)
%if %{with emacs}
%if 0%{?fedora} || 0%{?rhel} >= 7
Requires: emacs-filesystem%{?_emacs_version: >= %{_emacs_version}}
@ -249,9 +252,6 @@ This package contains common data-files for %{name}.
Summary: Documentation for %{name}
BuildArch: noarch
# license files moved from the doc package to main package.
Conflicts: %{name} <= 3.20.1
%description doc
This package contains documentation for %{name}.
@ -288,8 +288,19 @@ BuildArch: noarch
This package contains common RPM macros for %{name}.
%package -n python3-cmake
Summary: Python metadata for packages depending on %{name}
Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
BuildArch: noarch
%description -n python3-cmake
Package provides metadata for Python packages depending on cmake.
This is to make automatic dependency resolution work. The package is NOT
using anything from the PyPI package called cmake.
%prep
%autosetup -n %{orig_name}-%{version}%{?versuf} -p 1
%autosetup -n %{orig_name}-%{tar_version} -p 1
%if %{with rpm}
%if %{with python3}
@ -305,22 +316,19 @@ tail -n +2 %{SOURCE5} >> %{name}.req
%build
%if 0%{?set_build_flags:1}
%{set_build_flags}
%else
CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS
CXXFLAGS="${CXXFLAGS:-%optflags}" ; export CXXFLAGS
FFLAGS="${FFLAGS:-%optflags%{?_fmoddir: -I%_fmoddir}}" ; export FFLAGS
FCFLAGS="${FCFLAGS:-%optflags%{?_fmoddir: -I%_fmoddir}}" ; export FCFLAGS
%{?__global_ldflags:LDFLAGS="${LDFLAGS:-%__global_ldflags}" ; export LDFLAGS ;}
%endif
SRCDIR="$(/usr/bin/pwd)"
mkdir %{_vpath_builddir}
pushd %{_vpath_builddir}
$SRCDIR/bootstrap --prefix=%{_prefix} --datadir=/share/%{name} \
--docdir=/share/doc/%{name} --mandir=/share/man \
$SRCDIR/bootstrap --prefix=%{_prefix} \
--datadir=/share/%{name} \
--docdir=/share/doc/%{name} \
--mandir=/share/man \
--%{?with_bootstrap:no-}system-libs \
--parallel="$(echo %{?_smp_mflags} | sed -e 's|-j||g')" \
%if %{with bundled_cppdap}
--no-system-cppdap \
%endif
%if %{with bundled_rhash}
--no-system-librhash \
%endif
@ -333,9 +341,29 @@ $SRCDIR/bootstrap --prefix=%{_prefix} --datadir=/share/%{name} \
--sphinx-build=%{_bindir}/false \
%endif
--%{!?with_gui:no-}qt-gui \
;
-- \
-DCMAKE_C_FLAGS_RELEASE:STRING="-O2 -g -DNDEBUG" \
-DCMAKE_CXX_FLAGS_RELEASE:STRING="-O2 -g -DNDEBUG" \
-DCMAKE_Fortran_FLAGS_RELEASE:STRING="-O2 -g -DNDEBUG" \
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \
-DCMAKE_INSTALL_DO_STRIP:BOOL=OFF
popd
%make_build -C %{_vpath_builddir} VERBOSE=1
%make_build -C %{_vpath_builddir}
# Provide Python metadata
%global cmake_distinfo cmake-%{major_version}.%{minor_version}.%{patch_version}%{?rcsuf}.dist-info
mkdir %{cmake_distinfo}
cat > %{cmake_distinfo}/METADATA << EOF
Metadata-Version: 2.1
Name: cmake
Version: %{major_version}.%{minor_version}.%{patch_version}%{?rcsuf}
Summary: %{summary}
Description-Content-Type: text/plain
Metadata only package for automatic dependency resolution in the RPM
ecosystem. This package is separate from the PyPI package called cmake.
EOF
echo rpm > %{cmake_distinfo}/INSTALLER
%install
@ -376,6 +404,10 @@ do
dname=$(basename $dir)
cp -p $f ./${fname}_${dname}
done
%if %{with bundled_cppdap}
cp -p Utilities/cmcppdap/LICENSE LICENSE.cppdap
cp -p Utilities/cmcppdap/NOTICE NOTICE.cppdap
%endif
# Cleanup pre-installed documentation
%if %{with sphinx}
mv %{buildroot}%{_docdir}/%{name}/html .
@ -447,30 +479,32 @@ find %{buildroot}%{_libdir}/%{orig_name} -type f | \
find %{buildroot}%{_bindir} -type f -or -type l -or -xtype l | \
sed -e '/.*-gui$/d' -e '/^$/d' -e 's!^%{buildroot}!"!g' -e 's!$!"!g' >> lib_files.mf
# Install Python metadata
mkdir -p %{buildroot}%{python3_sitelib}
cp -a %{cmake_distinfo} %{buildroot}%{python3_sitelib}
%if %{with test}
%check
pushd %{_vpath_builddir}
# CTestTestUpload require internet access
# CPackComponentsForAll-RPM-IgnoreGroup failing wih rpm 4.15 - https://gitlab.kitware.com/cmake/cmake/issues/19983
NO_TEST="CTestTestUpload|CPackComponentsForAll-RPM-IgnoreGroup|CPack_RPM.DEBUGINFO"
# kwsys.testProcess-{4,5} are flaky on s390x.
%ifarch s390x
NO_TEST="$NO_TEST|kwsys.testProcess-4|kwsys.testProcess-5"
%endif
# RunCMake.PrecompileHeaders test uses precompiled file presumably compiled with different compiler
# that one of RHEL8 (GCC-8.3.1). See https://bugzilla.redhat.com/show_bug.cgi?id=1721553#c4
%if 0%{?rhel} && 0%{?rhel} > 7
NO_TEST="$NO_TEST|RunCMake.PrecompileHeaders"
%endif
# CTestTestUpload requires internet access.
NO_TEST="CTestTestUpload"
# Likely failing for hardening flags from system.
NO_TEST="$NO_TEST|CustomCommand|RunCMake.PositionIndependentCode"
# Failing for rpm 4.19
NO_TEST="$NO_TEST|CPackComponentsForAll-RPM-default"
NO_TEST="$NO_TEST|CPackComponentsForAll-RPM-OnePackPerGroup"
NO_TEST="$NO_TEST|CPackComponentsForAll-RPM-AllInOne"
# curl test may fail during bootstrap
%if %{with bootstrap}
NO_TEST="$NO_TEST|curl"
%endif
%ifarch riscv64
# These three tests timeout on riscv64, skip them.
NO_TEST="$NO_TEST|Qt5Autogen.ManySources|Qt5Autogen.MocInclude|Qt5Autogen.MocIncludeSymlink|Qt6Autogen.MocIncludeSymlink"
%endif
bin/ctest%{?name_suffix} %{?_smp_mflags} -V -E "$NO_TEST" --output-on-failure
## do this only periodically, not for every build -- rdieter 20210429
## do this only periodically, not for every build -- besser82 20221102
# Keep an eye on failing tests
#bin/ctest%{?name_suffix} %{?_smp_mflags} -V -R "$NO_TEST" --output-on-failure || :
popd
@ -481,6 +515,10 @@ popd
%doc %dir %{_pkgdocdir}
%license Copyright.txt*
%license COPYING*
%if %{with bundled_cppdap}
%license LICENSE.cppdap
%license NOTICE.cppdap
%endif
%if %{with sphinx}
%{_mandir}/man1/c%{name}.1.*
%{_mandir}/man1/%{name}.1.*
@ -540,38 +578,389 @@ popd
%endif
%files -n python3-cmake
%{python3_sitelib}/%{cmake_distinfo}
%changelog
* Mon Oct 23 2023 Tom Stellard <tstellar@redhat.com> - 3.20.2-9
- Fix CPack bug with pretrans scriptlet
* Tue Aug 27 2024 Arkady L. Shane <tigro@msvsphere-os.ru> - 3.28.3-7.inferit
- Update to 3.28.3
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.28.3-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Fri Jun 07 2024 Python Maint <python-maint@redhat.com> - 3.28.3-6
- Rebuilt for Python 3.13
* Wed May 15 2024 Sandro <devel@penguinpee.nl> - 3.28.3-5
- Add python3-cmake sub package providing metadata for Python packages
depending on CMake to facilitate automatic dependency resolution.
* Tue Apr 23 2024 Orion Poplawski <orion@nwra.com> - 3.28.3-4
- Build with gui again
* Tue Apr 23 2024 Orion Poplawski <orion@nwra.com> - 3.28.3-3
- Rebuild for rhash 1.4.4 soname bump
- Build without gui to avoid circular dep on self
* Wed Mar 06 2024 David Abdurachmanov <davidlt@rivosinc.com> - 3.28.3-2
- Disable another timeout test on riscv64
* Tue Feb 27 2024 Orion Poplawski <orion@nwra.com> - 3.28.3-1
- Update to 3.28.3 (should fix bz#2261013)
* Thu Feb 01 2024 Frantisek Zatloukal <fzatlouk@redhat.com> - 3.28.2-1
- cmake-3.28.2 (fixes RHBZ#2261037 and RHBZ#2243343)
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.28.0~rc3-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.28.0~rc3-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Thu Nov 23 2023 Florian Weimer <fweimer@redhat.com> - 3.28.0~rc3-2
- Improve C compatibility of LoadCommand tests
* Tue Oct 24 2023 Björn Esser <besser82@fedoraproject.org> - 3.28.0~rc3-1
- cmake-3.28.0-rc3
Fixes rhbz#2243343
* Thu Oct 19 2023 Björn Esser <besser82@fedoraproject.org> - 3.28.0~rc2-1
- cmake-3.28.0-rc2
Fixes rhbz#2243343
* Thu Oct 12 2023 Björn Esser <besser82@fedoraproject.org> - 3.28.0~rc1-1
- cmake-3.28.0-rc1
Fixes rhbz#2243343
* Sat Oct 07 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.7-1
- cmake-3.27.7
Fixes rhbz#2242491
* Tue Oct 03 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.6-2
- Include new upstream patches
* Wed Sep 27 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.6-1
- cmake-3.27.6
Fixes rhbz#2239015, rhbz#2240311
- Include new upstream patch
* Fri Sep 15 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.5-1
- cmake-3.27.5
Fixes rhbz#2239015
* Fri Sep 15 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.4-9
- Fix CI failure finally
* Thu Sep 14 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.4-8
- Fix CI failure
* Thu Sep 14 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.4-7
- Add upstream patches from milestone to cmake-3.27.5
* Wed Sep 06 2023 Panu Matilainen <pmatilai@redhat.com> - 3.27.4-6
- Only require cmake-rpm-macros when rpm-build is installed part II
* Sat Sep 02 2023 Tom Stellard <tstellar@redhat.com> - 3.27.4-5
- Convert license to SPDX
* Fri Sep 01 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.4-4
- Fix outdated CI configuration
* Thu Aug 31 2023 Panu Matilainen <pmatilai@redhat.com> - 3.27.4-3
- Only require cmake-rpm-macros when rpm-build is installed
* Mon Aug 28 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.4-2
- Add upstream patch to fix linking non-builtin libatomic on some arches
* Thu Aug 24 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.4-1
- cmake-3.27.4
Fixes rhbz#2233852
* Thu Aug 17 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.3-1
- cmake-3.27.3
Fixes rhbz#2232421
* Thu Aug 10 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.2-1
- cmake-3.27.2
Fixes rhbz#2231131
* Tue Jul 25 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.1-1
- cmake-3.27.1
Fixes rhbz#2226276
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.27.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Tue Jul 18 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.0-1
- cmake-3.27.0
Fixes rhbz#2223754
* Fri Jul 14 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.0~rc5-1
- cmake-3.27.0-rc5
Fixes rhbz#2222977
* Thu Jul 06 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.0~rc4-2
- Fix FTBFS for redhat-rpm-config v260 and later
- Re-include tests that were failing with rc1
* Fri Jun 30 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.0~rc4-1
- cmake-3.27.0-rc4
Fixes rhbz#2218941
* Tue Jun 20 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.0~rc3-1
- cmake-3.27.0-rc3
Fixes rhbz#2214407
* Mon Jun 19 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.0~rc2-2
- Backport some upstream patches which will be included in rc3
* Mon Jun 12 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.0~rc2-1
- cmake-3.27.0-rc2
* Thu Jun 08 2023 Björn Esser <besser82@fedoraproject.org> - 3.27.0~rc1-1
- cmake-3.27.0-rc1
- Use CMake-provided cppdap
- Add licensing information for cppdap to packaged files if needed
- Exclude tests that started failing
* Thu Jun 01 2023 Björn Esser <besser82@fedoraproject.org> - 3.26.4-4
- Backport several bugfixes and support for Boost v1.82 from upstream
* Sat May 27 2023 Björn Esser <besser82@fedoraproject.org> - 3.26.4-3
- Rename macros.cmake -> macros.cmake.in
- macros: Fix formatting and indentation
- macros: Directly use %%set_build_flags, as it is supported since EPEL 7
- Exclude tests that are failing for rpm 4.19
* Fri May 19 2023 Neal Gompa <ngompa@fedoraproject.org> - 3.26.4-2
- macros: Use the language build flag macros for compiler flags
* Fri May 19 2023 Björn Esser <besser82@fedoraproject.org> - 3.26.4-1
- cmake-3.26.4
Fixes rhbz#2208383
* Mon May 08 2023 Björn Esser <besser82@fedoraproject.org> - 3.26.3-3
- Build cmake-gui with Qt6
* Fri May 05 2023 Nianqing Yao <imbearchild@outlook.com> - 3.26.3-2
- Fix build on riscv64
* Wed Apr 05 2023 Björn Esser <besser82@fedoraproject.org> - 3.26.3-1
- cmake-3.26.3
Fixes rhbz#2184478
* Thu Mar 30 2023 Björn Esser <besser82@fedoraproject.org> - 3.26.2-1
- cmake-3.26.2
Fixes rhbz#2182863
* Thu Mar 23 2023 Björn Esser <besser82@fedoraproject.org> - 3.26.1-1
- cmake-3.26.1
Fixes rhbz#2181278
* Tue Mar 14 2023 Björn Esser <besser82@fedoraproject.org> - 3.26.0-1
- cmake-3.26.0
Fixes rhbz#2178221
* Thu Mar 09 2023 Björn Esser <besser82@fedoraproject.org> - 3.26.0~rc6-1
- cmake-3.26.0-rc6
Fixes rhbz#2176581
* Wed Mar 01 2023 Björn Esser <besser82@fedoraproject.org> - 3.26.0~rc5-1
- cmake-3.26.0-rc5
* Wed Feb 22 2023 Björn Esser <besser82@fedoraproject.org> - 3.26.0~rc4-1
- cmake-3.26.0-rc4
Fixes rhbz#2172604
* Wed Feb 15 2023 Björn Esser <besser82@fedoraproject.org> - 3.26.0~rc3-1
- cmake-3.26.0-rc3
Fixes rhbz#2170100
* Thu Feb 09 2023 Björn Esser <besser82@fedoraproject.org> - 3.26.0~rc2-1
- cmake-3.26.0-rc2
Fixes rhbz#2167064
* Thu Jan 19 2023 Björn Esser <besser82@fedoraproject.org> - 3.25.2-1
- cmake-3.25.2
Fixes rhbz#2162459
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.25.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Sun Jan 15 2023 Björn Esser <besser82@fedoraproject.org> - 3.25.1-3
- Backport upstream patch for Boost v1.81 support
* Fri Jan 13 2023 Neal Gompa <ngompa@fedoraproject.org> - 3.25.1-2
- Adjust ctest macro to use native out-of-tree support
* Mon Dec 05 2022 Björn Esser <besser82@fedoraproject.org> - 3.25.1-1
- cmake-3.25.1
Fixes rhbz#2149681
* Wed Nov 16 2022 Björn Esser <besser82@fedoraproject.org> - 3.25.0-1
- cmake-3.25.0
Fixes rhbz#2143345
* Wed Nov 09 2022 Björn Esser <besser82@fedoraproject.org> - 3.25.0-0.6.rc4
- cmake-3.25.0-rc4
Fixes rhbz#2141122
* Wed Nov 02 2022 Björn Esser <besser82@fedoraproject.org> - 3.25.0-0.5.rc3
- Re-enable BundleUtilities, CMakeLib.testCTestResourceAllocator,
CMakeLib.testCTestResourceSpec, CTest.UpdateGIT, ExternalProject
during testsuite run
- Re-enable kwsys.testProcess-{4,5} on s390x
* Wed Nov 02 2022 Björn Esser <besser82@fedoraproject.org> - 3.25.0-0.4.rc3
- cmake-3.25.0-rc3
Fixes rhbz#2062783
* Sun Oct 30 2022 Björn Esser <besser82@fedoraproject.org> - 3.25.0-0.3.rc2
- Allow valid short arguments for %%ctest macro
Fixes rhbz#2127650
* Sun Oct 30 2022 Björn Esser <besser82@fedoraproject.org> - 3.25.0-0.2.rc2
- Drop non-upstream CMAKE_DL_LIBS windows patch
Fixes rhbz#2127529
* Sat Oct 29 2022 Björn Esser <besser82@fedoraproject.org> - 3.25.0-0.1.rc2
- cmake-3.25.0-rc2
Fixes rhbz#2062783
* Sat Oct 29 2022 Björn Esser <besser82@fedoraproject.org> - 3.24.2-1
- cmake-3.24.2
* Thu Aug 18 2022 Björn Esser <besser82@fedoraproject.org> - 3.24.1-1
- cmake-3.24.1
* Fri Aug 05 2022 Leigh Scott <leigh123linux@gmail.com> - 3.24.0-1
- cmake-3.24.0
* Fri Jul 29 2022 Leigh Scott <leigh123linux@gmail.com> - 3.23.3-1
- cmake-3.23.3
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.23.0-0.2.rc2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Wed Feb 23 2022 Björn Esser <besser82@fedoraproject.org> - 3.23.0-0.1.rc2
- cmake-3.23.0-rc2
Fixes rhbz#2052100
* Tue Jan 25 2022 Björn Esser <besser82@fedoraproject.org> - 3.22.2-1
- cmake-3.22.2
Fixes rhbz#2045074
* Thu Jan 20 2022 Björn Esser <besser82@fedoraproject.org> - 3.22.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Wed Jan 19 2022 Björn Esser <besser82@fedoraproject.org> - 3.22.1-6
- Add patch to fix compatibility of FortranCInterface with GCC gfortran 12 LTO
Fixes rhbz#2041904
- Skip tests failing with GCC 12
* Sun Dec 26 2021 Björn Esser <besser82@fedoraproject.org> - 3.22.1-5
- Backport two patches fixing regressions in FindBoost and FindGLUT
* Fri Dec 17 2021 Björn Esser <besser82@fedoraproject.org> - 3.22.1-4
- Backport patch to add support for Python >= 3.10 in FindBoost.cmake
* Thu Dec 16 2021 Björn Esser <besser82@fedoraproject.org> - 3.22.1-3
- Backport patch to add Boost 1.78 support
* Thu Dec 16 2021 Tomáš Hrnčiar <thrnciar@redhat.com> - 3.22.1-2
- Backport patch to add Python 3.11 support
* Tue Dec 07 2021 Björn Esser <besser82@fedoraproject.org> - 3.22.1-1
- cmake-3.22.1
Fixes rhbz#2029974
* Thu Dec 02 2021 Stephan Bergmann <sbergman@redhat.com> - 3.22.0-4
- Fixes RPATH_CHANGE fails when shared object is a GNU ld script
* Wed Dec 01 2021 Björn Esser <besser82@fedoraproject.org> - 3.22.0-3
- Update fix for rhbz#2027118 with upstream solution
* Sun Nov 28 2021 Björn Esser <besser82@fedoraproject.org> - 3.22.0-2
- Add patch to partially revert incompatible changes in GNUInstallDirs.cmake
Fixes rhbz#2027118
* Thu Nov 18 2021 Rex Dieter <rdieter@fedoraproject.org> - 3.22.0-1
- cmake-3.22.0 (#2024712)
* Fri Nov 12 2021 Björn Esser <besser82@fedoraproject.org> - 3.22.0-0.6.rc3
- cmake-3.22.0-rc3
Fixes rhbz#2022785
* Wed Nov 03 2021 Björn Esser <besser82@fedoraproject.org> - 3.22.0-0.5.rc2
- Disable bootstrap build for jsoncpp
* Wed Nov 03 2021 Björn Esser <besser82@fedoraproject.org> - 3.22.0-0.4.rc2
- Rebuild (jsoncpp)
* Thu Oct 28 2021 Björn Esser <besser82@fedoraproject.org> - 3.22.0-0.3.rc2
- cmake-3.22.0-rc2
Fixes rhbz#2018235
- Remove debug compiler flag in macros.cmake (CMAKE_Fortran_FLAGS_RELEASE)
Fixes rhbz#2017942
* Thu Oct 28 2021 Björn Esser <besser82@fedoraproject.org> - 3.22.0-0.2.rc1
- Revert previous changes to macros.cmake (-O2 -g)
Fixes rhbz#2017942
* Thu Oct 14 2021 Björn Esser <besser82@fedoraproject.org> - 3.22.0-0.1.rc1
- cmake-3.22.0-rc1
Fixes rhbz#2014190
- Do not build non-lto objects to reduce build time significantly
- Explicitly force optimization level 2 and debuginfo for release builds
* Mon Sep 20 2021 Björn Esser <besser82@fedoraproject.org> - 3.21.3-1
- cmake-3.21.3
Fixes rhbz#2006054
* Wed Aug 25 2021 Björn Esser <besser82@fedoraproject.org> - 3.21.2-1
- cmake-3.21.2
Fixes rhbz#1997708
* Tue Jul 27 2021 Björn Esser <besser82@fedoraproject.org> - 3.21.1-1
- cmake-3.21.1
Fixes rhbz#1986449
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.21.0-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue Jan 31 2023 Tom Stellard <tstellar@redhat.com> - 3.20.2-8
- Fix test case broken by git fix for CVE-2022-39253
* Thu Jul 15 2021 Björn Esser <besser82@fedoraproject.org> - 3.21.0-5
- cmake-3.21.0
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 3.20.2-7
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688
* Thu Jul 08 2021 Björn Esser <besser82@fedoraproject.org> - 3.21.0-4.rc3
- cmake-3.21.0-rc3
* Wed Jul 07 2021 sguelton@redhat.com - 3.20.2-6
- Another attempt at fixing License file
* Mon Jul 05 2021 Björn Esser <besser82@fedoraproject.org> - 3.21.0-3.rc2
- cmake-3.21.0-rc2
- Drop libdl patch for glibc >= 2.34, as it is upstreamed
* Thu Jul 01 2021 sguelton@redhat.com - 3.20.2-5
- libdl patch after glibc update (#1975096)
* Tue Jun 29 2021 Björn Esser <besser82@fedoraproject.org> - 3.21.0-2.rc1
- Rebuilt with upstreamed cmake-3.20.4-glibc_libdl.patch
* Fri Jun 25 2021 sguelton@redhat.com - 3.20.2-4
- Fix changelog entry
* Wed Jun 23 2021 Björn Esser <besser82@fedoraproject.org> - 3.21.0-1.rc1
- cmake-3.21.0-rc1 (#1975377)
* Thu Jun 24 2021 sguelton@redhat.com - 3.20.2-3
- Apply fixes similar to rhbz#1964392 and rhbz#1964407
* Mon Jun 21 2021 Björn Esser <besser82@fedoraproject.org> - 3.20.5-1
- cmake-3.20.5 (#1942118)
* Tue Jun 22 2021 Mohan Boddu <mboddu@redhat.com> - 3.20.2-2
- Rebuilt for RHEL 9 BETA for openssl 3.0
Related: rhbz#1971065
* Fri Jun 18 2021 Rex Dieter <rdieter@fedoraproject.org> - 3.20.4-1
- cmake-3.20.4 (#1942118)
- workaround libdl-related FTBFS (#1972535)
* Thu May 20 2021 sguelton@redhat.com - 3.20.2-1
- Sync with Fedora rawhide. (#1957948)
* Sun May 30 2021 Rex Dieter <rdieter@fedoraproject.org> - 3.20.3-1
- cmake-3.20.3
* Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 3.19.7-2
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Thu Apr 29 2021 Rex Dieter <rdieter@fedoraproject.org> - 3.20.2-1
- cmake-3.20.2 (#1942118)
- bash-completion fixes (#1924340)
- Release build type optimization options differ from upstream package (#1751155)
- parse parallel build from %%_smp_mflags instead of _NPROCESSORS_ONLN
- drop old dist references (rhel6)
* Mon Mar 15 2021 Rex Dieter <rdieter@fedoraproject.org> - 3.19.7-1
- cmake-3.19.7
@ -597,16 +986,16 @@ popd
* Tue Dec 15 2020 Tom Stellard <tstellar@redhat.com> - 3.18.4-4
- Update BuildRequires for eln
* Fri Nov 20 08:32:34 EST 2020 Neal Gompa <ngompa13@gmail.com> - 3.18.4-3
* Fri Nov 20 2020 Neal Gompa <ngompa13@gmail.com> - 3.18.4-3
- Ensure CMake does not strip binaries with package builds
* Mon Nov 09 2020 Miro Hrončok <mhroncok@redhat.com> - 3.18.4-2
- Add support for Python 3.10
* Tue Oct 13 10:03:16 CEST 2020 Björn Esser <besser82@fedoraproject.org> - 3.18.4-1
* Tue Oct 13 2020 Björn Esser <besser82@fedoraproject.org> - 3.18.4-1
- Update to 3.18.4
* Wed Sep 30 12:49:57 CEST 2020 Björn Esser <besser82@fedoraproject.org> - 3.18.3-1
* Wed Sep 30 2020 Björn Esser <besser82@fedoraproject.org> - 3.18.3-1
- Update to 3.18.3
- Explicitly require make
- Add patch to support FlexiBLAS

Loading…
Cancel
Save