]> git.pld-linux.org Git - packages/cmake.git/blame_incremental - cmake.spec
- up to 3.5.0
[packages/cmake.git] / cmake.spec
... / ...
CommitLineData
1# TODO:
2# - extend libx32 patch to work also on 64-bit arch
3# - any valid CMAKE_BUILD_TYPE causes overriding of our optflags
4# (and default non-verbose makefiles are hiding it!)
5# - rpmldflags/rpmcppflags are not passed through %%cmake macro at all
6# (is there any standard way???)
7#
8# Conditional build:
9%bcond_with bootstrap # use internal versions of some libraries
10%bcond_without gui # don't build gui package
11%bcond_with tests # perform "make test"
12%bcond_without doc # don't build documentation
13
14Summary: Cross-platform, open-source make system
15Summary(pl.UTF-8): Wieloplatformowy system make o otwartych źródłach
16Name: cmake
17Version: 3.5.0
18Release: 1
19License: BSD
20Group: Development/Building
21Source0: http://www.cmake.org/files/v3.5/%{name}-%{version}.tar.gz
22# Source0-md5: 33c5d09d4c33d4ffcc63578a6ba8777e
23Patch0: %{name}-lib64.patch
24Patch1: %{name}-libx32.patch
25Patch2: %{name}-helpers.patch
26Patch3: %{name}-findruby.patch
27Patch4: %{name}-findruby2.patch
28Patch5: man-syntax.patch
29URL: http://www.cmake.org/
30%{?with_gui:BuildRequires: QtGui-devel}
31BuildRequires: jsoncpp-devel >= 1.6.2-2
32BuildRequires: libarchive-devel
33BuildRequires: libstdc++-devel
34BuildRequires: ncurses-devel > 5.9-3
35%{?with_gui:BuildRequires: qt5-build}
36%{?with_gui:BuildRequires: qt5-qmake}
37BuildRequires: rpmbuild(macros) >= 1.167
38%{?with_doc:BuildRequires: sphinx-pdg}
39%{!?with_bootstrap:BuildRequires: xmlrpc-c-devel >= 1.4.12-2}
40Requires: filesystem >= 3.0-52
41BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
42
43%description
44CMake is used to control the software compilation process using simple
45platform and compiler independent configuration files. CMake generates
46native makefiles and workspaces that can be used in the compiler
47environment of your choice. CMake is quite sophisticated: it is
48possible to support complex environments requiring system
49configuration, pre-processor generation, code generation, and template
50instantiation.
51
52%description -l pl.UTF-8
53CMake służy do sterowania procesem kompilacji oprogramowania przy
54użyciu prostych plików konfiguracyjnych niezależnych od platformy i
55kompilatora. CMake generuje natywne pliki makefile i workspace,
56których można używać w wybranym środowisku kompilatora. CMake jest
57dość wyrafinowany: może obsłużyć złożone środowiska wymagające
58konfiguracji systemu, generowanie preprocesora, generowanie kodu i
59dziedziczenie szablonów.
60
61%package doc-html
62Summary: CMake documentation in HTML format
63Summary(pl.UTF-8): Dokumentacja do pakietu CMake w formacie HTML
64Group: Documentation
65
66%description doc-html
67CMake documentation in HTML format.
68
69%description doc-html -l pl.UTF-8
70Dokumentacja do pakietu CMake w formacie HTML.
71
72%package gui
73Summary: Qt GUI for CMake
74Summary(pl.UTF-8): Graficzny interfejs użytkownika Qt dla CMake
75Group: Development/Tools
76Requires: %{name} = %{version}-%{release}
77
78%description gui
79This package contains the Qt based GUI for CMake.
80
81%description gui -l pl.UTF-8
82Ten pakiet zawiera oparty na Qt graficzny interfejs użytkownika dla
83CMake.
84
85%package emacs
86Summary: Emacs mode for cmake files
87Summary(pl.UTF-8): Tryb Emacsa dla plików cmake'a
88Group: Development/Tools
89
90%description emacs
91Emacs mode for cmake files.
92
93%description emacs -l pl.UTF-8
94Tryb Emacsa dla plików cmake'a.
95
96%package -n bash-completion-%{name}
97Summary: bash-completion for cmake
98Summary(pl.UTF-8): Bashowe dopełnianie parametrów dla cmake'a
99Group: Applications/Shells
100Requires: %{name} = %{version}-%{release}
101Requires: bash-completion >= 2.0
102%if "%{_rpmversion}" >= "5"
103BuildArch: noarch
104%endif
105
106%description -n bash-completion-%{name}
107bash-completion for cmake.
108
109%description -n bash-completion-%{name} -l pl.UTF-8
110Bashowe dopełnianie parametrów dla cmake'a.
111
112%prep
113%setup -q
114%if "%{_lib}" == "lib64"
115%patch0 -p1
116%endif
117%if "%{_lib}" == "libx32"
118%patch1 -p1
119%endif
120%patch2 -p1
121%patch3 -p1
122%patch4 -p1
123%patch5 -p1
124
125cat > "init.cmake" <<EOF
126SET (CURSES_INCLUDE_PATH "/usr/include/ncurses" CACHE PATH " " FORCE)
127SET (CMAKE_INSTALL_SYSCONFDIR "%{_sysconfdir}" CACHE PATH " " FORCE)
128SET (CMAKE_INSTALL_DATADIR "%{_datadir}" CACHE PATH " " FORCE)
129EOF
130
131# cleanup backups after patching, modules are copied as-is
132find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
133
134%build
135export CC="%{__cc}"
136export CXX="%{__cxx}"
137export CFLAGS="%{rpmcflags}"
138export CXXFLAGS="%{rpmcxxflags}"
139export LDFLAGS="%{rpmldflags}"
140./bootstrap \
141 --prefix=%{_prefix} \
142 --mandir=/share/man \
143 --datadir=/share/cmake \
144 --init=init.cmake \
145 %{!?with_bootstrap:--system-libs} \
146 %{?with_gui:--qt-gui} \
147 --qt-qmake=%{_bindir}/qmake-qt4 \
148 %{?with_doc:--sphinx-html} \
149 %{?with_doc:--sphinx-man} \
150 --verbose
151
152%{__make} VERBOSE=1
153
154%{?with_tests:%{__make} test}
155
156%install
157rm -rf $RPM_BUILD_ROOT
158%{__make} install \
159 DESTDIR=$RPM_BUILD_ROOT
160
161%{__rm} -r $RPM_BUILD_ROOT%{_prefix}/doc
162
163%clean
164rm -rf $RPM_BUILD_ROOT
165
166%files
167%defattr(644,root,root,755)
168%doc Copyright.txt README.rst *.gif
169%attr(755,root,root) %{_bindir}/ccmake
170%attr(755,root,root) %{_bindir}/cmake
171%attr(755,root,root) %{_bindir}/cpack
172%attr(755,root,root) %{_bindir}/ctest
173%if %{with doc}
174%{_mandir}/man1/ccmake.1*
175%{_mandir}/man1/cmake.1*
176%{_mandir}/man1/cpack.1*
177%{_mandir}/man1/ctest.1*
178%{_mandir}/man7/cmake-buildsystem.7*
179%{_mandir}/man7/cmake-commands.7*
180%{_mandir}/man7/cmake-compile-features.7*
181%{_mandir}/man7/cmake-developer.7*
182%{_mandir}/man7/cmake-generator-expressions.7*
183%{_mandir}/man7/cmake-generators.7*
184%{_mandir}/man7/cmake-language.7*
185%{_mandir}/man7/cmake-modules.7*
186%{_mandir}/man7/cmake-packages.7*
187%{_mandir}/man7/cmake-policies.7*
188%{_mandir}/man7/cmake-properties.7*
189%{_mandir}/man7/cmake-qt.7*
190%{_mandir}/man7/cmake-toolchains.7*
191%{_mandir}/man7/cmake-variables.7*
192%{_datadir}/cmake/Help
193%endif
194# top cmake/Modules dirs belong to filesystem
195%{_datadir}/cmake/Modules/.NoDartCoverage
196%{_datadir}/cmake/Modules/*
197%{_datadir}/cmake/Templates
198%{_datadir}/cmake/editors
199%{_datadir}/cmake/include
200%{_aclocaldir}/cmake.m4
201
202%if %{with doc}
203%files doc-html
204%defattr(644,root,root,755)
205%doc Utilities/Sphinx/html/*
206%endif
207
208%if %{with gui}
209%files gui
210%defattr(644,root,root,755)
211%attr(755,root,root) %{_bindir}/cmake-gui
212%{_datadir}/mime/packages/cmakecache.xml
213%{_desktopdir}/CMake.desktop
214%{_iconsdir}/hicolor/128x128/apps/CMakeSetup.png
215%{_iconsdir}/hicolor/32x32/apps/CMakeSetup.png
216%{_mandir}/man1/cmake-gui.1*
217%endif
218
219%files emacs
220%defattr(644,root,root,755)
221%{_datadir}/emacs/site-lisp/cmake-mode.el
222
223%files -n bash-completion-%{name}
224%defattr(644,root,root,755)
225%{bash_compdir}/cmake
226%{bash_compdir}/cpack
227%{bash_compdir}/ctest
This page took 0.032965 seconds and 4 git commands to generate.