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