Andreas Stieger 2018-04-14 17:59:39 +00:00 committed by Git OBS Bridge
parent 0a767d095c
commit bdcb673793
6 changed files with 30 additions and 4745 deletions

View File

@ -1,13 +0,0 @@
#!/bin/sh
ORIG_SPEC=subversion
EDIT_WARNING="##### WARNING: please do not edit this auto generated spec file. Use the ${ORIG_SPEC}.spec! #####\n"
sed "s/^%define is_mini .*$/${EDIT_WARNING}%define is_mini 1/;
s/^%define mini .*$/${EDIT_WARNING}%define mini -mini/;
s/^Name:.*/&-mini/
" < ${ORIG_SPEC}.spec > ${ORIG_SPEC}-mini.spec
cp ${ORIG_SPEC}.changes ${ORIG_SPEC}-mini.changes
cp ${ORIG_SPEC}-rpmlintrc ${ORIG_SPEC}-mini-rpmlintrc
osc service localrun format_spec_file

View File

@ -1,3 +0,0 @@
# libsvn_subr calls exit as part of the default malfunction handler.
# That's OK. Library users are expected to override the default handler.
addFilter("subversion.*shared-lib-calls-exit.*libsvn_subr-1.so.*")

File diff suppressed because it is too large Load Diff

View File

