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