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