@ -1,576 +0,0 @@
#
# spec file for package subversion-mini
#
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2009-2010 Pascal Bleser <pascal.bleser@opensuse.org>
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
##### WARNING: please do not edit this auto generated spec file. Use the subversion.spec! #####
%define is_mini 1
##### WARNING: please do not edit this auto generated spec file. Use the subversion.spec! #####
%define mini -mini
%define svngroup svn
%define svnuser svn
%define _fwdefdir %{_sysconfdir}/sysconfig/SuSEfirewall2.d/services
%define sqlite_minimum_version 3.8.2
%if 0%{?is_mini}
# minimal build without desktop dependencies
%bcond_with kde
%bcond_with gnome
%else
# regular build with KWallet and GNOME Keyring support
%bcond_without gnome
# SLE does not ship KDE
%if 0%{?is_opensuse} != 1
%bcond_with kde
%else
%bcond_without kde
%endif
%endif
#Compat macro for new _fillupdir macro introduced in Nov 2017
%if ! %{defined _fillupdir}
%define _fillupdir %{_localstatedir}/adm/fillup-templates
%endif
%bcond_without python_ctypes
%bcond_with all_regression_tests
Name: subversion-mini
Version: 1.10.0
Release: 0
Summary: Subversion version control system
License: Apache-2.0
Group: Development/Tools/Version Control
Url: https://subversion.apache.org
Source0: https://www.apache.org/dist/subversion/subversion-%{version}.tar.bz2
Source1: subversion.conf
Source2: subversion.README.SUSE
Source4: contrib-1804739.tar.bz2
Source10: subversion.sysconfig.svnserve
Source12: subversion.sysconfig.svnserve.remoteaccess
Source14: svnserve.service
Source15: svnserve.tmpfiles
Source42: subversion.svngrep.sh
Source43: subversion.svndiff.sh
Source50: https://people.apache.org/keys/group/subversion.asc#/subversion.keyring
Source51: https://www.apache.org/dist/subversion/subversion-%{version}.tar.bz2.asc
Source92: %{name}-rpmlintrc
Patch11: subversion.libtool-verbose.patch
Patch20: subversion-swig-perl-install_vendor.patch
Patch23: subversion-swig-perl-Wall.patch
Patch30: subversion-1.8.0-rpath.patch
Patch37: subversion-no-build-date.patch
Patch39: subversion-fix-parallel-build-support-for-perl-bindings.patch
Patch40: subversion-perl-underlinking.patch
Patch41: subversion-1.10.0-fix-svn-version-gnome-keyring.patch
BuildRequires: apache-rpm-macros
BuildRequires: apache2-devel >= 2.2.0
BuildRequires: apache2-prefork
BuildRequires: db-devel
BuildRequires: doxygen
BuildRequires: file-devel
BuildRequires: gcc-c++
BuildRequires: java-devel >= 1.6.0
BuildRequires: junit
BuildRequires: libstdc++-devel
BuildRequires: libtool
BuildRequires: pkgconfig
# Python 2 is required to run autogen.sh ; swig is also hardcoded to py2
BuildRequires: python2-devel >= 2.7
BuildRequires: python2-xml
BuildRequires: ruby-devel >= 1.8.2
BuildRequires: swig
BuildRequires: update-alternatives
BuildRequires: utf8proc-devel
BuildRequires: pkgconfig(apr-1) >= 1.3.0
BuildRequires: pkgconfig(apr-util-1) >= 1.3.0
BuildRequires: pkgconfig(bash-completion)
BuildRequires: pkgconfig(krb5)
BuildRequires: pkgconfig(liblz4) >= 1.7
BuildRequires: pkgconfig(libsasl2)
BuildRequires: pkgconfig(serf-1) >= 1.3.4
BuildRequires: pkgconfig(sqlite3) >= %{sqlite_minimum_version}
BuildRequires: pkgconfig(systemd)
BuildRequires: pkgconfig(zlib)
# Package needs javah which was deprecated with this version of java
BuildConflicts: java-devel >= 10
# in openSUSE Leap 42.3, lz4 was incorrectly packaged
BuildConflicts: pkgconfig(liblz4) = 124
Requires: libsqlite3-0 >= %{sqlite_minimum_version}
Requires(post): %fillup_prereq
Requires(pre): pwdutils
Recommends: %{name}-bash-completion
Provides: subversion-javahl = %{version}-%{release}
%{?systemd_requires}
%if %{with all_regression_tests}
# tools required for network based tests
BuildRequires: net-tools
BuildRequires: time
BuildRequires: wget
%endif
%if %{with python_ctypes}
BuildRequires: ctypesgen
%endif
%if 0%{?is_mini}
Requires: this-is-only-for-build-envs
Provides: subversion = %{version}-%{release}
Conflicts: subversion
%endif
%if %{with gnome}
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(libsecret-1)
%endif
%if %{with kde}
BuildRequires: kdelibs4-core
BuildRequires: libkde4-devel
BuildRequires: libqt4-devel
%else
# In a case we migrate from system that had the kwallet integration we need it
# gone from the package to allow update
Provides: libsvn_auth_kwallet-1-0 = %{version}
Obsoletes: libsvn_auth_kwallet-1-0 < %{version}
%endif
# workaround for boo#969159
Conflicts: libsvn_auth_kwallet-1-0 < %{version}
Conflicts: libsvn_auth_kwallet-1-0 > %{version}
Conflicts: libsvn_gnome_keyring-1-0 < %{version}
Conflicts: libsvn_gnome_keyring-1-0 > %{version}
%description
Subversion exists to be universally recognized and adopted as an open-source,
centralized version control system characterized by its reliability as a safe
haven for valuable data; the simplicity of its model and usage; and its ability
to support the needs of a wide variety of users and projects, from individuals
to large-scale enterprise operations.
%package devel
Summary: Development package for Subversion developers
Group: Development/Libraries/C and C++
Requires: libapr-util1-devel
Requires: subversion%{?mini} = %{version}
%description devel
The subversion-devel package includes the static libraries and include
files for developers interacting with the subversion package.
%package tools
Summary: Tools for Subversion
Group: Development/Tools/Version Control
%description tools
This package contains some tools for subversion server and
repository admins.
%package perl
Summary: Allows Perl scripts to directly use Subversion repositories
Group: Development/Tools/Version Control
Requires: perl = %{perl_version}
Requires: perl >= 5.8
Requires: subversion%{?mini} = %{version}
%description perl
Provides Perl (SWIG) support for Subversion version control system.
%package python
Summary: Allows Python scripts to directly use Subversion repositories
Group: Development/Tools/Version Control
Requires: subversion%{?mini} = %{version}
%description python
Provides Python (SWIG) support for Subversion version control system.
%if %{with python_ctypes}
%package python-ctypes
Summary: High-Level Python Bindings for Subversion
Group: Development/Tools/Version Control
Requires: subversion%{?mini} = %{version}
%description python-ctypes
Provides high-level Python support for Subversion, based on ctypes.
%endif
%package ruby
Summary: Allows Ruby scripts to directly use Subversion repositories
Group: Development/Tools/Version Control
Requires: subversio%{?mini}n = %{version}
%description ruby
Provides Ruby (SWIG) support for Subversion version control system.
%package server
Summary: Apache server module for Subversion server
Group: Development/Tools/Version Control
Requires: %{apache_mmn}
Requires: apache2
Requires: subversion%{?mini} = %{version}
%description server
The subversion-server package adds the Subversion server Apache module
to the Apache directories and configuration.
%if %{with kde}
%package -n libsvn_auth_kwallet-1-0
Summary: KWallet support for Subversion
Group: Development/Tools/Version Control
Requires: %{name} = %{version}
Supplements: packageand(subversion:kdebase4-workspace)
Supplements: packageand(subversion:plasma5-workspace)
%description -n libsvn_auth_kwallet-1-0
Provides KWallet integration for Subversion
%endif
%if %{with gnome}
%package -n libsvn_auth_gnome_keyring-1-0
Summary: GNOME keyring sypport for Subversion
Group: Development/Tools/Version Control
Requires: %{name} = %{version}
Supplements: packageand(subversion:gnome-session)
%description -n libsvn_auth_gnome_keyring-1-0
Provides GNOME keyring support for Subversion
%endif
%package bash-completion
Summary: Bash Completion for %{name}
Group: Development/Tools/Version Control
Requires: %{name} = %{version}
Requires: pkgconfig(bash-completion)
BuildArch: noarch
%description bash-completion
Bash command line completion support for %{name} - completion of subcommands,
parameters and keywords for the svn command and other tools.
%prep
%setup -q -a 4 -n subversion-%{version}
%patch11 -p1
%patch20 -p1
%patch23 -p1
%patch30 -p1
%patch37 -p1
%patch39
%patch40 -p1
%patch41 -p1
%build
# Re-boot strap, needed for patch37
PATH=%{_prefix}/bin:$PATH ./autogen.sh --release
# Fix timestamp in doxygen
echo "HTML_TIMESTAMP = NO" >> doc/doxygen.conf
cat > with_jdk.files <<EOF-JAVA
%{_libdir}/libsvnjavahl*.so.*
%{_libdir}/libsvnjavahl*.so
%dir %{_libdir}/svn-javahl
%{_libdir}/svn-javahl/svn-javahl.jar
%{_datadir}/java/svn-javahl.jar
EOF-JAVA
# ### these possibly need further discussion
# swig_pydir = @libdir@/svn-python/libsvn
# swig_pydir_extra = @libdir@/svn-python/svn
sed --in-place=~ "
s@^swig_pydir = .*@swig_pydir = %{python_sitearch}/libsvn@
s@^swig_pydir_extra = .*@swig_pydir_extra = %{python_sitearch}/svn@
" Makefile.in
diff -u Makefile.in~ Makefile.in || true
sh -x autogen.sh
for i in subversion/bindings/javahl/native/*.cpp
do
d=$(sed -n '/^#include "..\/include/{s@^[^/]\+\([^"]\+\).*@subversion/bindings/javahl\1@;H};${x;s@\n@ @gp}' $i)
echo
echo "# $i"
if ! test -z "$d"
then
echo ${i%.cpp}.lo: $d
fi
echo
done >> build-outputs.mK
export CFLAGS="$(apxs2 -q CFLAGS) %{optflags} -fstack-protector -fpie"
export CXXFLAGS="$CFLAGS"
export APACHE_LDFLAGS="-Wl,-z,relro,-z,now"
export LDFLAGS="-pie"
%configure \
--enable-local-library-preloading \
--with-editor="vim -c 'set tw=72 et' " \
--with-serf=%{_prefix} \
--with-apr=%{_prefix} \
--with-apr-util=%{_prefix} \
--with-apxs=apxs2 \
--with-zlib=%{_prefix} \
--with-berkeley-db=db.h:db.h:%{_prefix}:db \
--with-apache-libexecdir=%{apache_libexecdir} \
--with-jdk=%{_libdir}/jvm/java --enable-javahl \
--with-junit="%{_datadir}/java/junit.jar" \
--with-jikes=no \
--with-sqlite="%{_prefix}" \
--enable-sqlite-compatibility-version=%{sqlite_minimum_version} \
%if %{with gnome}
--with-gnome-keyring \
%endif
%if %{with kde}
--with-kwallet \
%endif
--disable-mod-activation \
--with-libmagic \
--disable-static \
--enable-broken-httpd-auth
make %{?_smp_mflags}
make doc-api %{?_smp_mflags}
# Bindings
make extraclean-bindings %{?_smp_mflags}
make %{?_smp_mflags} swig-py swig-rb swig-pl
%if %{with python_ctypes}
make %{?_smp_mflags} ctypes-python
%endif
# Java is not thread safe
make -j1 JAVAC_FLAGS=" -encoding iso8859-1" javahl doc-javahl
%install
%make_install
make DESTDIR=%{buildroot} install-swig-py install-swig-pl install-javahl install-swig-rb
%if %{with python_ctypes}
make DESTDIR=%{buildroot} install-ctypes-python
# remove csvn .pyc files and recompile them because they contain the $RPM_BUILD_ROOT path:
find "%{buildroot}%{python_sitelib}/csvn/" -name "*.pyc" | xargs rm -f
python "%{py_libdir}/compileall.py" -f -d "%{python_sitelib}/csvn" "%{buildroot}/%{python_sitelib}/csvn"
%endif
%perl_process_packlist
%find_lang subversion
cp -Lav %{SOURCE42} %{buildroot}%{_bindir}/svngrep
cp -Lav %{SOURCE43} %{buildroot}%{_bindir}/svndiff
mkdir -p %{buildroot}%{_datadir}/emacs/site-lisp/
cp -avL contrib/client-side/emacs/*.el %{buildroot}%{_datadir}/emacs/site-lisp/
rm -f %{buildroot}%{_datadir}/emacs/site-lisp/vc-svn.el
cp -avL contrib/client-side/svn_apply_autoprops.py %{buildroot}%{_bindir}
mkdir -p %{buildroot}/%{apache_sysconfdir}/conf.d
cp -av %{SOURCE1} %{buildroot}/%{apache_sysconfdir}/conf.d/subversion.conf
cp -avL %{SOURCE2} README.SUSE
cp -avL subversion/mod_authz_svn/INSTALL README.mod_authz_svn
cat subversion.lang > files.subversion
cat with_jdk.files >> files.subversion
# tools
make DESTDIR=%{buildroot} install-tools
mv -v %{buildroot}%{_bindir}/svn-tools/{fsfs-access-map,svnauthz,svnauthz-validate,svn-populate-node-origins-index,svnraisetreeconflict} %{buildroot}%{_bindir}
# discard all other tools
rm -rf %{buildroot}%{_bindir}/svn-tools
# replicate svn-bench compatibility link
ln -sf svnbench %{buildroot}%{_bindir}/svn-bench
mkdir -p %{buildroot}%{_sbindir}
mkdir -p %{buildroot}%{_fillupdir}
install -m 644 -D %{SOURCE10} %{buildroot}%{_fillupdir}/sysconfig.svnserve
install -m 644 -D %{SOURCE12} %{buildroot}/%{_fwdefdir}/svnserve
install -d -m 0755 %{buildroot}/srv/svn
install -m 644 -D %{SOURCE14} %{buildroot}/%{_unitdir}/svnserve.service
ln -sv service %{buildroot}%{_sbindir}/rcsvnserve
install -d -m 0755 %{buildroot}/%{_tmpfilesdir}
install -m 0644 %{SOURCE15} %{buildroot}/%{_tmpfilesdir}/svnserve.conf
#useless libtool stuff
rm -rf %{buildroot}%{python_sitearch}/*/*.{a,la}
rm -rf %{buildroot}%{_libdir}/libsvn_swig_*.{so,la,a}
rm -rf %{buildroot}%{rb_sitelib}/svn/ext/*.*a
find %{buildroot} -type f -name "*.la" -delete -print
# remove stuff produced with Perl modules
find %{buildroot} -type f \
-a \( -name .packlist -o \( -name '*.bs' -a -empty \) \) \
-print0 | xargs -0 rm -f
# make Perl modules writable so they get stripped
find %{buildroot}%{_libexecdir}/perl5 -type f -perm 555 -print0 |
xargs -0 chmod 755
install -d -m 0755 %{buildroot}/%{_datadir}/java
ln -sv %{_libdir}/svn-javahl/svn-javahl.jar %{buildroot}/%{_datadir}/java/svn-javahl.jar
rm -f %{buildroot}%{_localstatedir}/adm/perl-modules/subversion
install -D -m0644 tools/client-side/bash_completion "%{buildroot}%{_sysconfdir}/bash_completion.d/subversion"
# examples
mkdir -p %{buildroot}%{_docdir}/subversion
cp -r tools/hook-scripts tools/backup tools/bdb tools/examples tools/xslt %{buildroot}%{_docdir}/subversion
find %{buildroot}%{_docdir}/subversion -type f -print0 | xargs -0 chmod 644
# clean tools for doc
rm -rf tools/*/*.in
rm -rf doc/doxygen/html/installdox
%check
export LANG=C LC_ALL=C
make %{?_smp_mflags} check CLEANUP=true || (cat fails.log; exit 1)
make %{?_smp_mflags} check-javahl || (cat fails.log; exit 1)
make %{?_smp_mflags} check-swig-pl || (cat fails.log; exit 1)
%if 0%{?suse_version} <= 1320
# swig bindings check failing from swig 3.0.3 and later
make %{?_smp_mflags} check-swig-py || (cat fails.log; exit 1)
# same for ruby bindings
make %{?_smp_mflags} check-swig-rb || (cat fails.log; exit 1)
%endif
%if %{with all_regression_tests}
make %{?_smp_mflags} svnserveautocheck CLEANUP=true FS_TYPE=fsfs || (cat fails.log; exit 1)
make %{?_smp_mflags} svnserveautocheck CLEANUP=true FS_TYPE=bdb || (cat fails.log; exit 1)
make %{?_smp_mflags} davautocheck CLEANUP=true FS_TYPE=fsfs || (cat fails.log; exit 1)
make %{?_smp_mflags} davautocheck CLEANUP=true FS_TYPE=bdb || (cat fails.log; exit 1)
%endif
%pre
getent group %{svngroup} >/dev/null || groupadd -r %{svngroup}
getent passwd %{svnuser} >/dev/null || useradd -r -g %{svngroup} -d /srv/svn -s /sbin/nologin -c "user for Apache Subversion svnserve" %{svnuser}
%service_add_pre svnserve.service
%preun
%service_del_preun svnserve.service
%post
%{fillup_only -n svnserve svnserve}
%service_add_post svnserve.service
systemd-tmpfiles --create %{_tmpfilesdir}/svnserve.conf
/sbin/ldconfig
%postun
%service_del_postun svnserve.service
/sbin/ldconfig
%post python -p /sbin/ldconfig
%postun python -p /sbin/ldconfig
%post perl -p /sbin/ldconfig
%postun perl -p /sbin/ldconfig
%post ruby -p /sbin/ldconfig
%postun ruby -p /sbin/ldconfig
%if %{with gnome}
%post -n libsvn_auth_gnome_keyring-1-0 -p /sbin/ldconfig
%postun -n libsvn_auth_gnome_keyring-1-0 -p /sbin/ldconfig
%endif
%if %{with kde}
%post -n libsvn_auth_kwallet-1-0 -p /sbin/ldconfig
%postun -n libsvn_auth_kwallet-1-0 -p /sbin/ldconfig
%endif
%files -f files.subversion
%license LICENSE
%doc README.SUSE BUGS CHANGES README.mod_authz_svn
%dir %{_docdir}/subversion/*
%{_docdir}/subversion
%{_sbindir}/rcsvnserve
%{_fillupdir}/sysconfig.svnserve
%dir %attr(755,%{svnuser},%{svngroup}) /srv/svn
%config %{_fwdefdir}/*
%{_unitdir}/svnserve.service
%{_tmpfilesdir}/svnserve.conf
%attr(755,root,root) %{_bindir}/svn
%attr(755,root,root) %{_bindir}/svnadmin
%attr(755,root,root) %{_bindir}/svndiff
%attr(755,root,root) %{_bindir}/svndumpfilter
%attr(755,root,root) %{_bindir}/svnfsfs
%attr(755,root,root) %{_bindir}/svngrep
%attr(755,root,root) %{_bindir}/svnlook
%attr(755,root,root) %{_bindir}/svnmucc
%attr(755,root,root) %{_bindir}/svnrdump
%attr(755,root,root) %{_bindir}/svnserve
%attr(755,root,root) %{_bindir}/svnsync
%attr(755,root,root) %{_bindir}/svnversion
%{_libdir}/libsvn_client*.so.*
%{_libdir}/libsvn_delta*.so.*
%{_libdir}/libsvn_diff*.so.*
%{_libdir}/libsvn_fs*.so.*
%{_libdir}/libsvn_ra*.so.*
%{_libdir}/libsvn_repos*.so.*
%{_libdir}/libsvn_subr*.so.*
%{_libdir}/libsvn_wc*.so.*
%{_mandir}/man?/svn*
%{_datadir}/emacs
%files perl
%{_mandir}/man?/SVN::*
%{_libdir}/libsvn_swig_perl-1.so.*
%{perl_vendorarch}/SVN
%{perl_vendorarch}/auto/SVN
%files python
%dir %{python_sitearch}
%dir %{python_sitearch}/svn
%dir %{python_sitearch}/libsvn
%{_libdir}/libsvn_swig_py-1.so.*
%{python_sitearch}/libsvn/*
%{python_sitearch}/svn/*
%if %{with python_ctypes}
%files python-ctypes
%doc subversion/bindings/ctypes-python/examples
%dir %{python_sitelib}
%{python_sitelib}/csvn
%{python_sitelib}/svn_ctypes_python_bindings-*-py%{py_ver}.egg-info
%endif
%files ruby
%dir %{rb_sitelib}
%{rb_sitelib}/svn
%{rb_sitelib}/*/svn
%{_libdir}/libsvn_swig_ruby-1.so.*
%files devel
%dir %{_includedir}/subversion-1
%{_libdir}/libsvn_*.so
%{_datadir}/pkgconfig/*.pc
%{_includedir}/subversion-1/*
%doc doc/doxygen/html
%files tools
%{_bindir}/fsfs-access-map
%attr(755,root,root) %{_bindir}/svn_apply_autoprops.py
%{_bindir}/svnauthz
%{_bindir}/svnauthz-validate
%{_bindir}/svnbench
%{_bindir}/svn-bench
%{_bindir}/svn-populate-node-origins-index
%{_bindir}/svnraisetreeconflict
%files server
%dir %{apache_sysconfdir}/conf.d
%config (noreplace) %{apache_sysconfdir}/conf.d/subversion.conf
%dir %{apache_libexecdir}
%{apache_libexecdir}/mod_dav_svn.*
%{apache_libexecdir}/mod_authz_svn.*
%{apache_libexecdir}/mod_dontdothat.*
%if %{with gnome}
%files -n libsvn_auth_gnome_keyring-1-0
%{_libdir}/libsvn_auth_gnome_keyring-1.so.0
%{_libdir}/libsvn_auth_gnome_keyring-1.so.0.*
%endif
%if %{with kde}
%files -n libsvn_auth_kwallet-1-0
%{_libdir}/libsvn_auth_kwallet-1.so.0
%{_libdir}/libsvn_auth_kwallet-1.so.0.*
%endif
%files bash-completion
%config %{_sysconfdir}/bash_completion.d/subversion
%changelog

View File

@ -1,22 +1,17 @@
-------------------------------------------------------------------
Sat Apr 14 16:29:26 UTC 2018 - astieger@suse.com
- split off a subversion-mini package with reduced dependencies,
in particular without desktop password store support to avoid
pulling kdelibs4 into ring1
- For the full package, enable kwallet integration as kdelibs4 were
ported to openssl 1.1
-------------------------------------------------------------------
Fri Apr 13 08:51:53 UTC 2018 - tchvatal@suse.com
Sat Apr 14 17:52:03 UTC 2018 - astieger@suse.com
- Apache Subversion 1.10.0:
* new conflict resolver
* Many bug fixes and enhancements
* lz4 compression for the repositories
* https://subversion.apache.org/docs/release-notes/1.10.html
- Convert dependencies to pkgconfig counterparts
- Add dependency on liblz4 and utf8proc
- Packaging changes;
* Convert dependencies to pkgconfig counterparts
* Add dependency on liblz4 and utf8proc
* Use %license (boo#1082318)
* build with KDE 5 KWallet support
ported to openssl 1.1
- Refresh patches:
* subversion-1.8.0-rpath.patch
* subversion-no-build-date.patch
@ -25,7 +20,6 @@ Fri Apr 13 08:51:53 UTC 2018 - tchvatal@suse.com
- dropped patches:
* subversion-1.8.11-autocheck-time.patch, upstream
* subversion-1.9.0-allow-httpd-2.4.6.patch, no longer required
- Use %license (boo#1082318)
- Add subversion-1.10.0-fix-svn-version-gnome-keyring.patch to list
GNOME keyring support in svn --version when using libsecret

View File

@ -17,18 +17,10 @@
#
%define is_mini 0
%define mini %nil
%define svngroup svn
%define svnuser svn
%define _fwdefdir %{_sysconfdir}/sysconfig/SuSEfirewall2.d/services
%define sqlite_minimum_version 3.8.2
%if 0%{?is_mini}
# minimal build without desktop dependencies
%bcond_with kde
%bcond_with gnome
%else
# regular build with KWallet and GNOME Keyring support
%bcond_without gnome
# SLE does not ship KDE
%if 0%{?is_opensuse} != 1
@ -36,7 +28,6 @@
%else
%bcond_without kde
%endif
%endif
#Compat macro for new _fillupdir macro introduced in Nov 2017
%if ! %{defined _fillupdir}
%define _fillupdir %{_localstatedir}/adm/fillup-templates
@ -50,7 +41,7 @@ Summary: Subversion version control system
License: Apache-2.0
Group: Development/Tools/Version Control
Url: https://subversion.apache.org
Source0: https://www.apache.org/dist/subversion/subversion-%{version}.tar.bz2
Source0: https://www.apache.org/dist/subversion/%{name}-%{version}.tar.bz2
Source1: subversion.conf
Source2: subversion.README.SUSE
Source4: contrib-1804739.tar.bz2
@ -61,7 +52,7 @@ Source15: svnserve.tmpfiles
Source42: subversion.svngrep.sh
Source43: subversion.svndiff.sh
Source50: https://people.apache.org/keys/group/subversion.asc#/subversion.keyring
Source51: https://www.apache.org/dist/subversion/subversion-%{version}.tar.bz2.asc
Source51: https://www.apache.org/dist/subversion/%{name}-%{version}.tar.bz2.asc
Source92: %{name}-rpmlintrc
Patch11: subversion.libtool-verbose.patch
Patch20: subversion-swig-perl-install_vendor.patch
@ -119,11 +110,6 @@ BuildRequires: wget
%if %{with python_ctypes}
BuildRequires: ctypesgen
%endif
%if 0%{?is_mini}
Requires: this-is-only-for-build-envs
Provides: subversion = %{version}-%{release}
Conflicts: subversion
%endif
%if %{with gnome}
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(libsecret-1)
@ -155,7 +141,7 @@ to large-scale enterprise operations.
Summary: Development package for Subversion developers
Group: Development/Libraries/C and C++
Requires: libapr-util1-devel
Requires: subversion%{?mini} = %{version}
Requires: subversion = %{version}
%description devel
The subversion-devel package includes the static libraries and include
@ -174,7 +160,7 @@ Summary: Allows Perl scripts to directly use Subversion repositories
Group: Development/Tools/Version Control
Requires: perl = %{perl_version}
Requires: perl >= 5.8
Requires: subversion%{?mini} = %{version}
Requires: subversion = %{version}
%description perl
Provides Perl (SWIG) support for Subversion version control system.
@ -182,7 +168,7 @@ Provides Perl (SWIG) support for Subversion version control system.
%package python
Summary: Allows Python scripts to directly use Subversion repositories
Group: Development/Tools/Version Control
Requires: subversion%{?mini} = %{version}
Requires: subversion = %{version}
%description python
Provides Python (SWIG) support for Subversion version control system.
@ -191,7 +177,7 @@ Provides Python (SWIG) support for Subversion version control system.
%package python-ctypes
Summary: High-Level Python Bindings for Subversion
Group: Development/Tools/Version Control
Requires: subversion%{?mini} = %{version}
Requires: subversion = %{version}
%description python-ctypes
Provides high-level Python support for Subversion, based on ctypes.
@ -200,7 +186,7 @@ Provides high-level Python support for Subversion, based on ctypes.
%package ruby
Summary: Allows Ruby scripts to directly use Subversion repositories
Group: Development/Tools/Version Control
Requires: subversio%{?mini}n = %{version}
Requires: subversion = %{version}
%description ruby
Provides Ruby (SWIG) support for Subversion version control system.
@ -251,7 +237,7 @@ Bash command line completion support for %{name} - completion of subcommands,
parameters and keywords for the svn command and other tools.
%prep
%setup -q -a 4 -n subversion-%{version}
%setup -q -a 4
%patch11 -p1
%patch20 -p1
%patch23 -p1
@ -347,7 +333,7 @@ python "%{py_libdir}/compileall.py" -f -d "%{python_sitelib}/csvn" "%{buildroot}
%endif
%perl_process_packlist
%find_lang subversion
%find_lang %{name}
cp -Lav %{SOURCE42} %{buildroot}%{_bindir}/svngrep
cp -Lav %{SOURCE43} %{buildroot}%{_bindir}/svndiff
@ -363,7 +349,7 @@ cp -av %{SOURCE1} %{buildroot}/%{apache_sysconfdir}/conf.d/subversion.conf
cp -avL %{SOURCE2} README.SUSE
cp -avL subversion/mod_authz_svn/INSTALL README.mod_authz_svn
cat subversion.lang > files.subversion
cat %{name}.lang > files.subversion
cat with_jdk.files >> files.subversion
# tools
@ -404,12 +390,12 @@ install -d -m 0755 %{buildroot}/%{_datadir}/java
ln -sv %{_libdir}/svn-javahl/svn-javahl.jar %{buildroot}/%{_datadir}/java/svn-javahl.jar
rm -f %{buildroot}%{_localstatedir}/adm/perl-modules/subversion
install -D -m0644 tools/client-side/bash_completion "%{buildroot}%{_sysconfdir}/bash_completion.d/subversion"
install -D -m0644 tools/client-side/bash_completion "%{buildroot}%{_sysconfdir}/bash_completion.d/%{name}"
# examples
mkdir -p %{buildroot}%{_docdir}/subversion
cp -r tools/hook-scripts tools/backup tools/bdb tools/examples tools/xslt %{buildroot}%{_docdir}/subversion
find %{buildroot}%{_docdir}/subversion -type f -print0 | xargs -0 chmod 644
mkdir -p %{buildroot}%{_docdir}/%{name}
cp -r tools/hook-scripts tools/backup tools/bdb tools/examples tools/xslt %{buildroot}%{_docdir}/%{name}
find %{buildroot}%{_docdir}/%{name} -type f -print0 | xargs -0 chmod 644
# clean tools for doc
rm -rf tools/*/*.in
@ -452,12 +438,12 @@ systemd-tmpfiles --create %{_tmpfilesdir}/svnserve.conf
%service_del_postun svnserve.service
/sbin/ldconfig
%post python -p /sbin/ldconfig
%postun python -p /sbin/ldconfig
%post perl -p /sbin/ldconfig
%postun perl -p /sbin/ldconfig
%post ruby -p /sbin/ldconfig
%postun ruby -p /sbin/ldconfig
%post -n subversion-python -p /sbin/ldconfig
%postun -n subversion-python -p /sbin/ldconfig
%post -n subversion-perl -p /sbin/ldconfig
%postun -n subversion-perl -p /sbin/ldconfig
%post -n subversion-ruby -p /sbin/ldconfig
%postun -n subversion-ruby -p /sbin/ldconfig
%if %{with gnome}
%post -n libsvn_auth_gnome_keyring-1-0 -p /sbin/ldconfig
@ -472,8 +458,8 @@ systemd-tmpfiles --create %{_tmpfilesdir}/svnserve.conf
%files -f files.subversion
%license LICENSE
%doc README.SUSE BUGS CHANGES README.mod_authz_svn
%dir %{_docdir}/subversion/*
%{_docdir}/subversion
%dir %{_docdir}/%{name}/*
%{_docdir}/%{name}
%{_sbindir}/rcsvnserve
%{_fillupdir}/sysconfig.svnserve
%dir %attr(755,%{svnuser},%{svngroup}) /srv/svn
@ -569,6 +555,6 @@ systemd-tmpfiles --create %{_tmpfilesdir}/svnserve.conf
%endif
%files bash-completion
%config %{_sysconfdir}/bash_completion.d/subversion
%config %{_sysconfdir}/bash_completion.d/%{name}
%changelog