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