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