]> git.pld-linux.org Git - packages/subversion.git/blobdiff - subversion.spec
- ruby 2.1 rebuild
[packages/subversion.git] / subversion.spec
index 70b7e4cfa0b95b9f032f48201b0d2b8dce7ff5a1..3e4d31cb18e357bb4ffec81d573fe50f4d5a0ade 100644 (file)
@@ -1,29 +1,30 @@
-# 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_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 java                    # build without javahl support (Java high-level bindings)
+%bcond_with    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.10
+Version:       1.9.3
 Release:       2
 License:       Apache v2.0
 Group:         Development/Version Control
-Source0:       http://www.idg.pl/mirrors/apache/subversion/%{name}-%{version}.tar.bz2
-# Source0-md5: 4088a77e14232876c9b4ff1541e6e200
+Source0:       http://www.apache.org/dist/subversion/%{name}-%{version}.tar.bz2
+# Source0-md5: 243036eb28b50ce517fc228eb3250add
 Source1:       %{name}-dav_svn.conf
 Source2:       %{name}-authz_svn.conf
 Source3:       %{name}-svnserve.init
@@ -72,11 +68,12 @@ Patch0:             %{name}-home_etc.patch
 Patch1:                %{name}-DESTDIR.patch
 Patch2:                %{name}-ruby-datadir-path.patch
 Patch3:                %{name}-tests.patch
-Patch4:                subversion-1.7.2-ruby19.patch
+Patch4:                x32-libdir.patch
+Patch5:                %{name}-swig_py.patch
 URL:           http://subversion.apache.org/
-%{?with_apache:BuildRequires:  apache-devel >= 2.2.0-8}
-BuildRequires: apr-devel >= 1:1.0.0
-BuildRequires: apr-util-devel >= 1:1.2.8-3
+%{?with_apache:BuildRequires:  apache-devel >= 2.4.14}
+BuildRequires: apr-devel >= 1:1.3
+BuildRequires: apr-util-devel >= 1:1.3
 BuildRequires: autoconf >= 2.59
 BuildRequires: automake
 BuildRequires: bison
@@ -84,9 +81,11 @@ BuildRequires:       cyrus-sasl-devel
 %if %{with kwallet} || %{with gnome}
 BuildRequires: dbus-devel
 %endif
+%{!?with_db6:BuildRequires:    db-devel < 6}
 BuildRequires: db-devel >= 4.1.25
 BuildRequires: expat-devel
-BuildRequires: gettext-devel
+BuildRequires: gettext-tools
+%{?with_gnome:BuildRequires:   glib2-devel >= 2.0}
 %{?with_kwallet:BuildRequires: kde4-kdelibs-devel}
 %{?with_gnome:BuildRequires:   libgnome-keyring-devel}
 BuildRequires: libmagic-devel
@@ -96,15 +95,11 @@ BuildRequires:      pkgconfig
 BuildRequires: rpm-pythonprov
 BuildRequires: rpmbuild(macros) >= 1.656
 BuildRequires: sed >= 4.0
-BuildRequires: sqlite3-devel >= 3.6.18
+BuildRequires: serf-devel >= 1.3.4
+BuildRequires: sqlite3-devel >= 3.7.12
 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
@@ -120,6 +115,7 @@ BuildRequires:      swig-python >= 1.3.24
 %if %{with ruby}
 BuildRequires: rpm-rubyprov
 BuildRequires: ruby-devel >= 1:1.8.2
+BuildRequires: ruby-irb
 BuildRequires: ruby-rubygems
 BuildRequires: swig-ruby >= 1.3.24
 %endif
@@ -131,7 +127,7 @@ BuildRoot:  %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 %define                apacheconfdir   %(%{apxs} -q SYSCONFDIR 2>/dev/null)/conf.d
 %define                apachelibdir    %(%{apxs} -q LIBEXECDIR 2>/dev/null)
 
-%define                skip_post_check_so      libsvn_swig_py-1.so.* libsvn_swig_perl-1.so.*
+%define                skip_post_check_so      libsvn_swig_py-1.so.* libsvn_swig_perl-1.so.* libsvn_fs_x-1.so.*
 
 %description
 The goal of the Subversion project is to build a version control
@@ -179,11 +175,9 @@ System) na comunidade opensource, fornecendo grandes melhorias.
 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:      apr >= 1:1.3
