]> git.pld-linux.org Git - packages/cmake.git/blob - cmake.spec
f1b0830f8c1b4d5314777d737a5e3632615ae7a6
[packages/cmake.git] / cmake.spec
1 # TODO:
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???)
6 #
7 # Conditional build:
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"
11
12 Summary:        Cross-platform, open-source make system
13 Summary(pl.UTF-8):      Wieloplatformowy system make o otwartych źródłach
14 Name:           cmake
15 Version:        2.8.12.1
16 Release:        1
17 License:        BSD
18 Group:          Development/Building
19 Source0:        http://www.cmake.org/files/v2.8/%{name}-%{version}.tar.gz
20 # Source0-md5:  9d38cd4e2c94c3cea97d0e2924814acc
21 Patch0:         %{name}-lib64.patch
22 Patch1:         %{name}-helpers.patch
23 Patch2:         %{name}-findruby.patch
24 Patch3:         %{name}-tests.patch
25 URL:            http://www.cmake.org/
26 %{?with_gui:BuildRequires:      QtGui-devel}
27 BuildRequires:  libarchive-devel
28 BuildRequires:  libstdc++-devel
29 BuildRequires:  ncurses-devel > 5.9-3
30 %{?with_gui:BuildRequires:      qt4-build}
31 %{?with_gui:BuildRequires:      qt4-qmake}
32 BuildRequires:  rpmbuild(macros) >= 1.167
33 %{!?with_bootstrap:BuildRequires:       xmlrpc-c-devel >= 1.4.12-2}
34 Requires:       filesystem >= 3.0-52
35 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
36
37 %description
38 CMake is used to control the software compilation process using simple
39 platform and compiler independent configuration files. CMake generates
40 native makefiles and workspaces that can be used in the compiler
41 environment of your choice. CMake is quite sophisticated: it is
42 possible to support complex environments requiring system
43 configuration, pre-processor generation, code generation, and template
44 instantiation.
45
46 %description -l pl.UTF-8
47 CMake służy do sterowania procesem kompilacji oprogramowania przy
48 użyciu prostych plików konfiguracyjnych niezależnych od platformy i
49 kompilatora. CMake generuje natywne pliki makefile i workspace,
50 których można używać w wybranym środowisku kompilatora. CMake jest
51 dość wyrafinowany: może obsłużyć złożone środowiska wymagające
52 konfiguracji systemu, generowanie preprocesora, generowanie kodu i
53 dziedziczenie szablonów.
54
55 %package gui
56 Summary:        Qt GUI for CMake
57 Summary(pl.UTF-8):      Graficzny interfejs użytkownika Qt dla CMake
58 Group:          Development/Tools
59 Requires:       %{name} = %{version}-%{release}
60
61 %description gui
62 This package contains the Qt based GUI for CMake.
63
64 %description gui -l pl.UTF-8
65 Ten pakiet zawiera oparty na Qt graficzny interfejs użytkownika dla
66 CMake.
67
68 %package emacs
69 Summary:        Emacs mode for cmake files
70 Summary(pl.UTF-8):      Tryb Emacsa dla plików cmake'a
71 Group:          Development/Tools
72
73 %description emacs
74 Emacs mode for cmake files.
75
76 %description emacs -l pl.UTF-8
77 Tryb Emacsa dla plików cmake'a.
78
79 %package -n bash-completion-%{name}
80 Summary:        bash-completion for cmake
81 Summary(pl.UTF-8):      Bashowe dopełnianie parametrów dla cmake'a
82 Group:          Applications/Shells
83 Requires:       %{name} = %{version}-%{release}
84 Requires:       bash-completion >= 2.0
85
86 %description -n bash-completion-%{name}
87 bash-completion for cmake.
88
89 %description -n bash-completion-%{name} -l pl.UTF-8
90 Bashowe dopełnianie parametrów dla cmake'a.
91
92 %prep
93 %setup -q
94 %if "%{_lib}" == "lib64"
95 %patch0 -p1
96 %endif
97 %patch1 -p1
98 %patch2 -p1
99 %patch3 -p1
100
101 cat > "init.cmake" <<EOF
102 SET (CURSES_INCLUDE_PATH "/usr/include/ncurses" CACHE PATH " " FORCE)
103 SET (CMAKE_INSTALL_SYSCONFDIR "%{_sysconfdir}" CACHE PATH " " FORCE)
104 SET (CMAKE_INSTALL_DATADIR "%{_datadir}" CACHE PATH " " FORCE)
105 EOF
106
107 %build
108 export CC="%{__cc}"
109 export CXX="%{__cxx}"
110 export CFLAGS="%{rpmcflags}"
111 export CXXFLAGS="%{rpmcxxflags}"
112 export LDFLAGS="%{rpmldflags}"
113 ./bootstrap \
114         --prefix=%{_prefix} \
115         --mandir=/share/man \
116         --datadir=/share/cmake \
117         --init=init.cmake \
118         %{!?with_bootstrap:--system-libs} \
119         %{?with_gui:--qt-gui} \
120         --qt-qmake=/usr/bin/qmake-qt4 \
121         --verbose
122
123 %{__make} VERBOSE=1
124
125 %{?with_tests:%{__make} test}
126
127 %install
128 rm -rf $RPM_BUILD_ROOT
129 %{__make} install \
130         DESTDIR=$RPM_BUILD_ROOT
131
132 %{__rm} -r $RPM_BUILD_ROOT%{_prefix}/doc
133
134 %clean
135 rm -rf $RPM_BUILD_ROOT
136
137 %files
138 %defattr(644,root,root,755)
139 %doc ChangeLog.* Copyright.txt *.gif Docs/{cmake,ctest}.{txt,html}
140 %attr(755,root,root) %{_bindir}/ccmake
141 %attr(755,root,root) %{_bindir}/cmake
142 %attr(755,root,root) %{_bindir}/cpack
143 %attr(755,root,root) %{_bindir}/ctest
144 %{_mandir}/man1/ccmake.1*
145 %{_mandir}/man1/cmake.1*
146 %{_mandir}/man1/cmakecommands.1*
147 %{_mandir}/man1/cmakecompat.1*
148 %{_mandir}/man1/cmakemodules.1*
149 %{_mandir}/man1/cmakepolicies.1*
150 %{_mandir}/man1/cmakeprops.1*
151 %{_mandir}/man1/cmakevars.1*
152 %{_mandir}/man1/cpack.1*
153 %{_mandir}/man1/ctest.1*
154 # top cmake/Modules dirs belong to filesystem
155 %{_datadir}/cmake/Modules/.NoDartCoverage
156 %{_datadir}/cmake/Modules/*
157 %{_datadir}/cmake/Templates
158 %{_datadir}/cmake/editors
159 %{_datadir}/cmake/include
160 %{_aclocaldir}/cmake.m4
161
162 %if %{with gui}
163 %files gui
164 %defattr(644,root,root,755)
165 %attr(755,root,root) %{_bindir}/cmake-gui
166 %{_datadir}/mime/packages/cmakecache.xml
167 %{_desktopdir}/CMake.desktop
168 %{_pixmapsdir}/CMakeSetup32.png
169 %{_mandir}/man1/cmake-gui.1*
170 %endif
171
172 %files emacs
173 %defattr(644,root,root,755)
174 %{_datadir}/emacs/site-lisp/cmake-mode.el
175
176 %files -n bash-completion-%{name}
177 %defattr(644,root,root,755)
178 %{_datadir}/bash-completion/completions/cmake
179 %{_datadir}/bash-completion/completions/cpack
180 %{_datadir}/bash-completion/completions/ctest
This page took 0.072717 seconds and 2 git commands to generate.