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