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