diff --git a/sources b/sources index e976f49..2b67dcd 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ SHA512 (subversion-1.9.7.tar.bz2) = a55efd3edaddbc099450d849fcc6fe5a8d20b85ece966d8ac2fd73ee9cb4255a0349bbcfceb4e9fca6daf054ce7c648eff8d273c6873f5dade6e62dcea7eeb2b +SHA512 (subversion-1.10.0.tar.bz2) = 26e49c961d54c4e78067caa202f384c36544e0ce7506abbffe73e59186ac34559a70cbd6c0934ed47dcc5c3580fce0f0cc2ef14b77695c26e8dbbc6358d1ec6a diff --git a/subversion-1.10.0-pie.patch b/subversion-1.10.0-pie.patch new file mode 100644 index 0000000..47901a1 --- /dev/null +++ b/subversion-1.10.0-pie.patch @@ -0,0 +1,72 @@ + +Link executables using -pie, link test executables using -no-install. + +diff -uap subversion-1.10.0/build.conf.pie subversion-1.10.0/build.conf +--- subversion-1.10.0/build.conf.pie ++++ subversion-1.10.0/build.conf +@@ -783,6 +783,7 @@ + libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr aprutil apriconv apr + msvc-static = yes + undefined-lib-symbols = yes ++link-cmd = $(LINK_TEST_LIB) + + # ---------------------------------------------------------------------------- + # Tests for libsvn_fs_base +diff -uap subversion-1.10.0/build/generator/gen_base.py.pie subversion-1.10.0/build/generator/gen_base.py +--- subversion-1.10.0/build/generator/gen_base.py.pie ++++ subversion-1.10.0/build/generator/gen_base.py +@@ -599,7 +599,7 @@ + self.install = options.get('install') + self.compile_cmd = options.get('compile-cmd') + self.sources = options.get('sources', '*.c *.cpp') +- self.link_cmd = options.get('link-cmd', '$(LINK)') ++ self.link_cmd = options.get('link-cmd', '$(LINK_LIB)') + + self.external_lib = options.get('external-lib') + self.external_project = options.get('external-project') +@@ -659,6 +659,17 @@ + + self.msvc_force_static = options.get('msvc-force-static') == 'yes' + ++ if self.install in ['test', 'bdb-test', 'sub-test', ]: ++ self.link_cmd = '$(LINK_TEST)' ++ elif self.install in ['cxxhl-tests', ]: ++ self.link_cmd = '$(LINK_TEST_CXX)' ++ elif self.link_cmd == '$(LINK_LIB)': ++ # Over-ride the default for TargetLinked. ++ self.link_cmd = '$(LINK_EXE)' ++ else: ++ raise GenError('ERROR: Unknown executable link type for ' + self.name + \ ++ ': ' + self.link_cmd + ' (' + self.install + ')') ++ + def add_dependencies(self): + TargetLinked.add_dependencies(self) + +diff -uap subversion-1.10.0/Makefile.in.pie subversion-1.10.0/Makefile.in +--- subversion-1.10.0/Makefile.in.pie ++++ subversion-1.10.0/Makefile.in +@@ -268,6 +268,11 @@ + LINK_LIB = $(LINK) $(LT_SO_VERSION) -rpath $(libdir) + LINK_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=link $(CXX) $(LT_LDFLAGS) $(CXXFLAGS) $(LDFLAGS) + LINK_CXX_LIB = $(LINK_CXX) $(LT_SO_VERSION) -rpath $(libdir) ++LINK_TEST = $(LINK) -no-install ++LINK_TEST_LIB = $(LINK) -avoid-version ++LINK_TEST_CXX_LIB = $(LINK_CXX) -avoid-version ++LINK_EXE = $(LINK) -pie ++LINK_CXX_EXE = $(LINK) -pie + + # special link rule for mod_dav_svn + LINK_APACHE_MOD = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS) -rpath $(APACHE_LIBEXECDIR) -avoid-version -module $(APACHE_LDFLAGS) -shared +@@ -780,10 +785,10 @@ + $(PYTHON) $(top_srcdir)/build/transform_sql.py $< $(top_srcdir)/$@ + + .c.o: +- $(COMPILE) -o $@ -c $< ++ $(COMPILE) -fPIE -o $@ -c $< + + .cpp.o: +- $(COMPILE_CXX) -o $@ -c $< ++ $(COMPILE_CXX) -fPIE -o $@ -c $< + + .c.lo: + $(LT_COMPILE) -o $@ -c $< diff --git a/subversion-1.10.0-rpath.patch b/subversion-1.10.0-rpath.patch new file mode 100644 index 0000000..4d20107 --- /dev/null +++ b/subversion-1.10.0-rpath.patch @@ -0,0 +1,42 @@ + +Only link libraries using -rpath, to avoid unnecessary RPATH tags in executables. + +diff -uap subversion-1.10.0/build.conf.rpath subversion-1.10.0/build.conf +--- subversion-1.10.0/build.conf.rpath ++++ subversion-1.10.0/build.conf +@@ -568,7 +568,7 @@ + path = subversion/bindings/swig/python/libsvn_swig_py + libs = libsvn_client libsvn_wc libsvn_ra libsvn_delta libsvn_subr + apriconv apr python swig +-link-cmd = $(LINK) ++link-cmd = $(LINK_LIB) + install = swig-py-lib + # need special build rule to include -DSWIGPYTHON + compile-cmd = $(COMPILE_SWIG_PY) +@@ -594,7 +594,7 @@ + lang = ruby + path = subversion/bindings/swig/ruby/libsvn_swig_ruby + libs = libsvn_client libsvn_wc libsvn_delta libsvn_subr apriconv apr ruby swig +-link-cmd = $(LINK) $(SWIG_RB_LIBS) ++link-cmd = $(LINK_LIB) $(SWIG_RB_LIBS) + install = swig-rb-lib + # need special build rule to include + compile-cmd = $(COMPILE_SWIG_RB) +diff -uap subversion-1.10.0/Makefile.in.rpath subversion-1.10.0/Makefile.in +--- subversion-1.10.0/Makefile.in.rpath ++++ subversion-1.10.0/Makefile.in +@@ -264,10 +264,10 @@ + COMPILE_GOOGLEMOCK_CXX = $(LT_COMPILE_CXX_NOWARN) $(GOOGLEMOCK_LIB_INCLUDES) -o $@ -c + COMPILE_CXXHL_GOOGLEMOCK_CXX = $(LT_COMPILE_CXX) $(CXXHL_INCLUDES) $(GOOGLEMOCK_INCLUDES) -o $@ -c + +-LINK = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS) -rpath $(libdir) +-LINK_LIB = $(LINK) $(LT_SO_VERSION) +-LINK_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=link $(CXX) $(LT_LDFLAGS) $(CXXFLAGS) $(LDFLAGS) -rpath $(libdir) +-LINK_CXX_LIB = $(LINK_CXX) $(LT_SO_VERSION) ++LINK = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS) ++LINK_LIB = $(LINK) $(LT_SO_VERSION) -rpath $(libdir) ++LINK_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=link $(CXX) $(LT_LDFLAGS) $(CXXFLAGS) $(LDFLAGS) ++LINK_CXX_LIB = $(LINK_CXX) $(LT_SO_VERSION) -rpath $(libdir) + + # special link rule for mod_dav_svn + LINK_APACHE_MOD = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS) -rpath $(APACHE_LIBEXECDIR) -avoid-version -module $(APACHE_LDFLAGS) -shared diff --git a/subversion-1.9.0-pie.patch b/subversion-1.9.0-pie.patch deleted file mode 100644 index 437e1b7..0000000 --- a/subversion-1.9.0-pie.patch +++ /dev/null @@ -1,89 +0,0 @@ - -Link executables using -pie, link test executables using -no-install. - -diff -uap subversion-1.9.0/build.conf.pie subversion-1.9.0/build.conf -diff -uap subversion-1.9.0/build.conf.pie subversion-1.9.0/build.conf -diff -uap subversion-1.9.0/build.conf.pie subversion-1.9.0/build.conf ---- subversion-1.9.0/build.conf.pie -+++ subversion-1.9.0/build.conf -@@ -743,7 +743,7 @@ libs = libsvncxxhl libgmock libsvn_subr - sources = tests/*.cpp - install = tests - compile-cmd = $(COMPILE_CXXHL_GMOCK_CXX) --link-cmd = $(LINK_CXX) -+link-cmd = $(LINK_TEST_CXX) - - - # ---------------------------------------------------------------------------- -@@ -760,7 +760,7 @@ sources = gmock-gtest-all.cc - install = tests - msvc-static = yes - compile-cmd = $(COMPILE_GMOCK_CXX) --link-cmd = $(LINK_CXX_LIB) -+link-cmd = $(LINK_TEST_CXX_LIB) - - # ---------------------------------------------------------------------------- - # -@@ -775,6 +775,7 @@ install = test - libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr aprutil apriconv apr - msvc-static = yes - undefined-lib-symbols = yes -+link-cmd = $(LINK_TEST_LIB) - - # ---------------------------------------------------------------------------- - # Tests for libsvn_fs_base -diff -uap subversion-1.9.0/build/generator/gen_base.py.pie subversion-1.9.0/build/generator/gen_base.py ---- subversion-1.9.0/build/generator/gen_base.py.pie -+++ subversion-1.9.0/build/generator/gen_base.py -@@ -585,7 +585,7 @@ class TargetLinked(Target): - self.install = options.get('install') - self.compile_cmd = options.get('compile-cmd') - self.sources = options.get('sources', '*.c *.cpp') -- self.link_cmd = options.get('link-cmd', '$(LINK)') -+ self.link_cmd = options.get('link-cmd', '$(LINK_LIB)') - - self.external_lib = options.get('external-lib') - self.external_project = options.get('external-project') -@@ -644,6 +644,14 @@ class TargetExe(TargetLinked): - - self.msvc_force_static = options.get('msvc-force-static') == 'yes' - -+ if self.install in ['test', 'bdb-test', 'sub-test', ]: -+ self.link_cmd = '$(LINK_TEST)' -+ elif self.link_cmd == '$(LINK_LIB)': -+ # Over-ride the default for TargetLinked. -+ self.link_cmd = '$(LINK_EXE)' -+ elif self.link_cmd not in ['$(LINK_TEST_CXX)', ]: -+ raise GenError('ERROR: Unknown executable link type for ' + self.name + ': ' + self.link_cmd) -+ - def add_dependencies(self): - TargetLinked.add_dependencies(self) - -diff -uap subversion-1.9.0/Makefile.in.pie subversion-1.9.0/Makefile.in ---- subversion-1.9.0/Makefile.in.pie -+++ subversion-1.9.0/Makefile.in -@@ -259,6 +259,11 @@ LINK = $(LIBTOOL) $(LTFLAGS) --mode=link - LINK_LIB = $(LINK) $(LT_SO_VERSION) -rpath $(libdir) - LINK_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=link $(CXX) $(LT_LDFLAGS) $(CXXFLAGS) $(LDFLAGS) - LINK_CXX_LIB = $(LINK_CXX) $(LT_SO_VERSION) -rpath $(libdir) -+LINK_TEST = $(LINK) -no-install -+LINK_TEST_LIB = $(LINK) -avoid-version -+LINK_TEST_CXX_LIB = $(LINK_CXX) -avoid-version -+LINK_EXE = $(LINK) -pie -+LINK_CXX_EXE = $(LINK) -pie - - # special link rule for mod_dav_svn - LINK_APACHE_MOD = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS) -rpath $(APACHE_LIBEXECDIR) -avoid-version -module $(APACHE_LDFLAGS) -@@ -753,10 +758,10 @@ schema-clean: - $(PYTHON) $(top_srcdir)/build/transform_sql.py $< $(top_srcdir)/$@ - - .c.o: -- $(COMPILE) -o $@ -c $< -+ $(COMPILE) -fPIE -o $@ -c $< - - .cpp.o: -- $(COMPILE_CXX) -o $@ -c $< -+ $(COMPILE_CXX) -fPIE -o $@ -c $< - - .c.lo: - $(LT_COMPILE) -o $@ -c $< diff --git a/subversion-1.9.0-rpath.patch b/subversion-1.9.0-rpath.patch deleted file mode 100644 index 1531006..0000000 --- a/subversion-1.9.0-rpath.patch +++ /dev/null @@ -1,41 +0,0 @@ - -Only link libraries using -rpath, to avoid unnecessary RPATH tags in executables. - ---- subversion-1.9.0/build.conf.rpath -+++ subversion-1.9.0/build.conf -@@ -561,7 +561,7 @@ lang = python - path = subversion/bindings/swig/python/libsvn_swig_py - libs = libsvn_client libsvn_wc libsvn_ra libsvn_delta libsvn_subr - apriconv apr python swig --link-cmd = $(LINK) -+link-cmd = $(LINK_LIB) - install = swig-py-lib - # need special build rule to include -DSWIGPYTHON - compile-cmd = $(COMPILE_SWIG_PY) -@@ -586,7 +586,7 @@ type = swig_lib - lang = ruby - path = subversion/bindings/swig/ruby/libsvn_swig_ruby - libs = libsvn_client libsvn_wc libsvn_delta libsvn_subr apriconv apr ruby swig --link-cmd = $(LINK) $(SWIG_RB_LIBS) -+link-cmd = $(LINK_LIB) $(SWIG_RB_LIBS) - install = swig-rb-lib - # need special build rule to include - compile-cmd = $(COMPILE_SWIG_RB) -diff -uap subversion-1.9.0/Makefile.in.rpath subversion-1.9.0/Makefile.in ---- subversion-1.9.0/Makefile.in.rpath -+++ subversion-1.9.0/Makefile.in -@@ -255,10 +255,10 @@ COMPILE_CXXHL_CXX = $(LT_COMPILE_CXX) $( - COMPILE_GMOCK_CXX = $(LT_COMPILE_CXX_NOWARN) $(GMOCK_INCLUDES) -o $@ -c - COMPILE_CXXHL_GMOCK_CXX = $(LT_COMPILE_CXX) $(CXXHL_INCLUDES) $(GMOCK_INCLUDES) -o $@ -c - --LINK = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS) -rpath $(libdir) --LINK_LIB = $(LINK) $(LT_SO_VERSION) --LINK_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=link $(CXX) $(LT_LDFLAGS) $(CXXFLAGS) $(LDFLAGS) -rpath $(libdir) --LINK_CXX_LIB = $(LINK_CXX) $(LT_SO_VERSION) -+LINK = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS) -+LINK_LIB = $(LINK) $(LT_SO_VERSION) -rpath $(libdir) -+LINK_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=link $(CXX) $(LT_LDFLAGS) $(CXXFLAGS) $(LDFLAGS) -+LINK_CXX_LIB = $(LINK_CXX) $(LT_SO_VERSION) -rpath $(libdir) - - # special link rule for mod_dav_svn - LINK_APACHE_MOD = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS) -rpath $(APACHE_LIBEXECDIR) -avoid-version -module $(APACHE_LDFLAGS) diff --git a/subversion-1.9.4-kwallet.patch b/subversion-1.9.4-kwallet.patch deleted file mode 100644 index 1570737..0000000 --- a/subversion-1.9.4-kwallet.patch +++ /dev/null @@ -1,21 +0,0 @@ ---- subversion-1.9.4/build/ac-macros/kwallet.m4.orig 2016-05-08 14:14:47.603122825 +0100 -+++ subversion-1.9.4/build/ac-macros/kwallet.m4 2016-05-08 14:16:56.509192769 +0100 -@@ -68,15 +68,15 @@ - fi - done - qt_include_dirs="`$PKG_CONFIG --cflags-only-I QtCore QtDBus QtGui`" -- kde_incdir="`$KDE4_CONFIG --install include`" -- SVN_KWALLET_INCLUDES="$DBUS_CPPFLAGS $qt_include_dirs -I$kde_incdir" -+ kde_include_dirs="`$KDE4_CONFIG --path include`" -+ SVN_KWALLET_INCLUDES="$DBUS_CPPFLAGS $qt_include_dirs -I$kde_include_dirs" - qt_libs_other_options="`$PKG_CONFIG --libs-only-other QtCore QtDBus QtGui`" - SVN_KWALLET_LIBS="$DBUS_LIBS -lQtCore -lQtDBus -lQtGui -lkdecore -lkdeui $qt_libs_other_options" - CXXFLAGS="$CXXFLAGS $SVN_KWALLET_INCLUDES" - LIBS="$LIBS $SVN_KWALLET_LIBS" - qt_lib_dirs="`$PKG_CONFIG --libs-only-L QtCore QtDBus QtGui`" - kde_libdir="`$KDE4_CONFIG --install lib`" -- LDFLAGS="$old_LDFLAGS `SVN_REMOVE_STANDARD_LIB_DIRS($qt_lib_dirs -L$kde_libdir)`" -+ LDFLAGS="$old_LDFLAGS `SVN_REMOVE_STANDARD_LIB_DIRS($qt_lib_dirs -L$libdir/kde4/devel)`" - AC_LANG(C++) - AC_LINK_IFELSE([AC_LANG_SOURCE([[ - #include diff --git a/subversion.spec b/subversion.spec index 92aab9d..a00107c 100644 --- a/subversion.spec +++ b/subversion.spec @@ -9,7 +9,7 @@ %global make_check 0 %else %global with_java 1 -%global make_check %{with python2} +%global make_check 1 %endif %if %{with python2} == %{with python3} @@ -33,8 +33,8 @@ Summary: A Modern Concurrent Version Control System Name: subversion -Version: 1.9.7 -Release: 7%{?dist} +Version: 1.10.0 +Release: 1%{?dist} License: ASL 2.0 Group: Development/Tools URL: https://subversion.apache.org/ @@ -47,9 +47,8 @@ Source5: psvn-init.el Source6: svnserve.service Source7: svnserve.tmpfiles Source8: svnserve.sysconf -Patch1: subversion-1.9.0-rpath.patch -Patch2: subversion-1.9.0-pie.patch -Patch3: subversion-1.9.4-kwallet.patch +Patch1: subversion-1.10.0-rpath.patch +Patch2: subversion-1.10.0-pie.patch Patch4: subversion-1.8.0-rubybind.patch Patch5: subversion-1.8.5-swigplWall.patch Patch6: subversion-1.9.7-pybinary.patch @@ -59,6 +58,7 @@ BuildRequires: libdb-devel >= 4.1.25, swig >= 1.3.24, gettext BuildRequires: apr-devel >= 1.3.0, apr-util-devel >= 1.3.0 BuildRequires: libserf-devel >= 1.3.0, cyrus-sasl-devel BuildRequires: sqlite-devel >= 3.4.0, file-devel, systemd-units +BuildRequires: utf8proc-devel, lz4-devel # Any apr-util crypto backend needed BuildRequires: apr-util-openssl # For systemctl scriptlets @@ -134,7 +134,7 @@ for developers interacting with the subversion package. Group: Development/Tools Summary: GNOME Keyring support for Subversion Requires: subversion%{?_isa} = %{version}-%{release} -BuildRequires: libgnome-keyring-devel, dbus-devel +BuildRequires: libgnome-keyring-devel, dbus-devel, libsecret-devel %description gnome The subversion-gnome package adds support for storing Subversion @@ -213,7 +213,6 @@ This package includes supplementary tools for use with Subversion. %setup -q %patch1 -p1 -b .rpath %patch2 -p1 -b .pie -%patch3 -p1 -b .kwallet %patch4 -p1 -b .rubybind %patch5 -p1 -b .swigplWall %patch6 -p1 -b .pybinary @@ -240,8 +239,8 @@ export svn_cv_ruby_link="%{__cc} -shared" export svn_cv_ruby_sitedir_libsuffix="" export svn_cv_ruby_sitedir_archsuffix="" -export EXTRA_CFLAGS="$RPM_OPT_FLAGS -DSVN_SQLITE_MIN_VERSION_NUMBER=3007012 \ - -DSVN_SQLITE_MIN_VERSION=\\\"3.7.12\\\"" +#export EXTRA_CFLAGS="$RPM_OPT_FLAGS -DSVN_SQLITE_MIN_VERSION_NUMBER=3007012 \ +# -DSVN_SQLITE_MIN_VERSION=\\\"3.7.12\\\"" export APACHE_LDFLAGS="-Wl,-z,relro,-z,now" export CC=gcc CXX=g++ JAVA_HOME=%{jdk_path} @@ -260,7 +259,7 @@ export CC=gcc CXX=g++ JAVA_HOME=%{jdk_path} --with-junit=%{_prefix}/share/java/junit.jar \ %endif %if %{with kwallet} - --with-kwallet \ + --with-kwallet=%{_includedir}/kde4:%{_libdir}/kde4/devel \ %endif --with-berkeley-db || (cat config.log; exit 1) make %{?_smp_mflags} all tools @@ -514,6 +513,9 @@ make check-javahl %endif %changelog +* Mon Apr 16 2018 Joe Orton - 1.10.0-1 +- update to 1.10.0 (#1566493) + * Tue Mar 27 2018 Joe Orton - 1.9.7-7 - add build conditionals for python2, python3 and kwallet