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