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