-# TODO:
-# - serf as default: https://subversion.apache.org/docs/release-notes/1.7.html#serf
-#
# Conditional build:
%bcond_with net_client_only # build only net client
-%bcond_without neon # use serf instead of neon
%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_with ruby # build with Ruby bindings (only 1.8.x is supported)
+%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 java # 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 gnome # build without gnome keyring support
%bcond_without db # disable Subversion Berkeley DB based filesystem library
+%bcond_with db6 # allow BDB6 (not tested by upstream, released on AGPL)
-# for AC: --without csvn,gnome,javahl,kde,ruby
+# for AC: --without csvn,gnome,java,kde,ruby
%if %{with net_client_only}
%undefine with_apache
%undefine with_db
%undefine with_swig
-%undefine with_javahl
+%undefine with_java
+%undefine with_csvn
+%undefine with_gnome
+%undefine with_kde
%endif
%if %{without swig}
%define pdir SVN
%define pnam _Core
-%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
Name: subversion
-Version: 1.7.6
-Release: 3
+Version: 1.8.11
+Release: 1
License: Apache v2.0
Group: Development/Version Control
-Source0: http://www.idg.pl/mirrors/apache/subversion/%{name}-%{version}.tar.bz2
-# Source0-md5: 4baa434db7709bb059b05d02a2547663
+Source0: http://www.apache.org/dist/subversion/%{name}-%{version}.tar.bz2
+# Source0-md5: 766a89bbbb388f8eb76166672d3b9e49
Source1: %{name}-dav_svn.conf
Source2: %{name}-authz_svn.conf
Source3: %{name}-svnserve.init
Patch1: %{name}-DESTDIR.patch
Patch2: %{name}-ruby-datadir-path.patch
Patch3: %{name}-tests.patch
-Patch4: subversion-1.7.5-kwallet-gcc47.patch
URL: http://subversion.apache.org/
%{?with_apache:BuildRequires: apache-devel >= 2.2.0-8}
BuildRequires: apr-devel >= 1:1.0.0
BuildRequires: dbus-devel
%endif
BuildRequires: db-devel >= 4.1.25
+%{!?with_db6:BuildRequires: db-devel < 6}
BuildRequires: expat-devel
BuildRequires: gettext-devel
%{?with_kwallet:BuildRequires: kde4-kdelibs-devel}
BuildRequires: pkgconfig
%{?with_csvn:BuildRequires: python-ctypesgen}
BuildRequires: rpm-pythonprov
-BuildRequires: rpmbuild(macros) >= 1.583
+BuildRequires: rpmbuild(macros) >= 1.656
BuildRequires: sed >= 4.0
+BuildRequires: serf-devel >= 1.2.1
BuildRequires: sqlite3-devel >= 3.6.18
BuildRequires: texinfo
BuildRequires: which
-%if %{with neon}
-BuildRequires: neon-devel >= 0.26.0
-%else
-BuildRequires: serf-devel >= 0.7.1
-%endif
-%if %{with javahl}
+%if %{with java}
BuildRequires: jdk >= 1.5
BuildRequires: libstdc++-devel
%endif
BuildRequires: swig-python >= 1.3.24
%endif
%if %{with ruby}
-BuildRequires: ruby-devel < 1:1.9
+BuildRequires: rpm-rubyprov
BuildRequires: ruby-devel >= 1:1.8.2
+BuildRequires: ruby-irb
BuildRequires: ruby-rubygems
BuildRequires: swig-ruby >= 1.3.24
%endif
Summary: Subversion libraries and modules
Summary(pl.UTF-8): Biblioteka subversion oraz ładowalne moduły
Group: Libraries
-%if %{with neon}
-Requires: neon >= 0.26.0
-%else
-Requires: serf >= 0.7.1
-%endif
+Requires: serf >= 1.2.1
Obsoletes: libsubversion0
%description libs
Group: Development/Libraries
Requires: %{name}-libs = %{version}-%{release}
Requires: apr-util-devel >= 1:1.0.0
-%{?with_neon:Requires: neon-devel >= 0.26.0}
+Requires: serf-devel >= 1.2.1
Obsoletes: libsubversion0-devel
%description devel
Summary(pl.UTF-8): Narzędzia oraz skrypty dla subversion
Summary(pt_BR.UTF-8): Módulos python para acessar os recursos do Subversion
Group: Applications
-%pyrequires_eq python
Requires: %{name} = %{version}-%{release}
+Requires: python
Requires: python-subversion = %{version}
%description tools
Requires: %{name} = %{version}-%{release}
Requires: bash-completion
Conflicts: %{name}-tools <= 1.1.0-0.rc6.1
+%if "%{_rpmversion}" >= "5"
+BuildArch: noarch
+%endif
%description -n bash-completion-subversion
Bash completion for subversion.
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}
+Requires: python
Obsoletes: subversion-python
%description -n python-subversion
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}
+Requires: python
%description -n python-csvn
Subversion CTypes Python bindings.
%patch1 -p1
%patch2 -p0
%patch3 -p1
-%patch4 -p2
sed -i -e 's#serf_prefix/lib#serf_prefix/%{_lib}#g' build/ac-macros/serf.m4
-# serf.m4 macro is broken and ignores --without serf
-%{?with_neon:sed -i -e 's#serf_found="yes"#serf_found="no"#g' build/ac-macros/serf.m4}
-
%build
# disabled regeneration - subversion 1.6.13 is not ready for swig 2.0.x
#%{__rm} subversion/bindings/swig/proxy/*.swg
--disable-mod-activation \
%if %{with db}
--with-berkeley-db="db.h:%{_includedir}:%{_libdir}:db" \
+ %{?with_db6:--enable-bdb6} \
%else
--without-berkeley-db \
%endif
%if %{with apache}
+ --with-apache-libexecdir="$(%{_sbindir}/apxs -q LIBEXECDIR)" \
--with-apxs=%{_sbindir}/apxs \
%else
--without-apxs \
%if %{without swig}
--without-swig \
%endif
-%if %{without ruby}
+%if %{with ruby}
+ svn_cv_ruby_sitedir_libsuffix="" \
+ svn_cv_ruby_sitedir_archsuffix="" \
+ --with-ruby-sitedir=%{ruby_vendorarchdir} \
+%else
ac_cv_path_RUBY=none \
%endif
%if %{with csvn}
--with-ctypesgen=%{_bindir}/ctypesgen.py \
%endif
-%if %{with javahl}
+%if %{with java}
--enable-javahl \
--with-jdk="%{java_home}" \
--without-jikes \
%else
--disable-javahl \
%endif
-%if %{with neon}
- --without-serf \
- --with-neon=%{_prefix} \
- --disable-neon-version-check \
-%else
--with-serf=%{_prefix} \
- --without-neon \
-%endif
--with-apr=%{_bindir}/apr-1-config \
--with-apr-util=%{_bindir}/apu-1-config \
%if %{with kwallet}
%{__make} -j1
cd -
%endif
-%if %{with javahl}
+%if %{with java}
%{__make} -j1 javahl \
javahl_javadir="%{_javadir}"
%endif
toolsdir=%{_bindir} \
DESTDIR=$RPM_BUILD_ROOT \
APACHE_LIBEXECDIR="$(%{_sbindir}/apxs -q LIBEXECDIR)" \
-%if %{with javahl}
+%if %{with java}
install-javahl \
javahl_javadir="%{_javadir}" \
%endif
%if %{with ruby}
%{__make} install -j1 \
+ SWIG_RB_RI_DATADIR=$RPM_BUILD_ROOT%{ruby_ridir} \
DESTDIR=$RPM_BUILD_ROOT \
- install-swig-rb install-swig-rb-doc \
+ install-swig-rb install-swig-rb-doc
# not our package
-%{__rm} -r $RPM_BUILD_ROOT%{ruby_ridir}/Kernel
%{__rm} -r $RPM_BUILD_ROOT%{ruby_ridir}/OptionParser
%{__rm} -r $RPM_BUILD_ROOT%{ruby_ridir}/Time
-%{__rm} -r $RPM_BUILD_ROOT%{ruby_ridir}/Uconv
+%if "%{ruby_version}" >= "2.0"
+%{__rm} -r $RPM_BUILD_ROOT%{ruby_ridir}/File
+%endif
%{__rm} $RPM_BUILD_ROOT%{ruby_ridir}/cache.ri
%{__rm} $RPM_BUILD_ROOT%{ruby_ridir}/created.rid
%endif
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}
-%if %{with javahl}
+%if %{with java}
%{__rm} $RPM_BUILD_ROOT%{_libdir}/libsvnjavahl*.{la,a}
%endif
%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
+%{__rm} $RPM_BUILD_ROOT%{ruby_vendorarchdir}/svn/ext/*.la
%endif
%endif
%if %{with gnome} || %{with kwallet}
%attr(755,root,root) %{_bindir}/svn
%attr(755,root,root) %{_bindir}/svnadmin
%attr(755,root,root) %{_bindir}/svndumpfilter
-%attr(755,root,root) %{_bindir}/svnrdump
%attr(755,root,root) %{_bindir}/svnlook
+%attr(755,root,root) %{_bindir}/svnmucc
+%attr(755,root,root) %{_bindir}/svnrdump
%attr(755,root,root) %{_bindir}/svnsync
%attr(755,root,root) %{_bindir}/svnversion
%{_mandir}/man1/svn.1*
%{_mandir}/man1/svndumpfilter.1*
%{_mandir}/man1/svnrdump.1*
%{_mandir}/man1/svnlook.1*
+%{_mandir}/man1/svnmucc.1*
%{_mandir}/man1/svnsync.1*
%{_mandir}/man1/svnversion.1*
%attr(755,root,root) %ghost %{_libdir}/libsvn_ra-1.so.0
%attr(755,root,root) %{_libdir}/libsvn_ra_local-1.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libsvn_ra_local-1.so.0
-%attr(755,root,root) %{_libdir}/libsvn_ra_%{webdavlib}-1.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsvn_ra_%{webdavlib}-1.so.0
+%attr(755,root,root) %{_libdir}/libsvn_ra_serf-1.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsvn_ra_serf-1.so.0
%attr(755,root,root) %{_libdir}/libsvn_ra_svn-1.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libsvn_ra_svn-1.so.0
%attr(755,root,root) %{_libdir}/libsvn_repos-1.so.*.*.*
%attr(755,root,root) %{_libdir}/libsvn_fs_util-1.so
%attr(755,root,root) %{_libdir}/libsvn_ra-1.so
%attr(755,root,root) %{_libdir}/libsvn_ra_local-1.so
-%attr(755,root,root) %{_libdir}/libsvn_ra_%{webdavlib}-1.so
+%attr(755,root,root) %{_libdir}/libsvn_ra_serf-1.so
%attr(755,root,root) %{_libdir}/libsvn_ra_svn-1.so
%attr(755,root,root) %{_libdir}/libsvn_repos-1.so
%attr(755,root,root) %{_libdir}/libsvn_subr-1.so
%{_libdir}/libsvn_fs_util-1.la
%{_libdir}/libsvn_ra-1.la
%{_libdir}/libsvn_ra_local-1.la
-%{_libdir}/libsvn_ra_%{webdavlib}-1.la
+%{_libdir}/libsvn_ra_serf-1.la
%{_libdir}/libsvn_ra_svn-1.la
%{_libdir}/libsvn_repos-1.la
%{_libdir}/libsvn_subr-1.la
%{_libdir}/libsvn_fs_util-1.a
%{_libdir}/libsvn_ra-1.a
%{_libdir}/libsvn_ra_local-1.a
-%{_libdir}/libsvn_ra_%{webdavlib}-1.a
+%{_libdir}/libsvn_ra_serf-1.a
%{_libdir}/libsvn_ra_svn-1.a
%{_libdir}/libsvn_repos-1.a
%{_libdir}/libsvn_subr-1.a
%attr(755,root,root) %{_bindir}/svndiff4
# tools/server-side
+%attr(755,root,root) %{_bindir}/fsfs-stats
%attr(755,root,root) %{_bindir}/svn-populate-node-origins-index
%attr(755,root,root) %{_bindir}/svn-rep-sharing-stats
+%attr(755,root,root) %{_bindir}/svnauthz
%attr(755,root,root) %{_bindir}/svnauthz-validate
-# tools/client-side/svnmucc
-%attr(755,root,root) %{_bindir}/svnmucc
+# tools/client-side
+%attr(755,root,root) %{_bindir}/svn-bench
+
# tools/dev/svnraisetreeconflict
%attr(755,root,root) %{_bindir}/svnraisetreeconflict
+# tools/dev/
+%attr(755,root,root) %{_bindir}/fsfs-access-map
+%attr(755,root,root) %{_bindir}/fsfs-reorg
+
%files -n bash-completion-subversion
%defattr(644,root,root,755)
/etc/bash_completion.d/%{name}
%endif # net_client_only
-%if %{with javahl}
+%if %{with java}
%files -n java-subversion
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libsvnjavahl-1.so.*.*.*
%dir %{perl_vendorarch}/auto/SVN
%dir %{perl_vendorarch}/auto/SVN/*
%attr(755,root,root) %{perl_vendorarch}/auto/SVN/*/*.so
-%{perl_vendorarch}/auto/SVN/*/*.bs
%{_mandir}/man3/*.3pm*
%endif
%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 %{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
+%dir %{ruby_vendorarchdir}/svn
+%{ruby_vendorarchdir}/svn/*.rb
+%dir %{ruby_vendorarchdir}/svn/ext
+%attr(755,root,root) %{ruby_vendorarchdir}/svn/ext/*.so
%{ruby_ridir}/Svn
%endif