# Set to bcond_without or use --with bootstrap if bootstrapping a new release # or architecture %bcond_with bootstrap # Set to bcond_with or use --without gui to disable qt4 gui build %bcond_with gui Name: cmake Summary: Cross-platform make system Summary(ja): クロスプラットフォームな Make システム Version: 3.19.6 Release: 1%{?_dist_release} Group: programming Vendor: Project Vine Distribution: Vine Linux License: BSD URL: https://www.cmake.org/ Source0: https://github.com/Kitware/CMake/releases/download/v%{version}/cmake-%{version}.tar.gz Source1: macros.cmake Source3: %{name}.attr Source4: %{name}.prov Source5: %{name}.req BuildRoot: %{_tmppath}/%{name}-%{version}-root BuildRequires: curl-devel BuildRequires: expat-devel BuildRequires: gcc-gfortran BuildRequires: libarchive-devel #BuildRequires: libidn-devel BuildRequires: ncurses-devel BuildRequires: openssl-devel BuildRequires: zlib-devel BuildRequires: xz-devel BuildRequires: jsoncpp-devel %if %{with gui} BuildRequires: qt4-devel, desktop-file-utils %define qt_gui --qt-gui %else %define qt_gui --no-qt-gui %endif Provides: %{name}-filesystem%{?_isa} = %{version}-%{release} %global major_version %(echo %{version} | cut -d . -f 1) %global minor_version %(echo %{version} | cut -d . -f 2) %description CMake is used to control the software compilation process using simple platform and compiler independent configuration files. CMake generates native makefiles and workspaces that can be used in the compiler environment of your choice. CMake is quite sophisticated: it is possible to support complex environments requiring system configuration, pre-processor generation, code generation, and template instantiation. %package gui Summary: Qt GUI for %{name} Group: programming Requires: %{name} = %{version}-%{release} Requires(post): desktop-file-utils, shared-mime-info Requires(postun): desktop-file-utils, shared-mime-info %description gui The %{name}-gui package contains the Qt based GUI for CMake. %debug_package %prep %setup -q %build ./bootstrap \ --prefix=%{_prefix} \ --datadir=/share/%{name} \ --docdir=/share/doc/%{name} \ --mandir=/share/man \ %if 0%{?with_bootstrap} --no-system-libs \ %else --system-curl \ --system-expat \ --system-jsoncpp \ --system-zlib \ --system-bzip2 \ --system-liblzma \ --system-libarchive \ --no-system-librhash \ %endif --parallel=`/usr/bin/getconf _NPROCESSORS_ONLN` \ %{?qt_gui} \ -- -DCMAKE_USE_SYSTEM_LIBUV=OFF # sed -i 's/-lcurses/-lcurses -ltinfo/' Source/CMakeFiles/ccmake.dir/link.txt make VERBOSE=1 %{?_smp_mflags} %install rm -rf %{buildroot} make install DESTDIR=%{buildroot} find %{buildroot}/%{_datadir}/%{name}/Modules -type f | xargs chmod -x rm -rf %{buildroot}/usr/doc # RPM macros install -p -m0644 -D %{SOURCE1} %{buildroot}%{_rpmmacrodir}/macros.cmake sed -i -e "s|@@CMAKE_MAJOR_VERSION@@|%{major_version}|" %{buildroot}%{_rpmmacrodir}/macros.cmake touch -r %{SOURCE1} %{buildroot}%{_rpmmacrodir}/macros.cmake # RPM auto provides install -p -m0644 -D %{SOURCE3} %{buildroot}%{_prefix}/lib/rpm/fileattrs/%{name}.attr install -p -m0755 -D %{SOURCE4} %{buildroot}%{_prefix}/lib/rpm/%{name}.prov install -p -m0755 -D %{SOURCE5} %{buildroot}%{_prefix}/lib/rpm/%{name}.req %if %{with gui} # Desktop file desktop-file-install --delete-original \ --dir=%{buildroot}%{_datadir}/applications \ %{buildroot}/%{_datadir}/applications/CMake.desktop %endif rm -rf doc mv -f %{buildroot}%{_docdir}/%{name} ./doc %clean rm -rf $RPM_BUILD_ROOT %if %{with gui} %post gui update-desktop-database &> /dev/null || : update-mime-database %{_datadir}/mime &> /dev/null || : %postun gui update-desktop-database &> /dev/null || : update-mime-database %{_datadir}/mime &> /dev/null || : %endif %files %defattr(-,root,root) %doc CMakeLogo.gif README.* doc %doc Help %license Copyright.txt Licenses/* %config(noreplace) %{_rpmmacrodir}/macros.cmake %{_rpmconfigdir}/fileattrs/%{name}.attr %{_rpmconfigdir}/%{name}.prov %{_rpmconfigdir}/%{name}.req %{_bindir}/ccmake %{_bindir}/cmake %{_bindir}/cpack %{_bindir}/ctest %{_datadir}/%{name}/ %{_datadir}/aclocal/cmake.m4 %dir %{_datadir}/bash-completion %dir %{_datadir}/bash-completion/completions %{_datadir}/bash-completion/completions/* %exclude /usr/share/vim %exclude /usr/share/emacs %if %{with gui} %files gui %defattr(-,root,root,-) %{_bindir}/cmake-gui %{_datadir}/applications/CMake.desktop %{_datadir}/mime/packages/cmakecache.xml %{_datadir}/icons/hicolor/*/*/* %endif %changelog * Sat Feb 27 2021 Tomohiro "Tomo-p" KATO 3.19.6-1 - updated to 3.19.6. - updated macros.cmake. * Thu Jul 16 2020 Tomohiro "Tomo-p" KATO 3.18.0-1 - updated to 3.18.0. * Sat Sep 21 2019 Tomohiro "Tomo-p" KATO 3.15.3-1 - updated to 3.15.3. * Mon Jan 01 2018 Tomohiro "Tomo-p" KATO 3.10.1-1 - updated to 3.10.1. - updated macros.cmake. - disabled gui. * Thu Jun 30 2016 Yoji TOYODA 3.5.2-2 - rebuild with gcc-5.4.0 * Sat May 07 2016 Yoji TOYODA 3.5.2-1 - update to 3.5.2 - add BuildRequires: xz-devel, jsoncpp-devel - remove old patches * Sat Sep 12 2015 Yoji TOYODA 2.8.12.2-1 - update to 2.8.12.2 * Sat Sep 12 2015 Yoji TOYODA 2.8.12.2-1 - update to 2.8.12.2 - add Patch2 (cmake-2.8.12.2-ruby-2.2.x.patch) * Sun Jul 06 2014 Yoji TOYODA 2.8.12.1-2 - rebuild with libarchive-3.1.2 * Mon Dec 23 2013 Yoji TOYODA 2.8.12.1-1 - new upstream release - add Patch1 (cmake-2.8.12.1-FindFreetype.patch) * Sun Jul 07 2013 Yoji TOYODA 2.8.11.2-1 - new upstream release * Wed Jun 05 2013 Yoji TOYODA 2.8.11-1 - new upstream release * Mon Apr 29 2013 Toshiharu Kudoh 2.8.10.2-1 - new upstream release - fixed desktop file warning * Sun Jun 10 2012 Yoji TOYODA 2.8.6-2 - rebuild with libarchive-3.0.4 * Sat Nov 19 2011 Ryoichi INAGAKI 2.8.6-1 - new upstream release - forced to link with libtinfo.so (ccmake) - used --system-libs again * Sat Jan 8 2011 Ryoichi INAGAKI 2.8.3-1 - new upstream release - used --no-system-libs, removed BR: curl-devel, expat-devel, zlib-devel * Sun Sep 5 2010 Ryoichi INAGAKI 2.8.2-4 - fixed typo (not --with-system-libs, but --system-libs) - added BR: curl-devel, expat-devel, zlib-devel * Mon Aug 23 2010 Yoji TOYODA 2.8.2-3 - add BuildRequires: ncurses-devel * Sun Aug 22 2010 Ryoichi INAGAKI 2.8.2-2 - generate gui package - renamed module directory * Sun Jul 25 2010 Ryoichi INAGAKI 2.8.2-1 - new upstream release * Fri Feb 05 2010 Shu KONNO 2.6.4-3 - rebuilt with new toolchain * Sun Aug 30 2009 NAKAMURA Kenta 2.6.4-2 - imported RPM macros from Fedora (cmake-2.6.4-3.fc12) * Tue Aug 25 2009 Ryoichi INAGAKI 2.6.4-1 - new upstream release - added Vendor/Distribution tag * Wed Mar 25 2009 AKIYAMA Kazuhito 2.6.3-1 - new upstream release * Tue Oct 21 2008 AKIYAMA Kazuhito 2.6.2-1 - new upstream release * Sat Mar 29 2008 AKIYAMA Kazuhito 2.4.8-1 - new upstream release * Wed Aug 15 2007 AKIYAMA Kazuhito 2.4.7-0vl1 - new upstream release * Mon May 14 2007 AKIYAMA Kazuhito 2.4.6-0vl1 - new upstream release - drop Patch100 - use bootstrap script instead of configure - delete caches from %%doc * Sat May 12 2007 MATSUBAYASHI Kohji 2.4.3-0vl2 - rebuilt with new toolchain * Tue Oct 31 2006 AKIYAMA Kazuhito 2.4.3-0vl1 - new upstream release - delete duped docs * Fri Oct 13 2006 MATSUBAYASHI Kohji 2.2.3-0vl2 - added Patch100 (especially for ppc to solve ppc/powerpc issue) * Mon Feb 06 2006 Seiya Nishizawa 2.2.3-0vl1 - source version up * Sun Mar 20 2005 Seiya Nishizawa 2.0.5-0vl1 - initial build for Vine Linux