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