2 # - any valid CMAKE_BUILD_TYPE causes overriding of our optflags
3 # (and default non-verbose makefiles are hiding it!)
4 # - rpmldflags/rpmcppflags are not passed through %%cmake macro at all
5 # (is there any standard way???)
8 %bcond_with bootstrap # use internal versions of some libraries
9 %bcond_without gui # don't build gui package
10 %bcond_without tests # do not perform "make test"
12 Summary: Cross-platform, open-source make system
13 Summary(pl.UTF-8): Wieloplatformowy system make o otwartych źródłach
18 Group: Development/Building
19 Source0: http://www.cmake.org/files/v2.8/%{name}-%{version}.tar.gz
20 # Source0-md5: 17c6513483d23590cbce6957ec6d1e66
21 Patch0: %{name}-lib64.patch
22 Patch1: %{name}-helpers.patch
23 Patch2: %{name}-findruby.patch
24 Patch3: %{name}-tests.patch
25 Patch4: %{name}-freetype2.patch
26 URL: http://www.cmake.org/
27 %{?with_gui:BuildRequires: QtGui-devel}
28 BuildRequires: libarchive-devel
29 BuildRequires: libstdc++-devel
30 BuildRequires: ncurses-devel > 5.9-3
31 %{?with_gui:BuildRequires: qt4-build}
32 %{?with_gui:BuildRequires: qt4-qmake}
33 BuildRequires: rpmbuild(macros) >= 1.167
34 %{!?with_bootstrap:BuildRequires: xmlrpc-c-devel >= 1.4.12-2}
35 Requires: filesystem >= 3.0-52
36 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
39 CMake is used to control the software compilation process using simple
40 platform and compiler independent configuration files. CMake generates
41 native makefiles and workspaces that can be used in the compiler
42 environment of your choice. CMake is quite sophisticated: it is
43 possible to support complex environments requiring system
44 configuration, pre-processor generation, code generation, and template
47 %description -l pl.UTF-8
48 CMake służy do sterowania procesem kompilacji oprogramowania przy
49 użyciu prostych plików konfiguracyjnych niezależnych od platformy i
50 kompilatora. CMake generuje natywne pliki makefile i workspace,
51 których można używać w wybranym środowisku kompilatora. CMake jest
52 dość wyrafinowany: może obsłużyć złożone środowiska wymagające
53 konfiguracji systemu, generowanie preprocesora, generowanie kodu i
54 dziedziczenie szablonów.
57 Summary: Qt GUI for CMake
58 Summary(pl.UTF-8): Graficzny interfejs użytkownika Qt dla CMake
59 Group: Development/Tools
60 Requires: %{name} = %{version}-%{release}
63 This package contains the Qt based GUI for CMake.
65 %description gui -l pl.UTF-8
66 Ten pakiet zawiera oparty na Qt graficzny interfejs użytkownika dla
70 Summary: Emacs mode for cmake files
71 Summary(pl.UTF-8): Tryb Emacsa dla plików cmake'a
72 Group: Development/Tools
75 Emacs mode for cmake files.
77 %description emacs -l pl.UTF-8
78 Tryb Emacsa dla plików cmake'a.
80 %package -n bash-completion-%{name}
81 Summary: bash-completion for cmake
82 Summary(pl.UTF-8): Bashowe dopełnianie parametrów dla cmake'a
83 Group: Applications/Shells
84 Requires: %{name} = %{version}-%{release}
85 Requires: bash-completion >= 2.0
87 %description -n bash-completion-%{name}
88 bash-completion for cmake.
90 %description -n bash-completion-%{name} -l pl.UTF-8
91 Bashowe dopełnianie parametrów dla cmake'a.
95 %if "%{_lib}" == "lib64"
103 cat > "init.cmake" <<EOF
104 SET (CURSES_INCLUDE_PATH "/usr/include/ncurses" CACHE PATH " " FORCE)
105 SET (CMAKE_INSTALL_SYSCONFDIR "%{_sysconfdir}" CACHE PATH " " FORCE)
106 SET (CMAKE_INSTALL_DATADIR "%{_datadir}" CACHE PATH " " FORCE)
111 export CXX="%{__cxx}"
112 export CFLAGS="%{rpmcflags}"
113 export CXXFLAGS="%{rpmcxxflags}"
114 export LDFLAGS="%{rpmldflags}"
116 --prefix=%{_prefix} \
117 --mandir=/share/man \
118 --datadir=/share/cmake \
120 %{!?with_bootstrap:--system-libs} \
121 %{?with_gui:--qt-gui} \
122 --qt-qmake=/usr/bin/qmake-qt4 \
127 %{?with_tests:%{__make} test}
130 rm -rf $RPM_BUILD_ROOT
132 DESTDIR=$RPM_BUILD_ROOT
134 %{__rm} -r $RPM_BUILD_ROOT%{_prefix}/doc
137 rm -rf $RPM_BUILD_ROOT
140 %defattr(644,root,root,755)
141 %doc ChangeLog.* Copyright.txt *.gif Docs/{cmake,ctest}.{txt,html}
142 %attr(755,root,root) %{_bindir}/ccmake
143 %attr(755,root,root) %{_bindir}/cmake
144 %attr(755,root,root) %{_bindir}/cpack
145 %attr(755,root,root) %{_bindir}/ctest
146 %{_mandir}/man1/ccmake.1*
147 %{_mandir}/man1/cmake.1*
148 %{_mandir}/man1/cmakecommands.1*
149 %{_mandir}/man1/cmakecompat.1*
150 %{_mandir}/man1/cmakemodules.1*
151 %{_mandir}/man1/cmakepolicies.1*
152 %{_mandir}/man1/cmakeprops.1*
153 %{_mandir}/man1/cmakevars.1*
154 %{_mandir}/man1/cpack.1*
155 %{_mandir}/man1/ctest.1*
156 # top cmake/Modules dirs belong to filesystem
157 %{_datadir}/cmake/Modules/.NoDartCoverage
158 %{_datadir}/cmake/Modules/*
159 %{_datadir}/cmake/Templates
160 %{_datadir}/cmake/editors
161 %{_datadir}/cmake/include
162 %{_aclocaldir}/cmake.m4
166 %defattr(644,root,root,755)
167 %attr(755,root,root) %{_bindir}/cmake-gui
168 %{_datadir}/mime/packages/cmakecache.xml
169 %{_desktopdir}/CMake.desktop
170 %{_pixmapsdir}/CMakeSetup32.png
171 %{_mandir}/man1/cmake-gui.1*
175 %defattr(644,root,root,755)
176 %{_datadir}/emacs/site-lisp/cmake-mode.el
178 %files -n bash-completion-%{name}
179 %defattr(644,root,root,755)
180 %{_datadir}/bash-completion/completions/cmake
181 %{_datadir}/bash-completion/completions/cpack
182 %{_datadir}/bash-completion/completions/ctest