]> git.pld-linux.org Git - packages/subversion.git/blobdiff - subversion.spec
- no duplicate packaging of python tools/examples
[packages/subversion.git] / subversion.spec
index a88a6ed3c6ec2937a4ae424efe9fc6de4dc601d6..9faa9d565b8e9dfef37839f904a675d854744f7a 100644 (file)
@@ -1,35 +1,54 @@
 # TODO:
-# - remove net_client_only and add db bcond (then without apache and
-#   without db => net_client_only - spec will be more simpler, I think)
 # - finish ruby
 # - http://subversion.tigris.org/issues/show_bug.cgi?id=2753
 #
 # Conditional build:
 %bcond_with    net_client_only         # build only net client
 %bcond_without neon                    # use serf instead of neon
-%bcond_without python                  # build without python bindings (broken)
-%bcond_without perl                    # build without perl bindings
-%bcond_without ruby                    # build without ruby bindings
-%bcond_without apache                  # build without apache support (webdav, etc)
+%bcond_without swig                    # disable bindings generation with Swig
+%bcond_without python                  # build without Python bindings (broken)
+%bcond_without csvn                    # build Python csvn bindings
+%bcond_without perl                    # build without Perl bindings
+%bcond_without ruby                    # build without Ruby bindings
+%bcond_without apache                  # build without Apache support (webdav, etc)
 %bcond_without javahl                  # build without javahl support (Java high-level bindings)
 %bcond_without tests                   # don't perform "make check"
 %bcond_without kwallet                 # build without kde4 wallet support
-%bcond_without kde                     # build without kde4 support (alias for kwallet)
+%bcond_without kde                             # build without kde4 support (alias for kwallet)
 %bcond_without gnome                   # build without gnome keyring support
+%bcond_without db                              # disable Subversion Berkeley DB based filesystem library
+
+%if %{with net_client_only}
+%undefine      with_apache
+%undefine      with_db
+%undefine      with_swig
+%undefine      with_javahl
+%endif
+
+%if %{without swig}
+%undefine      with_perl
+%undefine      with_python
+%undefine      with_ruby
+%endif
+
+%if %{without kde}
+%undefine      with_kwallet
+%endif
+
+%if %{without python} && %{without perl} && %{without ruby}
+%define                without_swig    1
+%endif
 
-%{!?with_net_client_only:%include      /usr/lib/rpm/macros.perl}
 %define        apxs    /usr/sbin/apxs
 %define        pdir    SVN
 %define        pnam    _Core
 
-%if !%{with kde}
-%undefine      with_kwallet
-%endif
 %if %{with neon}
 %define        webdavlib       neon
 %else
 %define        webdavlib       serf
 %endif
+%{!?with_perl:%include /usr/lib/rpm/macros.perl}
 Summary:       A Concurrent Versioning system similar to but better than CVS
 Summary(pl.UTF-8):     System kontroli wersji podobny, ale lepszy, niż CVS
 Summary(pt_BR.UTF-8):  Sistema de versionamento concorrente
@@ -53,9 +72,6 @@ Patch1:               %{name}-DESTDIR.patch
 Patch2:                %{name}-ruby-datadir-path.patch
 Patch3:                %{name}-tests.patch
 URL:           http://subversion.apache.org/
-%if %{with net_client_only}
-%global apache_modules_api 0
-%else
 %{?with_apache:BuildRequires:  apache-devel >= 2.2.0-8}
 BuildRequires: autoconf
 BuildRequires: automake
@@ -67,9 +83,11 @@ BuildRequires:       perl-devel >= 1:5.8.0
 BuildRequires: rpm-perlprov >= 4.1-13
 BuildRequires: swig-perl >= 1.3.24
 %endif
-%if %{with python}
+%if %{with csvn}
 BuildRequires: python-ctypesgen
-BuildRequires: python-devel >= 1:2.5
+%endif
+%if %{with python}
+BuildRequires: python-devel >= 1:2.4
 BuildRequires: swig-python >= 1.3.24
 %endif
 %if %{with ruby}
@@ -79,13 +97,13 @@ BuildRequires:      swig-ruby >= 1.3.24
 %endif
 %if %{with javahl}
 BuildRequires: jdk
