From d9ac0c8d8d95f6283d77e0617e341889fc0b3236 Mon Sep 17 00:00:00 2001 From: Igor Raits Date: Fri, 3 Jul 2020 19:52:09 +0200 Subject: [PATCH 1/8] Add %cmake_build/%cmake_install/%ctest macros with support of out-of-source builds Signed-off-by: Igor Raits Reviewed-by: Neal Gompa --- cmake.spec | 6 +++++- macros.cmake | 22 +++++++++++++++++++++- 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/cmake.spec b/cmake.spec index 23cb7c2..8ac7f28 100644 --- a/cmake.spec +++ b/cmake.spec @@ -67,7 +67,7 @@ Name: %{orig_name}%{?name_suffix} Version: %{major_version}.%{minor_version}.3 -Release: 1%{?relsuf}%{?dist} +Release: 2%{?relsuf}%{?dist} Summary: Cross-platform make system # most sources are BSD @@ -493,6 +493,10 @@ mv -f Modules/FindLibArchive.disabled Modules/FindLibArchive.cmake %changelog +* Fri Jul 03 2020 Igor Raits - 3.17.3-2 +- Add %%cmake_build/%%cmake_install/%%ctest macros +- Add %%__cmake_in_source_build macro to control in-source/out-of-source builds + * Fri May 29 2020 Björn Esser - 3.17.3-1 - Update to cmake-3.17.3 diff --git a/macros.cmake b/macros.cmake index ebfebee..8440d93 100644 --- a/macros.cmake +++ b/macros.cmake @@ -6,6 +6,9 @@ %_cmake_skip_rpath -DCMAKE_SKIP_RPATH:BOOL=ON %_cmake_version @@CMAKE_VERSION@@ %__cmake /usr/bin/cmake +%__ctest /usr/bin/ctest +%__cmake_in_source_build 1 +%__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 @@ -24,6 +27,8 @@ %{?__global_ldflags:LDFLAGS="${LDFLAGS:-%__global_ldflags}" ; export LDFLAGS ;} \ %endif \ %__cmake \\\ + -S "%{_vpath_srcdir}" \\\ + -B "%{__cmake_builddir}" \\\ -DCMAKE_C_FLAGS_RELEASE:STRING="-DNDEBUG" \\\ -DCMAKE_CXX_FLAGS_RELEASE:STRING="-DNDEBUG" \\\ -DCMAKE_Fortran_FLAGS_RELEASE:STRING="-DNDEBUG" \\\ @@ -36,6 +41,21 @@ %if "%{?_lib}" == "lib64" \ %{?_cmake_lib_suffix64} \\\ %endif \ - %{?_cmake_shared_libs} + %{?_cmake_shared_libs} + +%cmake_build \ + %__cmake --build "%{__cmake_builddir}" %{?_smp_mflags} --verbose + +%cmake_install \ + DESTDIR="%{buildroot}" %__cmake --install "%{__cmake_builddir}" + +%ctest(:-:) \ + cd "%{__cmake_builddir}" \ + %__ctest --output-on-failure --force-new-ctest-process %{?_smp_mflags} %{**} \ + cd - + %cmake@@CMAKE_MAJOR_VERSION@@ %cmake +%cmake@@CMAKE_MAJOR_VERSION@@_build %cmake_build +%cmake@@CMAKE_MAJOR_VERSION@@_install %cmake_install +%ctest@@CMAKE_MAJOR_VERSION@@ %ctest From 19fa547d6f186885b912550659d8593c92cf868b Mon Sep 17 00:00:00 2001 From: Neal Gompa Date: Sun, 19 Jul 2020 08:47:24 -0400 Subject: [PATCH 2/8] Make in-source builds behave like before --- cmake.spec | 5 ++++- macros.cmake | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/cmake.spec b/cmake.spec index 8ac7f28..d770962 100644 --- a/cmake.spec +++ b/cmake.spec @@ -67,7 +67,7 @@ Name: %{orig_name}%{?name_suffix} Version: %{major_version}.%{minor_version}.3 -Release: 2%{?relsuf}%{?dist} +Release: 3%{?relsuf}%{?dist} Summary: Cross-platform make system # most sources are BSD @@ -493,6 +493,9 @@ mv -f Modules/FindLibArchive.disabled Modules/FindLibArchive.cmake %changelog +* Sun Jul 19 2020 Neal Gompa - 3.17.3-3 +- Make in-source builds behave like before + * Fri Jul 03 2020 Igor Raits - 3.17.3-2 - Add %%cmake_build/%%cmake_install/%%ctest macros - Add %%__cmake_in_source_build macro to control in-source/out-of-source builds diff --git a/macros.cmake b/macros.cmake index 8440d93..6bd0ede 100644 --- a/macros.cmake +++ b/macros.cmake @@ -27,8 +27,8 @@ %{?__global_ldflags:LDFLAGS="${LDFLAGS:-%__global_ldflags}" ; export LDFLAGS ;} \ %endif \ %__cmake \\\ - -S "%{_vpath_srcdir}" \\\ - -B "%{__cmake_builddir}" \\\ + %{!?__cmake_in_source_build:-S "%{_vpath_srcdir}"} \\\ + %{!?__cmake_in_source_build:-B "%{__cmake_builddir}"} \\\ -DCMAKE_C_FLAGS_RELEASE:STRING="-DNDEBUG" \\\ -DCMAKE_CXX_FLAGS_RELEASE:STRING="-DNDEBUG" \\\ -DCMAKE_Fortran_FLAGS_RELEASE:STRING="-DNDEBUG" \\\ From 8cebacce6ab2c18c53adf46f5ad5286201c43616 Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Tue, 21 Jul 2020 20:36:38 -0600 Subject: [PATCH 3/8] Default to --verbose for ctest as well --- macros.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/macros.cmake b/macros.cmake index 6bd0ede..c75e846 100644 --- a/macros.cmake +++ b/macros.cmake @@ -51,7 +51,7 @@ %ctest(:-:) \ cd "%{__cmake_builddir}" \ - %__ctest --output-on-failure --force-new-ctest-process %{?_smp_mflags} %{**} \ + %__ctest --output-on-failure --force-new-ctest-process %{?_smp_mflags} --verbose %{**} \ cd - From 88d09b89f6f699dd51fa78bcd4d251856cfb6a12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= Date: Wed, 22 Jul 2020 22:27:03 +0200 Subject: [PATCH 4/8] Default to --verbose for ctest as well --- cmake.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cmake.spec b/cmake.spec index d770962..1dbd631 100644 --- a/cmake.spec +++ b/cmake.spec @@ -67,7 +67,7 @@ Name: %{orig_name}%{?name_suffix} Version: %{major_version}.%{minor_version}.3 -Release: 3%{?relsuf}%{?dist} +Release: 4%{?relsuf}%{?dist} Summary: Cross-platform make system # most sources are BSD @@ -493,6 +493,9 @@ mv -f Modules/FindLibArchive.disabled Modules/FindLibArchive.cmake %changelog +* Wed Jul 22 2020 Björn Esser - 3.17.3-4 +- Default to --verbose for ctest as well + * Sun Jul 19 2020 Neal Gompa - 3.17.3-3 - Make in-source builds behave like before From 921d65c3a9e6e17310e9ea2b5a0cace4eea66726 Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Wed, 29 Jul 2020 22:03:29 -0600 Subject: [PATCH 5/8] Handle arguments for ctest3 macro --- cmake.spec | 5 ++++- macros.cmake | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/cmake.spec b/cmake.spec index 1dbd631..37847ef 100644 --- a/cmake.spec +++ b/cmake.spec @@ -67,7 +67,7 @@ Name: %{orig_name}%{?name_suffix} Version: %{major_version}.%{minor_version}.3 -Release: 4%{?relsuf}%{?dist} +Release: 5%{?relsuf}%{?dist} Summary: Cross-platform make system # most sources are BSD @@ -493,6 +493,9 @@ mv -f Modules/FindLibArchive.disabled Modules/FindLibArchive.cmake %changelog +* Wed Jul 29 2020 Orion Poplawski - 3.17.3-5 +- Handle arguments for ctest3 macro + * Wed Jul 22 2020 Björn Esser - 3.17.3-4 - Default to --verbose for ctest as well diff --git a/macros.cmake b/macros.cmake index c75e846..2f442b6 100644 --- a/macros.cmake +++ b/macros.cmake @@ -58,4 +58,4 @@ %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@@(:-:) %ctest %{**} From f0d65aa2fc4396bf4884829e6ff71e54f01f157b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= Date: Sat, 1 Aug 2020 13:55:32 +0200 Subject: [PATCH 6/8] Update to cmake-3.17.4 --- cmake.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/cmake.spec b/cmake.spec index 37847ef..4f7e784 100644 --- a/cmake.spec +++ b/cmake.spec @@ -66,8 +66,8 @@ %global orig_name cmake Name: %{orig_name}%{?name_suffix} -Version: %{major_version}.%{minor_version}.3 -Release: 5%{?relsuf}%{?dist} +Version: %{major_version}.%{minor_version}.4 +Release: 1%{?relsuf}%{?dist} Summary: Cross-platform make system # most sources are BSD @@ -493,6 +493,9 @@ mv -f Modules/FindLibArchive.disabled Modules/FindLibArchive.cmake %changelog +* Sat Aug 01 2020 Björn Esser - 3.17.4-1 +- Update to cmake-3.17.4 + * Wed Jul 29 2020 Orion Poplawski - 3.17.3-5 - Handle arguments for ctest3 macro diff --git a/sources b/sources index 626b891..c14c35f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (cmake-3.17.3.tar.gz) = 13479bd48ef8a8c95277a62b4f42e63152a5979292a98b5456022ca42ad3963cad75e917cc8b92a8485dbf5a2b59cde3fdc90fd9abdb806bc97c8570d03c1c69 +SHA512 (cmake-3.17.4.tar.gz) = 6af879502e52388f3be02a4edfb006274840ad1afa8f28ffd6ec69b0310c7f718812b2272e5f77ffa422717f61407a6d482deb95941555c21c73fc5f62356a4e From 019959b7516aae56d0c364214034b2e85ca6b5ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= Date: Wed, 30 Sep 2020 13:08:30 +0200 Subject: [PATCH 7/8] Revert "Default to --verbose for ctest as well" This reverts commit 8cebacce6ab2c18c53adf46f5ad5286201c43616. --- cmake.spec | 5 ++++- macros.cmake | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/cmake.spec b/cmake.spec index 4f7e784..41471d6 100644 --- a/cmake.spec +++ b/cmake.spec @@ -67,7 +67,7 @@ Name: %{orig_name}%{?name_suffix} Version: %{major_version}.%{minor_version}.4 -Release: 1%{?relsuf}%{?dist} +Release: 2%{?relsuf}%{?dist} Summary: Cross-platform make system # most sources are BSD @@ -493,6 +493,9 @@ mv -f Modules/FindLibArchive.disabled Modules/FindLibArchive.cmake %changelog +* Wed Sep 30 13:08:53 CEST 2020 Björn Esser - 3.17.4-2 +- Make %ctest non-verbose by default + * Sat Aug 01 2020 Björn Esser - 3.17.4-1 - Update to cmake-3.17.4 diff --git a/macros.cmake b/macros.cmake index 2f442b6..b8a5182 100644 --- a/macros.cmake +++ b/macros.cmake @@ -51,7 +51,7 @@ %ctest(:-:) \ cd "%{__cmake_builddir}" \ - %__ctest --output-on-failure --force-new-ctest-process %{?_smp_mflags} --verbose %{**} \ + %__ctest --output-on-failure --force-new-ctest-process %{?_smp_mflags} %{**} \ cd - From 6ed3fff4d0fdb144689a841435764ff3dbd7cbcd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= Date: Wed, 30 Sep 2020 13:12:58 +0200 Subject: [PATCH 8/8] Explicitly require make --- cmake.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/cmake.spec b/cmake.spec index 41471d6..89f605c 100644 --- a/cmake.spec +++ b/cmake.spec @@ -174,6 +174,9 @@ Requires: %{name}-data = %{version}-%{release} Requires: %{name}-rpm-macros = %{version}-%{release} Requires: %{name}-filesystem%{?_isa} = %{version}-%{release} +# Explicitly require make. (rhbz#1862014) +Requires: make + # Provide the major version name Provides: %{orig_name}%{major_version} = %{version}-%{release} @@ -495,6 +498,7 @@ mv -f Modules/FindLibArchive.disabled Modules/FindLibArchive.cmake %changelog * Wed Sep 30 13:08:53 CEST 2020 Björn Esser - 3.17.4-2 - Make %ctest non-verbose by default +- Explicitly require make * Sat Aug 01 2020 Björn Esser - 3.17.4-1 - Update to cmake-3.17.4