+Requires:      apr-util >= 1:1.3
+Requires:      serf >= 1.3.4
 Obsoletes:     libsubversion0
 
 %description libs
@@ -198,8 +192,8 @@ Summary(pl.UTF-8):  Pliki nagłówkowe i dokumetacja do subversion
 Summary(pt_BR.UTF-8):  Arquivos de desenvolvimento para o Subversion
 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:      apr-util-devel >= 1:1.3
+Requires:      serf-devel >= 1.3.4
 Obsoletes:     libsubversion0-devel
 
 %description devel
@@ -275,6 +269,9 @@ Group:              Applications/Shells
 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.
@@ -448,12 +445,10 @@ uwierzytelniać się przy użyciu Portfela KDE.
 %patch2 -p0
 %patch3 -p1
 %patch4 -p1
+%patch5 -p0
 
 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
@@ -467,10 +462,12 @@ chmod +x ./autogen.sh && ./autogen.sh
        --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 \
@@ -488,21 +485,14 @@ chmod +x ./autogen.sh && ./autogen.sh
 %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}
@@ -534,7 +524,7 @@ cd subversion/bindings/swig/perl/native
 %{__make} -j1
 cd -
 %endif
-%if %{with javahl}
+%if %{with java}
 %{__make} -j1 javahl \
        javahl_javadir="%{_javadir}"
 %endif
@@ -568,11 +558,12 @@ install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig,bash_completion.d} \
        $RPM_BUILD_ROOT%{_sysconfdir}/%{name} \
        $RPM_BUILD_ROOT/home/services/subversion{,/repos}
 
-%{__make} install -j1 \
+%{__make} -j1 install \
+       pkgconfig_dir=%{_pkgconfigdir} \
        toolsdir=%{_bindir} \
        DESTDIR=$RPM_BUILD_ROOT \
        APACHE_LIBEXECDIR="$(%{_sbindir}/apxs -q LIBEXECDIR)" \
-%if %{with javahl}
+%if %{with java}
        install-javahl \
        javahl_javadir="%{_javadir}" \
 %endif
@@ -581,19 +572,26 @@ install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig,bash_completion.d} \
        swig_pydir=%{py_sitedir}/libsvn \
        swig_pydir_extra=%{py_sitedir}/svn \
 %endif
+       install-tools
+
 %if %{with csvn}
-       install-ctypes-python \
+# manually execute install-ctypes-python target
+cd subversion/bindings/ctypes-python
+%py_install
+cd ../../..
 %endif
-       install-tools
 
 %if %{with ruby}
-%{__make} install -j1 \
-       DESTDIR=$RPM_BUILD_ROOT \
-       install-swig-rb install-swig-rb-doc \
+%{__make} -j1 install-swig-rb install-swig-rb-doc \
+       SWIG_RB_RI_DATADIR=$RPM_BUILD_ROOT%{ruby_ridir} \
+       DESTDIR=$RPM_BUILD_ROOT
 
 # not our package
 %{__rm} -r $RPM_BUILD_ROOT%{ruby_ridir}/OptionParser
 %{__rm} -r $RPM_BUILD_ROOT%{ruby_ridir}/Time
+%if "%{ruby_abi}" >= "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
@@ -619,9 +617,9 @@ install -p tools/backup/hot-backup.py $RPM_BUILD_ROOT%{_bindir}/svn-hot-backup
 %endif
 
 # rename not to conflict with standard packages. (are these needed at all?)
-mv $RPM_BUILD_ROOT%{_bindir}/{,svn}diff
-mv $RPM_BUILD_ROOT%{_bindir}/{,svn}diff3
-mv $RPM_BUILD_ROOT%{_bindir}/{,svn}diff4
+%{__mv} $RPM_BUILD_ROOT%{_bindir}/{,svn}diff
+%{__mv} $RPM_BUILD_ROOT%{_bindir}/{,svn}diff3
+%{__mv} $RPM_BUILD_ROOT%{_bindir}/{,svn}diff4
 
 %if %{with python} || %{with csvn}
 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