-%endif
-BuildRequires: cyrus-sasl-devel
+BuildRequires: libstdc++-devel
 %endif
 BuildRequires: apr-devel >= 1:1.0.0
 BuildRequires: apr-util-devel >= 1:1.2.8-3
 BuildRequires: autoconf >= 2.59
 BuildRequires: bison
+BuildRequires: cyrus-sasl-devel
 BuildRequires: expat-devel
 BuildRequires: gettext-devel
 %{?with_kwallet:BuildRequires: kde4-kdelibs-devel}
@@ -419,27 +437,27 @@ chmod +x ./autogen.sh && ./autogen.sh
 %configure \
        --with-editor=vi \
        --with-zlib=%{_libdir} \
-%if %{with net_client_only}
-       --without-apache \
-       --without-swig \
-       --without-apxs \
-       --without-berkeley-db \
-%else
        --disable-runtime-module-search \
        --disable-mod-activation \
+%if %{with db}
        --with-berkeley-db="db.h:%{_includedir}:%{_libdir}:db" \
+%else
+       --without-berkeley-db \
+%endif
 %if %{with apache}
        --with-apxs=%{_sbindir}/apxs \
 %else
        --without-apache \
        --without-apxs \
 %endif
-%if !%{with python} && !%{with perl} && !%{with ruby}
+%if %{without swig}
        --without-swig \
 %endif
-       %{?with_python:--with-ctypesgen=%{_bindir}/ctypesgen.py} \
-       --%{?with_javahl:en}%{!?with_javahl:dis}able-javahl \
+%if %{without ruby}
+       ac_cv_path_RUBY=none \
 %endif
+       %{?with_csvn:--with-ctypesgen=%{_bindir}/ctypesgen.py} \
+       --%{?with_javahl:en}%{!?with_javahl:dis}able-javahl \
        --with-jdk="%{java_home}" \
        --without-jikes \
 %if %{with neon}
@@ -461,11 +479,12 @@ chmod +x ./autogen.sh && ./autogen.sh
 
 %{__make} -j1
 
-%if !%{with net_client_only}
 # python
 %if %{with python}
+%if %{with csvn}
 # ctypes bindings
 %{__make} ctypes-python
+%endif
 # swig bindings
 %{__make} swig-py \
        swig_pydir=%{py_sitedir}/libsvn \
@@ -488,19 +507,21 @@ cd $odir
 %if %{with ruby}
 %{__make} swig-rb
 %endif
-%endif
 
 %if %{with tests}
 %{__make} check
 %if %{with python}
+%if %{with csvn}
 %{__make} check-ctypes-python
+%endif
 %{__make} check-swig-py
 %endif
 %if %{with perl}
 %{__make} check-swig-pl
 %endif
 %if %{with ruby}
-%{__make} check-swig-rb
+# disabled, see https://bugs.launchpad.net/pld-linux/+bug/734340
+#%{__make} check-swig-rb
 %endif
 %endif
 
@@ -509,6 +530,7 @@ rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig,bash_completion.d} \
        $RPM_BUILD_ROOT{%{apacheconfdir},%{apachelibdir},%{_infodir}} \
        $RPM_BUILD_ROOT%{_examplesdir}/{%{name}-%{version},python-%{name}-%{version}} \
+       $RPM_BUILD_ROOT%{_sysconfdir}/%{name} \
        $RPM_BUILD_ROOT/home/services/subversion{,/repos}
 
 %{__make} install -j1 \
@@ -516,21 +538,21 @@ install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig,bash_completion.d} \
        install-javahl \
        javahl_javadir="%{_javadir}" \
 %endif
-%if !%{with net_client_only}
 %if %{with python}
        install-swig-py \
+%if %{with csvn}
        install-ctypes-python \
 %endif
+%endif
 %if %{with ruby}
        install-swig-rb install-swig-rb-doc \
-%endif
 %endif
        APACHE_LIBEXECDIR="$(%{_sbindir}/apxs -q LIBEXECDIR)" \
        DESTDIR=$RPM_BUILD_ROOT \
        swig_pydir=%{py_sitedir}/libsvn \
        swig_pydir_extra=%{py_sitedir}/svn
 
