# TODO:
-# - fix java build with java-gcj-compat and s/java-sun/jdk/
# - 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 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"
-#
-%ifnarch i586 i686 pentium3 pentium4 athlon %{x8664}
-%undefine with_javahl
-%endif
+%bcond_without kwallet # build without kde4 wallet support
+%bcond_without gnome # build without gnome keyring support
#
%{!?with_net_client_only:%include /usr/lib/rpm/macros.perl}
%define apxs /usr/sbin/apxs
Summary(pl.UTF-8): System kontroli wersji podobny, ale lepszy, niż CVS
Summary(pt_BR.UTF-8): Sistema de versionamento concorrente
Name: subversion
-Version: 1.6.0
-Release: 0.1
+Version: 1.6.13
+Release: 1
License: Apache/BSD-like
Group: Development/Version Control
-Source0: http://subversion.tigris.org/downloads/%{name}-%{version}-rc3.tar.bz2
-# Source0-md5: 58473cb07611fd7567b6ce99461009e1
+Source0: http://subversion.tigris.org/downloads/%{name}-%{version}.tar.bz2
+# Source0-md5: 7ae1c827689f21cf975804005be30aeb
Source1: %{name}-dav_svn.conf
Source2: %{name}-authz_svn.conf
Source3: %{name}-svnserve.init
Patch0: %{name}-home_etc.patch
Patch1: %{name}-DESTDIR.patch
Patch2: %{name}-ruby-datadir-path.patch
-URL: http://subversion.tigris.org/
+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: automake
BuildRequires: db-devel >= 4.1.25
-BuildRequires: rpmbuild(macros) >= 1.268
+BuildRequires: rpmbuild(macros) >= 1.559
%if %{with perl}
BuildRequires: perl-devel >= 1:5.8.0
BuildRequires: rpm-perlprov >= 4.1-13
BuildRequires: swig-perl >= 1.3.24
%endif
-%{?with_javahl:BuildRequires: java-sun}
+%if %{with python}
+BuildRequires: python-ctypesgen
+BuildRequires: python-devel >= 2.2
+BuildRequires: swig-python >= 1.3.24
+%endif
+%if %{with ruby}
+BuildRequires: ruby-devel
+BuildRequires: swig-ruby >= 1.3.24
+%endif
+%if %{with javahl}
+BuildRequires: jdk
+%endif
+BuildRequires: cyrus-sasl-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
-BuildRequires: gnome-keyring-devel
-BuildRequires: kde4-kdelibs-devel
+%{?with_gnome:BuildRequires: libgnome-keyring-devel}
+%{?with_kwallet:BuildRequires: kde4-kdelibs-devel}
BuildRequires: libtool >= 1.4-9
+BuildRequires: pkgconfig
BuildRequires: sed >= 4.0
+BuildRequires: sqlite3-devel >= 3.6.11
BuildRequires: texinfo
BuildRequires: which
%if %{with neon}
%endif
BuildRequires: python >= 2.2
BuildRequires: python-modules >= 2.2
-%if %{with python}
-BuildRequires: python-devel >= 2.2
-BuildRequires: swig-python >= 1.3.24
-%endif
-%if %{with ruby}
-BuildRequires: ruby-devel
-BuildRequires: swig-ruby >= 1.3.24
-%endif
Requires: %{name}-libs = %{version}-%{release}
+%requires_ge sqlite3
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define _libexecdir %{_libdir}/svn
Group: Applications
%pyrequires_eq python
Requires: %{name} = %{version}-%{release}
-Requires: python-rcsparse >= 0.1-0.20031026.0
Requires: python-subversion = %{version}
%description tools
%description -n python-subversion -l pt_BR.UTF-8
Módulos Python para acessar os recursos do Subversion.
+%package -n python-csvn
+Summary: CTypes Subversion Python bindings
+Summary(pl.UTF-8): Dowiązania do Subversion dla Pythona
+Summary(pt_BR.UTF-8): Módulos Python para acessar os recursos do Subversion
+Group: Development/Languages/Python
+%pyrequires_eq python
+Requires: %{name}-libs = %{version}-%{release}
+
+%description -n python-csvn
+Subversion CTypes Python bindings.
+
+%description -n python-csvn -l pl.UTF-8
+Dowiązania do Subversion dla Pythona używające CTypes.
+
+%description -n python-csvn -l pt_BR.UTF-8
+Módulos Python para acessar os recursos do Subversion.
+
%package -n perl-subversion
Summary: Subversion Perl bindings
Summary(pl.UTF-8): Dowiązania do Subversion dla Perla
Moduł subversion dla Portfela KDE.
%prep
-%setup -q -n %{name}-%{version}-rc3
+%setup -q
rm -rf apr apr-util neon
%patch0 -p0
%patch1 -p1
%else
--disable-runtime-module-search \
--disable-mod-activation \
+ --with-berkeley-db="db.h:%{_includedir}:%{_libdir}:db" \
%if %{with apache}
--with-apxs=%{_sbindir}/apxs \
%else
--without-apache \
--without-apxs \
- --with-berkeley-db=%{_includedir}/db4:%{_libdir} \
%endif
%if !%{with python} && !%{with perl} && !%{with ruby}
--without-swig \
%endif
+ %{?with_python:--with-ctypesgen=%{_bindir}/ctypesgen.py} \
--%{?with_javahl:en}%{!?with_javahl:dis}able-javahl \
%endif
--with-jdk="%{java_home}" \
+ --without-jikes \
%if %{with neon}
--without-serf \
--with-neon=%{_prefix} \
%endif
--with-apr=%{_bindir}/apr-1-config \
--with-apr-util=%{_bindir}/apu-1-config \
+%if %{with kwallet}
--with-kwallet \
+%endif
+%if %{with gnome}
--with-gnome-keyring
+%endif
%{__make} -j1
%if !%{with net_client_only}
# python
%if %{with python}
+# ctypes bindings
+%{__make} ctypes-python
+# swig bindings
%{__make} swig-py \
swig_pydir=%{py_sitedir}/libsvn \
swig_pydir_extra=%{py_sitedir}/svn
%if %{with tests}
%{__make} check
%if %{with python}
+%{__make} check-ctypes-python
%{__make} check-swig-py
%endif
%if %{with perl}
%if !%{with net_client_only}
%if %{with python}
install-swig-py \
+ install-ctypes-python \
%endif
%if %{with ruby}
install-swig-rb install-swig-rb-doc \
%find_lang %{name}
-rm $RPM_BUILD_ROOT%{_libdir}/libsvn{javahl,_swig}*.{la,a}
-rm $RPM_BUILD_ROOT%{_libdir}/ruby/site_ruby/*/*/svn/ext/*.la
+%{?with_javahl:rm $RPM_BUILD_ROOT%{_libdir}/libsvnjavahl*.{la,a}}
+rm -f $RPM_BUILD_ROOT%{_libdir}/libsvn_swig*.{la,a}
+rm -f $RPM_BUILD_ROOT%{_libdir}/ruby/site_ruby/*/*/svn/ext/*.la
%clean
rm -rf $RPM_BUILD_ROOT
%post -n apache-mod_dav_svn
%service -q httpd restart
-%preun -n apache-mod_dav_svn
+%postun -n apache-mod_dav_svn
+if [ "$1" = "0" ]; then
+ %service -q httpd restart
+fi
+
+%post -n apache-mod_authz_svn
+%service -q httpd restart
+
+%postun -n apache-mod_authz_svn
if [ "$1" = "0" ]; then
%service -q httpd restart
fi
%{_libdir}/libsvn_subr-1.a
%{_libdir}/libsvn_wc-1.a
+%if %{with gnome}
%files -n gnome-keyring-subversion
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libsvn_auth_gnome_keyring-1.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libsvn_auth_gnome_keyring-1.so.0
+%endif
+%if %{with kwallet}
%files -n kde4-kwallet-subversion
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libsvn_auth_kwallet-1.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libsvn_auth_kwallet-1.so.0
+%endif
%if !%{with net_client_only}
%files svnserve
%{py_sitedir}/svn/*.py[co]
%attr(755,root,root) %{py_sitedir}/libsvn/*.so
%{_examplesdir}/python-%{name}-%{version}
+
+%files -n python-csvn
+%defattr(644,root,root,755)
+%doc subversion/bindings/ctypes-python/{README,TODO}
+%doc subversion/bindings/ctypes-python/examples/*.py
+%dir %{py_sitescriptdir}/csvn
+%{py_sitescriptdir}/csvn/*.py[co]
+%dir %{py_sitescriptdir}/csvn/core
+%{py_sitescriptdir}/csvn/core/*.py[co]
+%dir %{py_sitescriptdir}/csvn/ext
+%{py_sitescriptdir}/csvn/ext/*.py[co]
+%{py_sitescriptdir}/*.egg-info
%endif
%if %{with perl}
%attr(755,root,root) %{_libdir}/libsvn_swig_ruby-1.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libsvn_swig_ruby-1.so.0
%attr(755,root,root) %{_libdir}/libsvn_swig_ruby-1.so
-%dir %{_libdir}/ruby/site_ruby/[0-9].[0-9]
-%dir %{_libdir}/ruby/site_ruby/*/svn
-%{_libdir}/ruby/site_ruby/*/svn/*.rb
-%dir %{_libdir}/ruby/site_ruby/*/*-*
-%dir %{_libdir}/ruby/site_ruby/*/*-*/svn/ext
-%attr(755,root,root) %{_libdir}/ruby/site_ruby/*/*-*/svn/ext/*.so
-%{_datadir}/ri/*.*/system/OptionParser
-%{_datadir}/ri/*.*/system/Svn
-%{_datadir}/ri/*.*/system/Time
-%{_datadir}/ri/*.*/system/Uconv
-%{_datadir}/ri/*.*/system/*.rid
-%{_datadir}/ri/*.*/system/Kernel/*
+%dir %{ruby_sitelibdir}/svn
+%{ruby_sitelibdir}/svn/*.rb
+%dir %{ruby_sitearchdir}/svn
+%dir %{ruby_sitearchdir}/svn/ext
+%attr(755,root,root) %{ruby_sitearchdir}/svn/ext/*.so
+%{ruby_ridir}/Svn
%endif
%if %{with apache}