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