-%if !%{with net_client_only} && %{with perl}
+%if %{with perl}
 %{__make} install-swig-pl-lib \
        DESTDIR=$RPM_BUILD_ROOT
 %{__make} -C subversion/bindings/swig/perl/native install \
@@ -540,14 +562,15 @@ install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig,bash_completion.d} \
 %endif
 
 %if %{with apache}
-install %{SOURCE1} $RPM_BUILD_ROOT%{apacheconfdir}/65_mod_dav_svn.conf
-install %{SOURCE2} $RPM_BUILD_ROOT%{apacheconfdir}/66_mod_authz_svn.conf
-install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/svnserve
-install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/svnserve
+cp -p %{SOURCE1} $RPM_BUILD_ROOT%{apacheconfdir}/65_mod_dav_svn.conf
+cp -p %{SOURCE2} $RPM_BUILD_ROOT%{apacheconfdir}/66_mod_authz_svn.conf
+cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/svnserve
+install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/svnserve
 %endif
 
-%if !%{with net_client_only}
-install tools/backup/hot-backup.py $RPM_BUILD_ROOT%{_bindir}/svn-hot-backup
+%if %{without net_client_only}
+install -p tools/backup/hot-backup.py $RPM_BUILD_ROOT%{_bindir}/svn-hot-backup
+%endif
 %if %{with python}
 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
@@ -555,16 +578,17 @@ install tools/backup/hot-backup.py $RPM_BUILD_ROOT%{_bindir}/svn-hot-backup
 %{__rm} $RPM_BUILD_ROOT%{py_sitedir}/libsvn/*.la
 install tools/examples/*.py $RPM_BUILD_ROOT%{_examplesdir}/python-%{name}-%{version}
 %endif
-%endif
 
-install tools/client-side/bash_completion $RPM_BUILD_ROOT/etc/bash_completion.d/%{name}
-install tools/examples/*.c $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
+cp -p tools/client-side/bash_completion $RPM_BUILD_ROOT/etc/bash_completion.d/%{name}
+cp -p tools/examples/*.c $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
 
 %{?with_javahl:%{__rm} $RPM_BUILD_ROOT%{_libdir}/libsvnjavahl*.{la,a}}
-%if %{without net_client_only}
+%if %{with swig}
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libsvn_swig*.{la,a}
+%if %{with ruby}
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/ruby/site_ruby/*/*/svn/ext/*.la
 %endif
+%endif
 %if %{with gnome} || %{with kwallet}
 # dlopened by soname (libsvn_auth_*-1.so.0)
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libsvn_auth_*-1.{so,la,a}
@@ -660,6 +684,7 @@ fi
 
 %files libs -f %{name}.lang
 %defattr(644,root,root,755)
+%dir %{_sysconfdir}/%{name}
 %attr(755,root,root) %{_libdir}/libsvn_client-1.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libsvn_client-1.so.0
 %attr(755,root,root) %{_libdir}/libsvn_delta-1.so.*.*.*
@@ -794,7 +819,7 @@ fi
 %if %{with python}
 %files -n python-subversion
 %defattr(644,root,root,755)
-%doc tools/backup/*.py tools/examples/*.py
+%doc tools/backup/*.py
 %attr(755,root,root) %{_libdir}/libsvn_swig_py-1.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libsvn_swig_py-1.so.0
 %attr(755,root,root) %{_libdir}/libsvn_swig_py-1.so
@@ -805,6 +830,7 @@ fi
 %{py_sitedir}/svn/*.py[co]
 %{_examplesdir}/python-%{name}-%{version}
 
+%if %{with csvn}
 %files -n python-csvn
 %defattr(644,root,root,755)
 %doc subversion/bindings/ctypes-python/{README,TODO}
@@ -817,6 +843,7 @@ fi
 %{py_sitescriptdir}/csvn/ext/*.py[co]
 %{py_sitescriptdir}/svn_ctypes_python_bindings-0.1-py*.egg-info
 %endif
+%endif
 
 %if %{with perl}
 %files -n perl-subversion
This page took 0.045566 seconds and 4 git commands to generate.