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 Patch5: %{name}-findruby2.patch
27 URL: http://www.cmake.org/
28 %{?with_gui:BuildRequires: QtGui-devel}
29 BuildRequires: libarchive-devel
30 BuildRequires: libstdc++-devel
31 BuildRequires: ncurses-devel > 5.9-3
32 %{?with_gui:BuildRequires: qt4-build}
33 %{?with_gui:BuildRequires: qt4-qmake}
34 BuildRequires: rpmbuild(macros) >= 1.167
35 %{!?with_bootstrap:BuildRequires: xmlrpc-c-devel >= 1.4.12-2}
36 Requires: filesystem >= 3.0-52
37 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
40 CMake is used to control the software compilation process using simple
41 platform and compiler independent configuration files. CMake generates
42 native makefiles and workspaces that can be used in the compiler
43 environment of your choice. CMake is quite sophisticated: it is
44 possible to support complex environments requiring system
45 configuration, pre-processor generation, code generation, and template
48 %description -l pl.UTF-8
49 CMake służy do sterowania procesem kompilacji oprogramowania przy
50 użyciu prostych plików konfiguracyjnych niezależnych od platformy i
51 kompilatora. CMake generuje natywne pliki makefile i workspace,
52 których można używać w wybranym środowisku kompilatora. CMake jest
53 dość wyrafinowany: może obsłużyć złożone środowiska wymagające
54 konfiguracji systemu, generowanie preprocesora, generowanie kodu i
55 dziedziczenie szablonów.
58 Summary: Qt GUI for CMake
59 Summary(pl.UTF-8): Graficzny interfejs użytkownika Qt dla CMake
60 Group: Development/Tools
61 Requires: %{name} = %{version}-%{release}
64 This package contains the Qt based GUI for CMake.
66 %description gui -l pl.UTF-8
67 Ten pakiet zawiera oparty na Qt graficzny interfejs użytkownika dla
71 Summary: Emacs mode for cmake files
72 Summary(pl.UTF-8): Tryb Emacsa dla plików cmake'a
73 Group: Development/Tools
76 Emacs mode for cmake files.
78 %description emacs -l pl.UTF-8
79 Tryb Emacsa dla plików cmake'a.
81 %package -n bash-completion-%{name}
82 Summary: bash-completion for cmake
83 Summary(pl.UTF-8): Bashowe dopełnianie parametrów dla cmake'a
84 Group: Applications/Shells
85 Requires: %{name} = %{version}-%{release}
86 Requires: bash-completion >= 2.0
87 %if "%{_rpmversion}" >= "5"
91 %description -n bash-completion-%{name}
92 bash-completion for cmake.
94 %description -n bash-completion-%{name} -l pl.UTF-8
95 Bashowe dopełnianie parametrów dla cmake'a.
99 %if "%{_lib}" == "lib64"
108 cat > "init.cmake" <<EOF
109 SET (CURSES_INCLUDE_PATH "/usr/include/ncurses" CACHE PATH " " FORCE)
110 SET (CMAKE_INSTALL_SYSCONFDIR "%{_sysconfdir}" CACHE PATH " " FORCE)
111 SET (CMAKE_INSTALL_DATADIR "%{_datadir}" CACHE PATH " " FORCE)
114 # cleanup backups after patching, modules are copied as-is
115 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
119 export CXX="%{__cxx}"
120 export CFLAGS="%{rpmcflags}"
121 export CXXFLAGS="%{rpmcxxflags}"
122 export LDFLAGS="%{rpmldflags}"
124 --prefix=%{_prefix} \
125 --mandir=/share/man \
126 --datadir=/share/cmake \
128 %{!?with_bootstrap:--system-libs} \
129 %{?with_gui:--qt-gui} \
130 --qt-qmake=/usr/bin/qmake-qt4 \
135 %{?with_tests:%{__make} test}
138 rm -rf $RPM_BUILD_ROOT
140 DESTDIR=$RPM_BUILD_ROOT
142 %{__rm} -r $RPM_BUILD_ROOT%{_prefix}/doc
145 rm -rf $RPM_BUILD_ROOT
148 %defattr(644,root,root,755)
149 %doc ChangeLog.* Copyright.txt *.gif Docs/{cmake,ctest}.{txt,html}
150 %attr(755,root,root) %{_bindir}/ccmake
151 %attr(755,root,root) %{_bindir}/cmake
152 %attr(755,root,root) %{_bindir}/cpack
153 %attr(755,root,root) %{_bindir}/ctest
154 %{_mandir}/man1/ccmake.1*
155 %{_mandir}/man1/cmake.1*
156 %{_mandir}/man1/cmakecommands.1*
157 %{_mandir}/man1/cmakecompat.1*
158 %{_mandir}/man1/cmakemodules.1*
159 %{_mandir}/man1/cmakepolicies.1*
160 %{_mandir}/man1/cmakeprops.1*
161 %{_mandir}/man1/cmakevars.1*
162 %{_mandir}/man1/cpack.1*
163 %{_mandir}/man1/ctest.1*
164 # top cmake/Modules dirs belong to filesystem
165 %{_datadir}/cmake/Modules/.NoDartCoverage
166 %{_datadir}/cmake/Modules/*
167 %{_datadir}/cmake/Templates
168 %{_datadir}/cmake/editors
169 %{_datadir}/cmake/include
170 %{_aclocaldir}/cmake.m4
174 %defattr(644,root,root,755)
175 %attr(755,root,root) %{_bindir}/cmake-gui
176 %{_datadir}/mime/packages/cmakecache.xml
177 %{_desktopdir}/CMake.desktop
178 %{_pixmapsdir}/CMakeSetup32.png
179 %{_mandir}/man1/cmake-gui.1*
183 %defattr(644,root,root,755)
184 %{_datadir}/emacs/site-lisp/cmake-mode.el
186 %files -n bash-completion-%{name}
187 %defattr(644,root,root,755)
188 %{_datadir}/bash-completion/completions/cmake
189 %{_datadir}/bash-completion/completions/cpack
190 %{_datadir}/bash-completion/completions/ctest