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