@@ -638,7 +636,7 @@ cp -p tools/examples/*.py $RPM_BUILD_ROOT%{_examplesdir}/python-%{name}-%{versio
 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}
@@ -738,8 +736,9 @@ fi
 %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*
@@ -747,6 +746,7 @@ fi
 %{_mandir}/man1/svndumpfilter.1*
 %{_mandir}/man1/svnrdump.1*
 %{_mandir}/man1/svnlook.1*
+%{_mandir}/man1/svnmucc.1*
 %{_mandir}/man1/svnsync.1*
 %{_mandir}/man1/svnversion.1*
 
@@ -769,12 +769,14 @@ fi
 %attr(755,root,root) %ghost %{_libdir}/libsvn_fs_fs-1.so.0
 %attr(755,root,root) %{_libdir}/libsvn_fs_util-1.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libsvn_fs_util-1.so.0
+%attr(755,root,root) %{_libdir}/libsvn_fs_x-1.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsvn_fs_x-1.so.0
 %attr(755,root,root) %{_libdir}/libsvn_ra-1.so.*.*.*
 %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.*.*.*
@@ -795,9 +797,10 @@ fi
 %endif
 %attr(755,root,root) %{_libdir}/libsvn_fs_fs-1.so
 %attr(755,root,root) %{_libdir}/libsvn_fs_util-1.so
+%attr(755,root,root) %{_libdir}/libsvn_fs_x-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
@@ -811,13 +814,39 @@ fi
 %endif
 %{_libdir}/libsvn_fs_fs-1.la
 %{_libdir}/libsvn_fs_util-1.la
+%{_libdir}/libsvn_fs_x-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_wc-1.la
+%if %{with gnome}
+# only for feature check, linking will fail (no libsvn_auth_gnome_keyring.so)
+%{_pkgconfigdir}/libsvn_auth_gnome_keyring.pc
+%endif
+%if %{with kwallet}
+# only for feature check, linking will fail (no libsvn_auth_kwallet.so)
+%{_pkgconfigdir}/libsvn_auth_kwallet.pc
+%endif
+%{_pkgconfigdir}/libsvn_client.pc
+%{_pkgconfigdir}/libsvn_delta.pc
+%{_pkgconfigdir}/libsvn_diff.pc
+%{_pkgconfigdir}/libsvn_fs.pc
+%if %{without net_client_only}
+%{_pkgconfigdir}/libsvn_fs_base.pc
+%endif
+%{_pkgconfigdir}/libsvn_fs_fs.pc
+%{_pkgconfigdir}/libsvn_fs_util.pc
+%{_pkgconfigdir}/libsvn_fs_x.pc
+%{_pkgconfigdir}/libsvn_ra.pc
+%{_pkgconfigdir}/libsvn_ra_local.pc
+%{_pkgconfigdir}/libsvn_ra_serf.pc
+%{_pkgconfigdir}/libsvn_ra_svn.pc
+%{_pkgconfigdir}/libsvn_repos.pc
+%{_pkgconfigdir}/libsvn_subr.pc
+%{_pkgconfigdir}/libsvn_wc.pc
 %{_includedir}/%{name}-1
 %{_examplesdir}/%{name}-%{version}
 
@@ -832,9 +861,10 @@ fi
 %endif
 %{_libdir}/libsvn_fs_fs-1.a
 %{_libdir}/libsvn_fs_util-1.a
+%{_libdir}/libsvn_fs_x-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
@@ -845,6 +875,8 @@ fi
 %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
+# does anything use it? requires libsvn_auth_gnome_keyring.so
+#%{_pkgconfigdir}/libsvn_auth_gnome_keyring.pc
 %endif
 
 %if %{with kwallet}
@@ -852,6 +884,8 @@ fi
 %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
+# does anything use it? requires libsvn_auth_kwallet.so
+#%{_pkgconfigdir}/libsvn_auth_kwallet.pc
 %endif
 
 %if %{without net_client_only}
@@ -878,22 +912,28 @@ fi
 %attr(755,root,root) %{_bindir}/svndiff4
 
 # tools/server-side
+%attr(755,root,root) %{_bindir}/svnfsfs
 %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}/svnbench
+
 # tools/dev/svnraisetreeconflict
 %attr(755,root,root) %{_bindir}/svnraisetreeconflict
 
+# tools/dev/
+%attr(755,root,root) %{_bindir}/fsfs-access-map
+%attr(755,root,root) %{_bindir}/x509-parser
+
 %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.*.*.*
@@ -941,7 +981,6 @@ fi
 %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
 
This page took 0.060768 seconds and 4 git commands to generate.