2007-04-06 16:56:30 +00:00
|
|
|
#
|
|
|
|
# Macros for cmake
|
|
|
|
#
|
|
|
|
%_cmake_lib_suffix64 -DLIB_SUFFIX=64
|
2018-12-08 22:16:41 +00:00
|
|
|
%_cmake_shared_libs -DBUILD_SHARED_LIBS:BOOL=ON
|
2009-01-04 21:10:23 +00:00
|
|
|
%_cmake_skip_rpath -DCMAKE_SKIP_RPATH:BOOL=ON
|
2009-03-16 16:20:14 +00:00
|
|
|
%_cmake_version @@CMAKE_VERSION@@
|
2009-09-17 15:19:25 +00:00
|
|
|
%__cmake /usr/bin/cmake
|
2020-05-09 18:30:33 +00:00
|
|
|
%__ctest /usr/bin/ctest
|
2020-07-03 16:11:19 +00:00
|
|
|
%__cmake_builddir %{!?__cmake_in_source_build:%{_vpath_builddir}}%{?__cmake_in_source_build:.}
|
2007-04-06 16:56:30 +00:00
|
|
|
|
2023-05-27 17:08:15 +00:00
|
|
|
|
2013-04-18 15:59:15 +00:00
|
|
|
# - Set default compile flags
|
|
|
|
# - CMAKE_*_FLAGS_RELEASE are added *after* the *FLAGS environment variables
|
2023-05-27 17:08:15 +00:00
|
|
|
# and default to -O3 -DNDEBUG. Strip the -O3 so we can override with *FLAGS
|
2013-04-18 15:59:15 +00:00
|
|
|
# - Turn on verbose makefiles so we can see and verify compile flags
|
2020-11-20 13:32:34 +00:00
|
|
|
# - Turn off stripping by default so RPM can do it separately
|
2013-04-18 15:59:15 +00:00
|
|
|
# - Set default install prefixes and library install directories
|
|
|
|
# - Turn on shared libraries by default
|
2007-04-06 16:56:30 +00:00
|
|
|
%cmake \
|
2023-05-27 17:10:21 +00:00
|
|
|
%{set_build_flags} \
|
2007-04-06 16:56:30 +00:00
|
|
|
%__cmake \\\
|
2020-07-19 12:45:08 +00:00
|
|
|
%{!?__cmake_in_source_build:-S "%{_vpath_srcdir}"} \\\
|
|
|
|
%{!?__cmake_in_source_build:-B "%{__cmake_builddir}"} \\\
|
2021-10-28 08:31:51 +00:00
|
|
|
-DCMAKE_C_FLAGS_RELEASE:STRING="-DNDEBUG" \\\
|
|
|
|
-DCMAKE_CXX_FLAGS_RELEASE:STRING="-DNDEBUG" \\\
|
2021-10-28 16:35:35 +00:00
|
|
|
-DCMAKE_Fortran_FLAGS_RELEASE:STRING="-DNDEBUG" \\\
|
2013-04-18 15:59:15 +00:00
|
|
|
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \\\
|
2020-11-20 13:32:34 +00:00
|
|
|
-DCMAKE_INSTALL_DO_STRIP:BOOL=OFF \\\
|
2007-06-27 17:00:25 +00:00
|
|
|
-DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} \\\
|
2012-02-21 23:11:17 +00:00
|
|
|
-DINCLUDE_INSTALL_DIR:PATH=%{_includedir} \\\
|
|
|
|
-DLIB_INSTALL_DIR:PATH=%{_libdir} \\\
|
|
|
|
-DSYSCONF_INSTALL_DIR:PATH=%{_sysconfdir} \\\
|
|
|
|
-DSHARE_INSTALL_PREFIX:PATH=%{_datadir} \\\
|
|
|
|
%if "%{?_lib}" == "lib64" \
|
|
|
|
%{?_cmake_lib_suffix64} \\\
|
|
|
|
%endif \
|
2020-07-03 15:12:56 +00:00
|
|
|
%{?_cmake_shared_libs}
|
2016-08-17 17:07:59 +00:00
|
|
|
|
2020-05-09 18:30:33 +00:00
|
|
|
%cmake_build \
|
2020-07-03 15:12:56 +00:00
|
|
|
%__cmake --build "%{__cmake_builddir}" %{?_smp_mflags} --verbose
|
2020-05-09 18:30:33 +00:00
|
|
|
|
|
|
|
%cmake_install \
|
2020-07-03 15:12:56 +00:00
|
|
|
DESTDIR="%{buildroot}" %__cmake --install "%{__cmake_builddir}"
|
2020-05-09 18:30:33 +00:00
|
|
|
|
2022-10-30 12:56:05 +00:00
|
|
|
%ctest(:-:h:j:u:v:A:C:D:E:F:H:I:L:M:N:O:Q:R:S:T:U:V:) \
|
2024-02-20 13:41:54 +00:00
|
|
|
%__ctest --test-dir "%{__cmake_builddir}" \\\
|
|
|
|
--output-on-failure \\\
|
|
|
|
--force-new-ctest-process \\\
|
|
|
|
%ifarch riscv64 \
|
|
|
|
--timeout 6000 \\\
|
|
|
|
%endif \
|
|
|
|
%{?_smp_mflags} %{**}
|
2020-05-09 18:30:33 +00:00
|
|
|
|
|
|
|
|
2016-08-17 17:07:59 +00:00
|
|
|
%cmake@@CMAKE_MAJOR_VERSION@@ %cmake
|
2020-05-09 18:30:33 +00:00
|
|
|
%cmake@@CMAKE_MAJOR_VERSION@@_build %cmake_build
|
|
|
|
%cmake@@CMAKE_MAJOR_VERSION@@_install %cmake_install
|
2022-10-30 12:56:05 +00:00
|
|
|
%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 %{**}
|