File macros.cmake.in of Package cmake

#
# Macros for cmake
#
%_cmake_lib_suffix64 -DLIB_SUFFIX=64
%_cmake_shared_libs -DBUILD_SHARED_LIBS:BOOL=ON
%_cmake_skip_rpath -DCMAKE_SKIP_RPATH:BOOL=ON
%_cmake_version @@CMAKE_VERSION@@
%__cmake /usr/bin/cmake
%__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
# - 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 \
  %{set_build_flags} \
  %__cmake \\\
        %{!?__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" \\\
        -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \\\
        -DCMAKE_INSTALL_DO_STRIP:BOOL=OFF \\\
        -DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} \\\
        -DCMAKE_INSTALL_FULL_SBINDIR:PATH=%{_sbindir} \\\
        -DCMAKE_INSTALL_SBINDIR:PATH=%(s=%{_sbindir}; echo ${s##*/}) \\\
        -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 \
        %{?_cmake_shared_libs}

%cmake_build \
  %__cmake --build "%{__cmake_builddir}" %{?_smp_mflags} --verbose

%cmake_install \
  DESTDIR="%{buildroot}" %__cmake --install "%{__cmake_builddir}"

%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} \\\
            %{lua:print((string.gsub(rpm.expand('%{**}'),"%-%-%s","")))}


# Declarative buildsystem macros (usable with rpm >= 4.20)
# https://rpm-software-management.github.io/rpm/manual/buildsystem.html
%cmake_generate_buildrequires(-) echo "cmake-rpm-macros"; echo "cmake"

%buildsystem_cmake_generate_buildrequires() %cmake_generate_buildrequires %{*}
%buildsystem_cmake_conf() %cmake %{*}
%buildsystem_cmake_build() %cmake_build %{*}
%buildsystem_cmake_install() %cmake_install %{*}
%buildsystem_cmake_check() %{?with_ctest:%ctest %{*}} %{!?with_ctest:%{nil}}


# Legacy cmakeX macros for multiversioned CMake

%cmake@@CMAKE_MAJOR_VERSION@@ %cmake
%cmake@@CMAKE_MAJOR_VERSION@@_build %cmake_build
%cmake@@CMAKE_MAJOR_VERSION@@_install %cmake_install
%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 %{**}
openSUSE Build Service is sponsored by