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