]>
Commit | Line | Data |
---|---|---|
1f630180 | 1 | # TODO: |
1930bef0 | 2 | # - remove net_client_only and add db bcond (then without apache and |
3 | # without db => net_client_only - spec will be more simpler, I think) | |
d46e45ba | 4 | # - finish ruby |
1930bef0 | 5 | # |
bab73684 | 6 | # Conditional build: |
65c1d4bd | 7 | %bcond_with net_client_only # build only net client |
3fc01170 | 8 | %bcond_without neon # use serf instead of neon |
65c1d4bd JB |
9 | %bcond_without python # build without python bindings (broken) |
10 | %bcond_without perl # build without perl bindings | |
73ab938a | 11 | %bcond_without ruby # build without ruby bindings |
65c1d4bd JB |
12 | %bcond_without apache # build without apache support (webdav, etc) |
13 | %bcond_without javahl # build without javahl support (Java high-level bindings) | |
14 | %bcond_without tests # don't perform "make check" | |
7b27380f | 15 | # |
bc126282 | 16 | %ifnarch i586 i686 pentium3 pentium4 athlon %{x8664} |
c2f5643d | 17 | %undefine with_javahl |
bc126282 AG |
18 | %endif |
19 | # | |
b56474ff | 20 | %{!?with_net_client_only:%include /usr/lib/rpm/macros.perl} |
f4070f5f | 21 | %define apxs /usr/sbin/apxs |
1f630180 ER |
22 | %define pdir SVN |
23 | %define pnam _Core | |
12ae68c1 | 24 | # |
04129f48 | 25 | %if %{with neon} |
a510fada | 26 | %define webdavlib neon |
04129f48 AG |
27 | %else |
28 | %define webdavlib serf | |
a510fada AM |
29 | %endif |
30 | # | |
67cb9518 | 31 | Summary: A Concurrent Versioning system similar to but better than CVS |
abe3c421 ER |
32 | Summary(pl.UTF-8): System kontroli wersji podobny, ale lepszy, niż CVS |
33 | Summary(pt_BR.UTF-8): Sistema de versionamento concorrente | |
93b78127 | 34 | Name: subversion |
a9df98b6 AM |
35 | Version: 1.5.6 |
36 | Release: 1 | |
6f88d80e | 37 | License: Apache/BSD-like |
93b78127 | 38 | Group: Development/Version Control |
af7b0bac | 39 | Source0: http://subversion.tigris.org/downloads/%{name}-%{version}.tar.bz2 |
a9df98b6 | 40 | # Source0-md5: 3d1dabbbcacf262e3e0baa3de79220d7 |
93b78127 | 41 | Source1: %{name}-dav_svn.conf |
65318afa | 42 | Source2: %{name}-authz_svn.conf |
b56474ff AM |
43 | Source3: %{name}-svnserve.init |
44 | Source4: %{name}-svnserve.sysconfig | |
a510fada AM |
45 | # current subversion tarball has correct *.swg files |
46 | # but after regeneration these are broken again, so | |
47 | # we still need this script | |
f313e9a9 | 48 | Source5: %{name}-convert-typemaps-to-ifdef.py |
ed6210a2 | 49 | Patch0: %{name}-home_etc.patch |
d46e45ba | 50 | Patch1: %{name}-DESTDIR.patch |
00664663 | 51 | Patch2: %{name}-ruby-datadir-path.patch |
d2bf70bf | 52 | URL: http://subversion.tigris.org/ |
4945947e AM |
53 | %if %{with net_client_only} |
54 | %global apache_modules_api 0 | |
55 | %else | |
f2a757d6 | 56 | %{?with_apache:BuildRequires: apache-devel >= 2.2.0-8} |
7b27380f | 57 | BuildRequires: automake |
3817faf5 | 58 | BuildRequires: db-devel >= 4.1.25 |
e8d9186f | 59 | BuildRequires: rpmbuild(macros) >= 1.268 |
0905b458 | 60 | %if %{with perl} |
522a69b4 | 61 | BuildRequires: perl-devel >= 1:5.8.0 |
62 | BuildRequires: rpm-perlprov >= 4.1-13 | |
15f9818d | 63 | BuildRequires: swig-perl >= 1.3.24 |
536b3fd3 | 64 | %endif |
1cc7453a | 65 | %{?with_javahl:BuildRequires: jdk} |
0905b458 | 66 | %endif |
16429189 | 67 | BuildRequires: apr-devel >= 1:1.0.0 |
a6ecf312 | 68 | BuildRequires: apr-util-devel >= 1:1.2.8-3 |
b0a7a5b2 | 69 | BuildRequires: autoconf >= 2.59 |
79d8c53c | 70 | BuildRequires: bison |
12ae68c1 | 71 | BuildRequires: cyrus-sasl-devel |
93b78127 | 72 | BuildRequires: expat-devel |
86ea8fde | 73 | BuildRequires: gettext-devel |
f4e6a380 | 74 | BuildRequires: libtool >= 1.4-9 |
a562165a JB |
75 | BuildRequires: sed >= 4.0 |
76 | BuildRequires: texinfo | |
77 | BuildRequires: which | |
78 | %if %{with neon} | |
bd3c99a8 | 79 | BuildRequires: neon-devel >= 0.26.0 |
a562165a JB |
80 | %else |
81 | BuildRequires: serf-devel | |
e3ad24ea | 82 | %endif |
53855fbf | 83 | BuildRequires: python >= 2.2 |
ed6210a2 | 84 | BuildRequires: python-modules >= 2.2 |
f313e9a9 | 85 | %if %{with python} |
86 | BuildRequires: python-devel >= 2.2 | |
15f9818d | 87 | BuildRequires: swig-python >= 1.3.24 |
0905b458 | 88 | %endif |
a562165a JB |
89 | %if %{with ruby} |
90 | BuildRequires: ruby-devel | |
91 | BuildRequires: swig-ruby >= 1.3.24 | |
92 | %endif | |
027f8ebe | 93 | Requires: %{name}-libs = %{version}-%{release} |
93b78127 AM |
94 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
95 | ||
f4070f5f | 96 | %define _libexecdir %{_libdir}/svn |
1af5e34d ER |
97 | %define apacheconfdir %(%{apxs} -q SYSCONFDIR 2>/dev/null)/conf.d |
98 | %define apachelibdir %(%{apxs} -q LIBEXECDIR 2>/dev/null) | |
93b78127 AM |
99 | |
100 | %description | |
101 | The goal of the Subversion project is to build a version control | |
102 | system that is a compelling replacement for CVS in the open source | |
103 | community. | |
104 | ||
105 | Our goals are: | |
106 | - All current CVS features. | |
107 | - Directories, renames, and file meta-data are versioned. | |
108 | - Symbolic links, etc, are supported | |
109 | - Commits are truly atomic. | |
110 | - Branching and tagging are cheap (constant time) operations | |
111 | - Repeated merges are handled gracefully | |
112 | - Support for plug-in client side diff programs | |
113 | - Natively client/server | |
114 | - Client/server protocol sends diffs in both directions | |
115 | - Costs are proportional to change size, not project size | |
116 | - Internationalization | |
117 | - Progressive multi-lingual support | |
118 | ||
aa59005f | 119 | %description -l pl.UTF-8 |
93b78127 AM |
120 | Celem projektu Subversion jest stworzenie systemu kontroli wersji jako |
121 | zamiennika dla CVS. | |
122 | ||
123 | Cele projektu to: | |
aa59005f | 124 | - Wszystkie aktualne możliwości CVS. |
24406120 JB |
125 | - Katalogi, zmiany nazw oraz metadane plików są wersjonowane. |
126 | - Obsługa dowiązań symbolicznych itp. | |
aa59005f JR |
127 | - Commity są w pełni atomowe. |
128 | - Branchowanie oraz tagowanie są tanimi (stałymi w czasie) operacjami. | |
24406120 JB |
129 | - Dobra obsługa powtarzanego łączenia (merge). |
130 | - Obsługa wtyczek diff po stronie klienta. | |
93b78127 | 131 | - Natywny klient/serwer. |
aa59005f | 132 | - Klient/Serwer przesyłają diffy w obu kierunkach. |
93b78127 AM |
133 | - Koszty proporcjonalne do rozmiaru zmiany, a nie rozmiaru projektu. |
134 | - Internacjonalizacja. | |
aa59005f | 135 | - Postępujące wsparcie dla wielu języków. |
93b78127 | 136 | |
aa59005f JR |
137 | %description -l pt_BR.UTF-8 |
138 | O objetivo do projeto Subversion é construir um sistema de controle de | |
139 | versões que seja um substituto para o CVS (Concurrent Versioning | |
92066deb | 140 | System) na comunidade opensource, fornecendo grandes melhorias. |
141 | ||
f4e6a380 AM |
142 | %package libs |
143 | Summary: Subversion libraries and modules | |
abe3c421 | 144 | Summary(pl.UTF-8): Biblioteka subversion oraz ładowalne moduły |
f4e6a380 | 145 | Group: Libraries |
04129f48 | 146 | %{?with_neon:Requires: neon >= 0.26.0} |
53855fbf | 147 | Obsoletes: libsubversion0 |
f4e6a380 AM |
148 | |
149 | %description libs | |
150 | Subversion libraries and modules. | |
151 | ||
aa59005f JR |
152 | %description libs -l pl.UTF-8 |
153 | Biblioteka subversion oraz ładowalne moduły. | |
f4e6a380 | 154 | |
93b78127 AM |
155 | %package devel |
156 | Summary: Header files and develpment documentation for subversion | |
abe3c421 ER |
157 | Summary(pl.UTF-8): Pliki nagłówkowe i dokumetacja do subversion |
158 | Summary(pt_BR.UTF-8): Arquivos de desenvolvimento para o Subversion | |
93b78127 | 159 | Group: Development/Libraries |
9cb7e099 | 160 | Requires: %{name}-libs = %{version}-%{release} |
c5b1d686 | 161 | Requires: apr-util-devel >= 1:1.0.0 |
04129f48 | 162 | %{?with_neon:Requires: neon-devel >= 0.26.0} |
12cf252c | 163 | Obsoletes: libsubversion0-devel |
93b78127 AM |
164 | |
165 | %description devel | |
166 | Header files and develpment documentation for subversion. | |
167 | ||
aa59005f JR |
168 | %description devel -l pl.UTF-8 |
169 | Pliki nagłówkowe i dokumetacja do subversion. | |
93b78127 | 170 | |
aa59005f JR |
171 | %description devel -l pt_BR.UTF-8 |
172 | Este pacote provê os arquivos necessários para desenvolvedores | |
92066deb | 173 | interagirem com o Subversion. |
174 | ||
93b78127 AM |
175 | %package static |
176 | Summary: Static subversion library | |
abe3c421 ER |
177 | Summary(pl.UTF-8): Biblioteka statyczna subversion |
178 | Summary(pt_BR.UTF-8): Sistema de versionamento concorrente | |
93b78127 AM |
179 | Group: Development/Libraries |
180 | Requires: %{name}-devel = %{version} | |
12cf252c | 181 | Obsoletes: libsubversion0-static-devel |
93b78127 AM |
182 | |
183 | %description static | |
184 | Static subversion library. | |
185 | ||
aa59005f | 186 | %description static -l pl.UTF-8 |
93b78127 AM |
187 | Biblioteka statyczna subversion. |
188 | ||
aa59005f JR |
189 | %description static -l pt_BR.UTF-8 |
190 | Este pacote provê um cliente estático do subversion. | |
92066deb | 191 | |
b56474ff AM |
192 | %package svnserve |
193 | Summary: Subversion svnserve | |
abe3c421 | 194 | Summary(pl.UTF-8): Subversion svnserve |
b56474ff | 195 | Group: Networking/Daemons |
3817faf5 | 196 | Requires(post,preun): /sbin/chkconfig |
93f1d402 | 197 | Requires(postun): /usr/sbin/groupdel |
198 | Requires(postun): /usr/sbin/userdel | |
199 | Requires(pre): /bin/id | |
200 | Requires(pre): /usr/bin/getgid | |
201 | Requires(pre): /usr/lib/rpm/user_group.sh | |
202 | Requires(pre): /usr/sbin/groupadd | |
203 | Requires(pre): /usr/sbin/useradd | |
204 | Requires(pre): /usr/sbin/usermod | |
9cb7e099 | 205 | Requires: %{name} = %{version}-%{release} |
7b27380f | 206 | Requires: rc-scripts |
a1bac09d MŁ |
207 | Provides: group(svn) |
208 | Provides: user(svn) | |
b56474ff AM |
209 | |
210 | %description svnserve | |
211 | Subversion svnserve server. | |
212 | ||
aa59005f | 213 | %description svnserve -l pl.UTF-8 |
b56474ff AM |
214 | Serwer subversion svnserve. |
215 | ||
4bbdbbf8 AM |
216 | %package tools |
217 | Summary: Subversion tools and scripts | |
abe3c421 ER |
218 | Summary(pl.UTF-8): Narzędzia oraz skrypty dla subversion |
219 | Summary(pt_BR.UTF-8): Módulos python para acessar os recursos do Subversion | |
4bbdbbf8 | 220 | Group: Applications |
4bbdbbf8 | 221 | %pyrequires_eq python |
7b27380f | 222 | Requires: %{name} = %{version}-%{release} |
1271c9bd | 223 | Requires: python-rcsparse >= 0.1-0.20031026.0 |
4bbdbbf8 AM |
224 | Requires: python-subversion = %{version} |
225 | ||
226 | %description tools | |
227 | Subversion tools and scripts. | |
228 | ||
aa59005f JR |
229 | %description tools -l pl.UTF-8 |
230 | Narzędzia oraz skrypty dla subversion. | |
4bbdbbf8 | 231 | |
fe5bb6bb | 232 | %package -n bash-completion-subversion |
233 | Summary: bash completion for subversion | |
abe3c421 | 234 | Summary(pl.UTF-8): Dopełnienia basha dla subversion |
fe5bb6bb | 235 | Group: Applications/Shells |
e30588c4 | 236 | Requires: %{name} = %{version}-%{release} |
53855fbf | 237 | Requires: bash-completion |
e30588c4 | 238 | Conflicts: %{name}-tools <= 1.1.0-0.rc6.1 |
fe5bb6bb | 239 | |
240 | %description -n bash-completion-subversion | |
241 | Bash completion for subversion. | |
242 | ||
aa59005f JR |
243 | %description -n bash-completion-subversion -l pl.UTF-8 |
244 | Dopełnienia basha dla subversion. | |
fe5bb6bb | 245 | |
1cc7453a | 246 | %package -n java-subversion |
65c1d4bd JB |
247 | Summary: Subversion Java bindings |
248 | Summary(pl.UTF-8): Dowiązania do Subversion dla Javy | |
1cc7453a | 249 | Group: Development/Languages/Java |
250 | Requires: %{name}-libs = %{version}-%{release} | |
251 | ||
252 | %description -n java-subversion | |
253 | This is a set of Java classes which provide the functionality of | |
254 | subversion-libs, the Subversion libraries. It is useful if you want | |
255 | to, for example, write a Java class that manipulates a Subversion | |
256 | repository or working copy. See the 'subversion' package for more | |
257 | information. | |
258 | ||
65c1d4bd JB |
259 | %description -n java-subversion -l pl.UTF-8 |
260 | Ten pakiet zawiera zestaw klas Javy udostępniających funkcjonalność | |
261 | subversion-libs, czyli bibliotek Subversion. Jest przydatny przy | |
d46e45ba AM |
262 | pisaniu klas Javy np. modyfikujących repozytorium Subversion lub kopię |
263 | roboczą. Więcej informacji w pakiecie subversion. | |
65c1d4bd | 264 | |
fa3ff1b2 | 265 | %package -n python-subversion |
65c1d4bd JB |
266 | Summary: Subversion Python bindings |
267 | Summary(pl.UTF-8): Dowiązania do Subversion dla Pythona | |
268 | Summary(pt_BR.UTF-8): Módulos Python para acessar os recursos do Subversion | |
f4e6a380 | 269 | Group: Development/Languages/Python |
f4e6a380 | 270 | %pyrequires_eq python |
9cb7e099 | 271 | Requires: %{name}-libs = %{version}-%{release} |
53855fbf | 272 | Obsoletes: subversion-python |
f4e6a380 | 273 | |
fa3ff1b2 | 274 | %description -n python-subversion |
65c1d4bd | 275 | Subversion Python bindings. |
f4e6a380 | 276 | |
aa59005f | 277 | %description -n python-subversion -l pl.UTF-8 |
65c1d4bd | 278 | Dowiązania do Subversion dla Pythona. |
f4e6a380 | 279 | |
aa59005f | 280 | %description -n python-subversion -l pt_BR.UTF-8 |
65c1d4bd | 281 | Módulos Python para acessar os recursos do Subversion. |
92066deb | 282 | |
b56474ff | 283 | %package -n perl-subversion |
65c1d4bd JB |
284 | Summary: Subversion Perl bindings |
285 | Summary(pl.UTF-8): Dowiązania do Subversion dla Perla | |
286 | Summary(pt_BR.UTF-8): Módulos Perl para acessar os recursos do Subversion | |
b56474ff | 287 | Group: Development/Languages/Perl |
9cb7e099 | 288 | Requires: %{name}-libs = %{version}-%{release} |
53855fbf | 289 | Obsoletes: subversion-perl |
b56474ff AM |
290 | |
291 | %description -n perl-subversion | |
65c1d4bd | 292 | Subversion Perl bindings. |
b56474ff | 293 | |
aa59005f | 294 | %description -n perl-subversion -l pl.UTF-8 |
65c1d4bd | 295 | Dowiązania do Subversion dla Perla. |
b56474ff | 296 | |
aa59005f | 297 | %description -n perl-subversion -l pt_BR.UTF-8 |
65c1d4bd | 298 | Módulos Perl para acessar os recursos do Subversion. |
b56474ff | 299 | |
d46e45ba AM |
300 | %package -n ruby-subversion |
301 | Summary: Subversion Ruby bindings | |
d2bf70bf | 302 | Summary(pl.UTF-8): Dowiązania do Subversion dla języka Ruby |
d46e45ba AM |
303 | Summary(pt_BR.UTF-8): Módulos Ruby para acessar os recursos do Subversion |
304 | Group: Development/Languages | |
305 | Requires: %{name}-libs = %{version}-%{release} | |
306 | Obsoletes: subversion-ruby | |
307 | ||
308 | %description -n ruby-subversion | |
309 | Subversion Ruby bindings. | |
310 | ||
311 | %description -n ruby-subversion -l pl.UTF-8 | |
d2bf70bf | 312 | Dowiązania do Subversion dla języka Ruby. |
d46e45ba AM |
313 | |
314 | %description -n ruby-subversion -l pt_BR.UTF-8 | |
315 | Módulos Ruby para acessar os recursos do Subversion. | |
316 | ||
93b78127 AM |
317 | %package -n apache-mod_dav_svn |
318 | Summary: Apache module: Subversion Server | |
abe3c421 | 319 | Summary(pl.UTF-8): Moduł apache: Serwer Subversion |
93b78127 | 320 | Group: Networking/Daemons |
7b27380f | 321 | Requires: %{name} = %{version}-%{release} |
53855fbf | 322 | Requires: apache(modules-api) = %apache_modules_api |
7887b1ac | 323 | Requires: apache-mod_dav |
93b78127 AM |
324 | |
325 | %description -n apache-mod_dav_svn | |
326 | Apache module: Subversion Server. | |
327 | ||
aa59005f JR |
328 | %description -n apache-mod_dav_svn -l pl.UTF-8 |
329 | Moduł apache: Serwer Subversion. | |
93b78127 | 330 | |
65318afa AF |
331 | %package -n apache-mod_authz_svn |
332 | Summary: Apache module: Subversion Server - path-based authorization | |
abe3c421 | 333 | Summary(pl.UTF-8): Moduł apache: autoryzacja na podstawie ścieżki dla serwera Subversion |
65318afa | 334 | Group: Networking/Daemons |
53855fbf | 335 | Requires: apache(modules-api) = %apache_modules_api |
9cb7e099 | 336 | Requires: apache-mod_dav_svn = %{version}-%{release} |
65318afa AF |
337 | |
338 | %description -n apache-mod_authz_svn | |
339 | Apache module: Subversion Server - path-based authorization. | |
340 | ||
aa59005f JR |
341 | %description -n apache-mod_authz_svn -l pl.UTF-8 |
342 | Moduł apache: autoryzacja na podstawie ścieżki dla serwera Subversion. | |
e23909be | 343 | |
93b78127 | 344 | %prep |
af7b0bac | 345 | %setup -q |
e30588c4 | 346 | rm -rf apr apr-util neon |
ed6210a2 | 347 | %patch0 -p0 |
d4bccc60 | 348 | %patch1 -p1 |
00664663 | 349 | %patch2 -p0 |
a510fada AM |
350 | |
351 | sed -i -e 's#serf_prefix/lib#serf_prefix/%{_lib}#g' build/ac-macros/serf.m4 | |
352 | ||
353 | # serf.m4 macro is broken and ignores --without serf | |
244bdb04 | 354 | %{?with_neon:sed -i -e 's#serf_found="yes"#serf_found="no"#g' build/ac-macros/serf.m4} |
027f8ebe | 355 | |
93b78127 | 356 | %build |
93f1d402 | 357 | rm subversion/bindings/swig/proxy/*.swg |
24406120 | 358 | cd subversion/bindings/swig && python "%{SOURCE5}" && cd ../../.. |
a7bcb345 | 359 | cp -f /usr/share/automake/config.sub ac-helpers |
67cb9518 | 360 | chmod +x ./autogen.sh && ./autogen.sh |
8a3d9172 | 361 | |
93b78127 | 362 | %configure \ |
5dfeafd7 | 363 | --with-editor=vi \ |
12ae68c1 | 364 | --with-zlib=%{_libdir} \ |
536b3fd3 AM |
365 | %if %{with net_client_only} |
366 | --without-apache \ | |
367 | --without-swig \ | |
368 | --without-apxs \ | |
369 | --without-berkeley-db \ | |
370 | %else | |
fa6fa2cf | 371 | --disable-runtime-module-search \ |
86ee97d3 | 372 | --disable-mod-activation \ |
0905b458 | 373 | %if %{with apache} |
536b3fd3 | 374 | --with-apxs=%{_sbindir}/apxs \ |
0905b458 | 375 | %else |
376 | --without-apache \ | |
377 | --without-apxs \ | |
536b3fd3 | 378 | --with-berkeley-db=%{_includedir}/db4:%{_libdir} \ |
0905b458 | 379 | %endif |
73ab938a | 380 | %if !%{with python} && !%{with perl} && !%{with ruby} |
0905b458 | 381 | --without-swig \ |
382 | %endif | |
1cc7453a | 383 | --%{?with_javahl:en}%{!?with_javahl:dis}able-javahl \ |
536b3fd3 | 384 | %endif |
1cc7453a | 385 | --with-jdk="%{java_home}" \ |
04129f48 | 386 | %if %{with neon} |
e3ad24ea | 387 | --without-serf \ |
e30588c4 | 388 | --with-neon=%{_prefix} \ |
78f330c4 | 389 | --disable-neon-version-check \ |
04129f48 AG |
390 | %else |
391 | --with-serf=%{_prefix} \ | |
392 | --without-neon \ | |
e3ad24ea | 393 | %endif |
16429189 | 394 | --with-apr=%{_bindir}/apr-1-config \ |
395 | --with-apr-util=%{_bindir}/apu-1-config | |
536b3fd3 | 396 | |
1f630180 | 397 | %{__make} -j1 |
536b3fd3 | 398 | |
cf353d53 | 399 | %if !%{with net_client_only} |
b56474ff | 400 | # python |
0905b458 | 401 | %if %{with python} |
86a4919e | 402 | %{__make} swig-py \ |
65318afa AF |
403 | swig_pydir=%{py_sitedir}/libsvn \ |
404 | swig_pydir_extra=%{py_sitedir}/svn | |
0905b458 | 405 | %endif |
b56474ff | 406 | # perl |
0905b458 | 407 | %if %{with perl} |
390bb8f4 | 408 | %{__make} -j1 swig-pl-lib |
bf539998 AM |
409 | odir=$(pwd) |
410 | cd subversion/bindings/swig/perl/native | |
411 | %{__perl} Makefile.PL INSTALLDIRS=vendor | |
b445847c | 412 | %{__make} -j1 |
bf539998 | 413 | cd $odir |
536b3fd3 | 414 | %endif |
1cc7453a | 415 | %if %{with javahl} |
b445847c | 416 | %{__make} -j1 javahl \ |
1cc7453a | 417 | javahl_javadir="%{_javadir}" |
418 | %endif | |
d46e45ba AM |
419 | # ruby |
420 | %if %{with ruby} | |
421 | %{__make} swig-rb | |
422 | %endif | |
12ae68c1 AM |
423 | %endif |
424 | ||
425 | %if %{with tests} | |
426 | %{__make} check | |
d46e45ba AM |
427 | %if %{with python} |
428 | %{__make} check-swig-py | |
429 | %endif | |
430 | %if %{with perl} | |
431 | %{__make} check-swig-pl | |
432 | %endif | |
433 | %if %{with ruby} | |
434 | %{__make} check-swig-rb | |
435 | %endif | |
0905b458 | 436 | %endif |
93b78127 AM |
437 | |
438 | %install | |
439 | rm -rf $RPM_BUILD_ROOT | |
1326bb99 | 440 | install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig,bash_completion.d} \ |
1af5e34d | 441 | $RPM_BUILD_ROOT{%{apacheconfdir},%{apachelibdir},%{_infodir}} \ |
afb35189 | 442 | $RPM_BUILD_ROOT%{_examplesdir}/{%{name}-%{version},python-%{name}-%{version}} \ |
a54611db | 443 | $RPM_BUILD_ROOT/home/services/subversion{,/repos} |
93b78127 | 444 | |
1f630180 | 445 | %{__make} install -j1 \ |
1cc7453a | 446 | %if %{with javahl} |
447 | install-javahl \ | |
448 | javahl_javadir="%{_javadir}" \ | |
449 | %endif | |
d46e45ba AM |
450 | %if !%{with net_client_only} |
451 | %if %{with python} | |
0905b458 | 452 | install-swig-py \ |
d46e45ba AM |
453 | %endif |
454 | %if %{with ruby} | |
455 | install-swig-rb install-swig-rb-doc \ | |
456 | %endif | |
0905b458 | 457 | %endif |
f2a757d6 | 458 | APACHE_LIBEXECDIR="$(%{_sbindir}/apxs -q LIBEXECDIR)" \ |
86a4919e | 459 | DESTDIR=$RPM_BUILD_ROOT \ |
65318afa AF |
460 | swig_pydir=%{py_sitedir}/libsvn \ |
461 | swig_pydir_extra=%{py_sitedir}/svn | |
93b78127 | 462 | |
cf353d53 | 463 | %if !%{with net_client_only} && %{with perl} |
bf539998 AM |
464 | %{__make} install-swig-pl-lib \ |
465 | DESTDIR=$RPM_BUILD_ROOT | |
b445847c | 466 | %{__make} -C subversion/bindings/swig/perl/native install \ |
bf539998 AM |
467 | DESTDIR=$RPM_BUILD_ROOT \ |
468 | PREFIX=$RPM_BUILD_ROOT%{_prefix} \ | |
469 | LIBDIR=$RPM_BUILD_ROOT%{_libdir} | |
bf539998 AM |
470 | %endif |
471 | ||
0905b458 | 472 | %if %{with apache} |
1af5e34d ER |
473 | install %{SOURCE1} $RPM_BUILD_ROOT%{apacheconfdir}/65_mod_dav_svn.conf |
474 | install %{SOURCE2} $RPM_BUILD_ROOT%{apacheconfdir}/66_mod_authz_svn.conf | |
b56474ff AM |
475 | install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/svnserve |
476 | install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/svnserve | |
0905b458 | 477 | %endif |
93b78127 | 478 | |
cf353d53 | 479 | %if !%{with net_client_only} |
1326bb99 | 480 | install tools/backup/hot-backup.py $RPM_BUILD_ROOT%{_bindir}/svn-hot-backup |
0905b458 | 481 | %if %{with python} |
f4e6a380 AM |
482 | %py_ocomp $RPM_BUILD_ROOT%{py_sitedir} |
483 | %py_comp $RPM_BUILD_ROOT%{py_sitedir} | |
1326bb99 JK |
484 | find $RPM_BUILD_ROOT%{py_sitedir} -name "*.py" -o -name "*.a" -o -name "*.la" | xargs rm -f |
485 | install tools/examples/*.py $RPM_BUILD_ROOT%{_examplesdir}/python-%{name}-%{version} | |
536b3fd3 | 486 | %endif |
0905b458 | 487 | %endif |
f4e6a380 | 488 | |
1326bb99 JK |
489 | install tools/client-side/bash_completion $RPM_BUILD_ROOT/etc/bash_completion.d/%{name} |
490 | install tools/examples/*.c $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} | |
1326bb99 | 491 | |
205a3ddc AM |
492 | %find_lang %{name} |
493 | ||
b445847c JB |
494 | rm -f $RPM_BUILD_ROOT%{_libdir}/libsvn{javahl,_swig}*.{la,a} |
495 | rm -f $RPM_BUILD_ROOT%{_libdir}/ruby/site_ruby/svn/ext/*.la | |
a6ecf312 | 496 | |
e23909be JB |
497 | %clean |
498 | rm -rf $RPM_BUILD_ROOT | |
499 | ||
a1bac09d MŁ |
500 | %pre svnserve |
501 | %groupadd -g 86 svn | |
502 | %useradd -u 180 -d /home/services/subversion -c "Subversion svnserve" -g svn svn | |
503 | ||
d2bf70bf JB |
504 | %post libs -p /sbin/ldconfig |
505 | %postun libs -p /sbin/ldconfig | |
506 | ||
507 | %post devel -p /sbin/postshell | |
6f99c3bd | 508 | -/usr/sbin/fix-info-dir -c %{_infodir} |
93b78127 | 509 | |
d2bf70bf | 510 | %postun devel -p /sbin/postshell |
6f99c3bd | 511 | -/usr/sbin/fix-info-dir -c %{_infodir} |
93b78127 | 512 | |
d2bf70bf JB |
513 | %post -n perl-subversion -p /sbin/ldconfig |
514 | %postun -n perl-subversion -p /sbin/ldconfig | |
515 | ||
516 | %post -n python-subversion -p /sbin/ldconfig | |
517 | %postun -n python-subversion -p /sbin/ldconfig | |
f4e6a380 | 518 | |
b56474ff | 519 | %post svnserve |
e8d9186f ER |
520 | /sbin/chkconfig --add svnserve |
521 | %service svnserve restart "svnserve daemon" | |
522 | ||
b56474ff AM |
523 | %preun svnserve |
524 | if [ "$1" = "0" ]; then | |
e8d9186f ER |
525 | %service svnserve stop |
526 | /sbin/chkconfig --del svnserve | |
b56474ff AM |
527 | fi |
528 | ||
a1bac09d MŁ |
529 | %postun svnserve |
530 | if [ "$1" = "0" ]; then | |
531 | %userremove svn | |
532 | %groupremove svn | |
533 | fi | |
534 | ||
93b78127 | 535 | %post -n apache-mod_dav_svn |
e8d9186f | 536 | %service -q httpd restart |
93b78127 AM |
537 | |
538 | %preun -n apache-mod_dav_svn | |
539 | if [ "$1" = "0" ]; then | |
e8d9186f | 540 | %service -q httpd restart |
93b78127 AM |
541 | fi |
542 | ||
93b78127 AM |
543 | %files |
544 | %defattr(644,root,root,755) | |
983a49f6 | 545 | %doc BUGS CHANGES COPYING INSTALL README |
d37298dc | 546 | %doc doc/*/*.html |
4bbdbbf8 AM |
547 | %doc tools/hook-scripts/*.{pl,py,example} |
548 | %doc tools/hook-scripts/mailer/*.{py,example} | |
1326bb99 | 549 | %doc tools/xslt/* |
b445847c JB |
550 | %attr(755,root,root) %{_bindir}/svn |
551 | %attr(755,root,root) %{_bindir}/svnadmin | |
552 | %attr(755,root,root) %{_bindir}/svndumpfilter | |
553 | %attr(755,root,root) %{_bindir}/svnlook | |
554 | %attr(755,root,root) %{_bindir}/svnsync | |
555 | %attr(755,root,root) %{_bindir}/svnversion | |
556 | %{_mandir}/man1/svn.1* | |
557 | %{_mandir}/man1/svnadmin.1* | |
558 | %{_mandir}/man1/svndumpfilter.1* | |
559 | %{_mandir}/man1/svnlook.1* | |
560 | %{_mandir}/man1/svnsync.1* | |
561 | %{_mandir}/man1/svnversion.1* | |
f4e6a380 | 562 | |
205a3ddc | 563 | %files libs -f %{name}.lang |
f4e6a380 | 564 | %defattr(644,root,root,755) |
b445847c JB |
565 | %attr(755,root,root) %{_libdir}/libsvn_client-1.so.*.*.* |
566 | %attr(755,root,root) %ghost %{_libdir}/libsvn_client-1.so.0 | |
567 | %attr(755,root,root) %{_libdir}/libsvn_delta-1.so.*.*.* | |
568 | %attr(755,root,root) %ghost %{_libdir}/libsvn_delta-1.so.0 | |
569 | %attr(755,root,root) %{_libdir}/libsvn_diff-1.so.*.*.* | |
570 | %attr(755,root,root) %ghost %{_libdir}/libsvn_diff-1.so.0 | |
571 | %attr(755,root,root) %{_libdir}/libsvn_fs-1.so.*.*.* | |
572 | %attr(755,root,root) %ghost %{_libdir}/libsvn_fs-1.so.0 | |
573 | %attr(755,root,root) %{_libdir}/libsvn_fs_base-1.so.*.*.* | |
574 | %attr(755,root,root) %ghost %{_libdir}/libsvn_fs_base-1.so.0 | |
575 | %attr(755,root,root) %{_libdir}/libsvn_fs_fs-1.so.*.*.* | |
576 | %attr(755,root,root) %ghost %{_libdir}/libsvn_fs_fs-1.so.0 | |
577 | %attr(755,root,root) %{_libdir}/libsvn_fs_util-1.so.*.*.* | |
578 | %attr(755,root,root) %ghost %{_libdir}/libsvn_fs_util-1.so.0 | |
579 | %attr(755,root,root) %{_libdir}/libsvn_ra-1.so.*.*.* | |
580 | %attr(755,root,root) %ghost %{_libdir}/libsvn_ra-1.so.0 | |
581 | %attr(755,root,root) %{_libdir}/libsvn_ra_local-1.so.*.*.* | |
582 | %attr(755,root,root) %ghost %{_libdir}/libsvn_ra_local-1.so.0 | |
a510fada AM |
583 | %attr(755,root,root) %{_libdir}/libsvn_ra_%{webdavlib}-1.so.*.*.* |
584 | %attr(755,root,root) %ghost %{_libdir}/libsvn_ra_%{webdavlib}-1.so.0 | |
b445847c JB |
585 | %attr(755,root,root) %{_libdir}/libsvn_ra_svn-1.so.*.*.* |
586 | %attr(755,root,root) %ghost %{_libdir}/libsvn_ra_svn-1.so.0 | |
587 | %attr(755,root,root) %{_libdir}/libsvn_repos-1.so.*.*.* | |
588 | %attr(755,root,root) %ghost %{_libdir}/libsvn_repos-1.so.0 | |
589 | %attr(755,root,root) %{_libdir}/libsvn_subr-1.so.*.*.* | |
590 | %attr(755,root,root) %ghost %{_libdir}/libsvn_subr-1.so.0 | |
591 | %attr(755,root,root) %{_libdir}/libsvn_wc-1.so.*.*.* | |
592 | %attr(755,root,root) %ghost %{_libdir}/libsvn_wc-1.so.0 | |
93b78127 AM |
593 | |
594 | %files devel | |
595 | %defattr(644,root,root,755) | |
b445847c JB |
596 | %attr(755,root,root) %{_libdir}/libsvn_client-1.so |
597 | %attr(755,root,root) %{_libdir}/libsvn_delta-1.so | |
598 | %attr(755,root,root) %{_libdir}/libsvn_diff-1.so | |
599 | %attr(755,root,root) %{_libdir}/libsvn_fs-1.so | |
600 | %attr(755,root,root) %{_libdir}/libsvn_fs_base-1.so | |
601 | %attr(755,root,root) %{_libdir}/libsvn_fs_fs-1.so | |
602 | %attr(755,root,root) %{_libdir}/libsvn_fs_util-1.so | |
603 | %attr(755,root,root) %{_libdir}/libsvn_ra-1.so | |
604 | %attr(755,root,root) %{_libdir}/libsvn_ra_local-1.so | |
a510fada | 605 | %attr(755,root,root) %{_libdir}/libsvn_ra_%{webdavlib}-1.so |
b445847c JB |
606 | %attr(755,root,root) %{_libdir}/libsvn_ra_svn-1.so |
607 | %attr(755,root,root) %{_libdir}/libsvn_repos-1.so | |
608 | %attr(755,root,root) %{_libdir}/libsvn_subr-1.so | |
609 | %attr(755,root,root) %{_libdir}/libsvn_wc-1.so | |
610 | %{_libdir}/libsvn_client-1.la | |
611 | %{_libdir}/libsvn_delta-1.la | |
612 | %{_libdir}/libsvn_diff-1.la | |
613 | %{_libdir}/libsvn_fs-1.la | |
614 | %{_libdir}/libsvn_fs_base-1.la | |
615 | %{_libdir}/libsvn_fs_fs-1.la | |
616 | %{_libdir}/libsvn_fs_util-1.la | |
617 | %{_libdir}/libsvn_ra-1.la | |
618 | %{_libdir}/libsvn_ra_local-1.la | |
a510fada | 619 | %{_libdir}/libsvn_ra_%{webdavlib}-1.la |
b445847c JB |
620 | %{_libdir}/libsvn_ra_svn-1.la |
621 | %{_libdir}/libsvn_repos-1.la | |
622 | %{_libdir}/libsvn_subr-1.la | |
623 | %{_libdir}/libsvn_wc-1.la | |
624 | %{_includedir}/%{name}-1 | |
1326bb99 | 625 | %{_examplesdir}/%{name}-%{version} |
93b78127 AM |
626 | |
627 | %files static | |
628 | %defattr(644,root,root,755) | |
b445847c JB |
629 | %{_libdir}/libsvn_client-1.a |
630 | %{_libdir}/libsvn_delta-1.a | |
631 | %{_libdir}/libsvn_diff-1.a | |
632 | %{_libdir}/libsvn_fs-1.a | |
633 | %{_libdir}/libsvn_fs_base-1.a | |
634 | %{_libdir}/libsvn_fs_fs-1.a | |
635 | %{_libdir}/libsvn_fs_util-1.a | |
636 | %{_libdir}/libsvn_ra-1.a | |
637 | %{_libdir}/libsvn_ra_local-1.a | |
a510fada | 638 | %{_libdir}/libsvn_ra_%{webdavlib}-1.a |
b445847c JB |
639 | %{_libdir}/libsvn_ra_svn-1.a |
640 | %{_libdir}/libsvn_repos-1.a | |
641 | %{_libdir}/libsvn_subr-1.a | |
642 | %{_libdir}/libsvn_wc-1.a | |
93b78127 | 643 | |
cf353d53 | 644 | %if !%{with net_client_only} |
b56474ff AM |
645 | %files svnserve |
646 | %defattr(644,root,root,755) | |
647 | %attr(755,root,root) %{_bindir}/svnserve | |
b445847c JB |
648 | %{_mandir}/man5/svnserve.conf.5* |
649 | %{_mandir}/man8/svnserve.8* | |
a1bac09d MŁ |
650 | %dir %attr(750,svn,svn) /home/services/subversion |
651 | %dir %attr(750,svn,svn) /home/services/subversion/repos | |
0905b458 | 652 | %if %{with apache} |
b56474ff | 653 | %attr(754,root,root) /etc/rc.d/init.d/svnserve |
86ea8fde | 654 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/svnserve |
0905b458 | 655 | %endif |
b56474ff | 656 | |
4bbdbbf8 AM |
657 | %files tools |
658 | %defattr(644,root,root,755) | |
1326bb99 | 659 | %attr(755,root,root) %{_bindir}/svn-hot-backup |
fe5bb6bb | 660 | |
661 | %files -n bash-completion-subversion | |
101e74de | 662 | %defattr(644,root,root,755) |
1326bb99 | 663 | /etc/bash_completion.d/%{name} |
536b3fd3 | 664 | |
1cc7453a | 665 | %if %{with javahl} |
666 | %files -n java-subversion | |
667 | %defattr(644,root,root,755) | |
b445847c JB |
668 | %attr(755,root,root) %{_libdir}/libsvnjavahl-1.so.*.*.* |
669 | %attr(755,root,root) %ghost %{_libdir}/libsvnjavahl-1.so.0 | |
670 | %attr(755,root,root) %{_libdir}/libsvnjavahl-1.so | |
1cc7453a | 671 | %{_javadir}/svn-javahl.jar |
672 | %endif | |
673 | ||
0905b458 | 674 | %if %{with python} |
fa3ff1b2 | 675 | %files -n python-subversion |
f4e6a380 | 676 | %defattr(644,root,root,755) |
4bbdbbf8 | 677 | %doc tools/backup/*.py tools/examples/*.py |
b445847c JB |
678 | %attr(755,root,root) %{_libdir}/libsvn_swig_py-1.so.*.*.* |
679 | %attr(755,root,root) %ghost %{_libdir}/libsvn_swig_py-1.so.0 | |
680 | %attr(755,root,root) %{_libdir}/libsvn_swig_py-1.so | |
65318afa | 681 | %dir %{py_sitedir}/libsvn |
65318afa | 682 | %{py_sitedir}/libsvn/*.py[co] |
b445847c JB |
683 | %dir %{py_sitedir}/svn |
684 | %{py_sitedir}/svn/*.py[co] | |
65318afa | 685 | %attr(755,root,root) %{py_sitedir}/libsvn/*.so |
1326bb99 | 686 | %{_examplesdir}/python-%{name}-%{version} |
0905b458 | 687 | %endif |
f4e6a380 | 688 | |
0905b458 | 689 | %if %{with perl} |
b56474ff AM |
690 | %files -n perl-subversion |
691 | %defattr(644,root,root,755) | |
b445847c JB |
692 | %attr(755,root,root) %{_libdir}/libsvn_swig_perl-1.so.*.*.* |
693 | %attr(755,root,root) %ghost %{_libdir}/libsvn_swig_perl-1.so.0 | |
694 | %attr(755,root,root) %{_libdir}/libsvn_swig_perl-1.so | |
b56474ff AM |
695 | %{perl_vendorarch}/SVN |
696 | %dir %{perl_vendorarch}/auto/SVN | |
697 | %dir %{perl_vendorarch}/auto/SVN/* | |
698 | %attr(755,root,root) %{perl_vendorarch}/auto/SVN/*/*.so | |
699 | %{perl_vendorarch}/auto/SVN/*/*.bs | |
700 | %{_mandir}/man3/*.3pm* | |
0905b458 | 701 | %endif |
b56474ff | 702 | |
d46e45ba AM |
703 | %if %{with ruby} |
704 | %files -n ruby-subversion | |
705 | %defattr(644,root,root,755) | |
b445847c JB |
706 | %attr(755,root,root) %{_libdir}/libsvn_swig_ruby-1.so.*.*.* |
707 | %attr(755,root,root) %ghost %{_libdir}/libsvn_swig_ruby-1.so.0 | |
708 | %attr(755,root,root) %{_libdir}/libsvn_swig_ruby-1.so | |
709 | %dir %{_libdir}/ruby/site_ruby/svn | |
710 | %{_libdir}/ruby/site_ruby/svn/*.rb | |
711 | %dir %{_libdir}/ruby/site_ruby/svn/ext | |
712 | %attr(755,root,root) %{_libdir}/ruby/site_ruby/svn/ext/*.so | |
ab6adef9 | 713 | %{_datadir}/ri/*.*/system/OptionParser |
00664663 | 714 | %{_datadir}/ri/*.*/system/Svn |
715 | %{_datadir}/ri/*.*/system/Time | |
716 | %{_datadir}/ri/*.*/system/Uconv | |
717 | %{_datadir}/ri/*.*/system/*.rid | |
718 | %{_datadir}/ri/*.*/system/Kernel/* | |
d46e45ba AM |
719 | %endif |
720 | ||
0905b458 | 721 | %if %{with apache} |
93b78127 AM |
722 | %files -n apache-mod_dav_svn |
723 | %defattr(644,root,root,755) | |
1af5e34d ER |
724 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{apacheconfdir}/*_mod_dav_svn.conf |
725 | %attr(755,root,root) %{apachelibdir}/mod_dav_svn.so | |
65318afa AF |
726 | |
727 | %files -n apache-mod_authz_svn | |
728 | %defattr(644,root,root,755) | |
729 | %doc subversion/mod_authz_svn/INSTALL | |
1af5e34d ER |
730 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{apacheconfdir}/*_mod_authz_svn.conf |
731 | %attr(755,root,root) %{apachelibdir}/mod_authz_svn.so | |
536b3fd3 | 732 | %endif |
7b27380f ER |
733 | |
734 | %endif # net_client_only |