From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alexander Marx To: development@lists.ipfire.org Subject: [PATCH] Subversion: Update to 1.9.4 Date: Sat, 03 Sep 2016 15:37:11 +0000 Message-ID: <1472917031-22133-1-git-send-email-alexander.marx@ipfire.org> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============2541797183687553059==" List-Id: --===============2541797183687553059== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Signed-off-by: Alexander Marx Signed-off-by: Stefan Schantl --- .../patches/0001-subversion-1.9.0-rpath.patch | 41 ++++++++++ subversion/patches/0002-subversion-1.9.0-pie.patch | 89 ++++++++++++++++++++= ++ .../patches/0003-subversion-1.8.5-swigplWall.patch | 16 ++++ .../patches/001-subversion-1.7.0-rpath.patch | 49 ------------ subversion/patches/002-subversion-1.7.0-pie.patch | 57 -------------- subversion/subversion.nm | 15 ++-- 6 files changed, 156 insertions(+), 111 deletions(-) create mode 100644 subversion/patches/0001-subversion-1.9.0-rpath.patch create mode 100644 subversion/patches/0002-subversion-1.9.0-pie.patch create mode 100644 subversion/patches/0003-subversion-1.8.5-swigplWall.patch delete mode 100644 subversion/patches/001-subversion-1.7.0-rpath.patch delete mode 100644 subversion/patches/002-subversion-1.7.0-pie.patch diff --git a/subversion/patches/0001-subversion-1.9.0-rpath.patch b/subversio= n/patches/0001-subversion-1.9.0-rpath.patch new file mode 100644 index 0000000..1531006 --- /dev/null +++ b/subversion/patches/0001-subversion-1.9.0-rpath.patch @@ -0,0 +1,41 @@ + +Only link libraries using -rpath, to avoid unnecessary RPATH tags in executa= bles. + +--- subversion-1.9.0/build.conf.rpath ++++ subversion-1.9.0/build.conf +@@ -561,7 +561,7 @@ lang =3D python + path =3D subversion/bindings/swig/python/libsvn_swig_py + libs =3D libsvn_client libsvn_wc libsvn_ra libsvn_delta libsvn_subr + apriconv apr python swig +-link-cmd =3D $(LINK) ++link-cmd =3D $(LINK_LIB) + install =3D swig-py-lib + # need special build rule to include -DSWIGPYTHON + compile-cmd =3D $(COMPILE_SWIG_PY) +@@ -586,7 +586,7 @@ type =3D swig_lib + lang =3D ruby + path =3D subversion/bindings/swig/ruby/libsvn_swig_ruby + libs =3D libsvn_client libsvn_wc libsvn_delta libsvn_subr apriconv apr ruby= swig +-link-cmd =3D $(LINK) $(SWIG_RB_LIBS) ++link-cmd =3D $(LINK_LIB) $(SWIG_RB_LIBS) + install =3D swig-rb-lib + # need special build rule to include + compile-cmd =3D $(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 =3D $(LT_COMPILE_CXX) $( + COMPILE_GMOCK_CXX =3D $(LT_COMPILE_CXX_NOWARN) $(GMOCK_INCLUDES) -o $@ -c + COMPILE_CXXHL_GMOCK_CXX =3D $(LT_COMPILE_CXX) $(CXXHL_INCLUDES) $(GMOCK_INC= LUDES) -o $@ -c +=20 +-LINK =3D $(LIBTOOL) $(LTFLAGS) --mode=3Dlink $(CC) $(LT_LDFLAGS) $(CFLAGS) = $(LDFLAGS) -rpath $(libdir) +-LINK_LIB =3D $(LINK) $(LT_SO_VERSION) +-LINK_CXX =3D $(LIBTOOL) $(LTCXXFLAGS) --mode=3Dlink $(CXX) $(LT_LDFLAGS) $(= CXXFLAGS) $(LDFLAGS) -rpath $(libdir) +-LINK_CXX_LIB =3D $(LINK_CXX) $(LT_SO_VERSION) ++LINK =3D $(LIBTOOL) $(LTFLAGS) --mode=3Dlink $(CC) $(LT_LDFLAGS) $(CFLAGS) = $(LDFLAGS) ++LINK_LIB =3D $(LINK) $(LT_SO_VERSION) -rpath $(libdir) ++LINK_CXX =3D $(LIBTOOL) $(LTCXXFLAGS) --mode=3Dlink $(CXX) $(LT_LDFLAGS) $(= CXXFLAGS) $(LDFLAGS) ++LINK_CXX_LIB =3D $(LINK_CXX) $(LT_SO_VERSION) -rpath $(libdir) +=20 + # special link rule for mod_dav_svn + LINK_APACHE_MOD =3D $(LIBTOOL) $(LTFLAGS) --mode=3Dlink $(CC) $(LT_LDFLAGS)= $(CFLAGS) $(LDFLAGS) -rpath $(APACHE_LIBEXECDIR) -avoid-version -module $(AP= ACHE_LDFLAGS) diff --git a/subversion/patches/0002-subversion-1.9.0-pie.patch b/subversion/= patches/0002-subversion-1.9.0-pie.patch new file mode 100644 index 0000000..437e1b7 --- /dev/null +++ b/subversion/patches/0002-subversion-1.9.0-pie.patch @@ -0,0 +1,89 @@ + +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 =3D libsvncxxhl libgmock libsvn_subr + sources =3D tests/*.cpp + install =3D tests + compile-cmd =3D $(COMPILE_CXXHL_GMOCK_CXX) +-link-cmd =3D $(LINK_CXX) ++link-cmd =3D $(LINK_TEST_CXX) +=20 +=20 + # -------------------------------------------------------------------------= --- +@@ -760,7 +760,7 @@ sources =3D gmock-gtest-all.cc + install =3D tests + msvc-static =3D yes + compile-cmd =3D $(COMPILE_GMOCK_CXX) +-link-cmd =3D $(LINK_CXX_LIB) ++link-cmd =3D $(LINK_TEST_CXX_LIB) +=20 + # -------------------------------------------------------------------------= --- + # +@@ -775,6 +775,7 @@ install =3D test + libs =3D libsvn_repos libsvn_fs libsvn_delta libsvn_subr aprutil apriconv a= pr + msvc-static =3D yes + undefined-lib-symbols =3D yes ++link-cmd =3D $(LINK_TEST_LIB) +=20 + # -------------------------------------------------------------------------= --- + # 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 =3D options.get('install') + self.compile_cmd =3D options.get('compile-cmd') + self.sources =3D options.get('sources', '*.c *.cpp') +- self.link_cmd =3D options.get('link-cmd', '$(LINK)') ++ self.link_cmd =3D options.get('link-cmd', '$(LINK_LIB)') +=20 + self.external_lib =3D options.get('external-lib') + self.external_project =3D options.get('external-project') +@@ -644,6 +644,14 @@ class TargetExe(TargetLinked): +=20 + self.msvc_force_static =3D options.get('msvc-force-static') =3D=3D 'yes' +=20 ++ if self.install in ['test', 'bdb-test', 'sub-test', ]: ++ self.link_cmd =3D '$(LINK_TEST)' ++ elif self.link_cmd =3D=3D '$(LINK_LIB)': ++ # Over-ride the default for TargetLinked. ++ self.link_cmd =3D '$(LINK_EXE)' ++ elif self.link_cmd not in ['$(LINK_TEST_CXX)', ]: ++ raise GenError('ERROR: Unknown executable link type for ' + self.name= + ': ' + self.link_cmd) ++ =20 + def add_dependencies(self): + TargetLinked.add_dependencies(self) +=20 +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 =3D $(LIBTOOL) $(LTFLAGS) --mode=3Dlink + LINK_LIB =3D $(LINK) $(LT_SO_VERSION) -rpath $(libdir) + LINK_CXX =3D $(LIBTOOL) $(LTCXXFLAGS) --mode=3Dlink $(CXX) $(LT_LDFLAGS) $(= CXXFLAGS) $(LDFLAGS) + LINK_CXX_LIB =3D $(LINK_CXX) $(LT_SO_VERSION) -rpath $(libdir) ++LINK_TEST =3D $(LINK) -no-install ++LINK_TEST_LIB =3D $(LINK) -avoid-version ++LINK_TEST_CXX_LIB =3D $(LINK_CXX) -avoid-version ++LINK_EXE =3D $(LINK) -pie ++LINK_CXX_EXE =3D $(LINK) -pie +=20 + # special link rule for mod_dav_svn + LINK_APACHE_MOD =3D $(LIBTOOL) $(LTFLAGS) --mode=3Dlink $(CC) $(LT_LDFLAGS)= $(CFLAGS) $(LDFLAGS) -rpath $(APACHE_LIBEXECDIR) -avoid-version -module $(AP= ACHE_LDFLAGS) +@@ -753,10 +758,10 @@ schema-clean: + $(PYTHON) $(top_srcdir)/build/transform_sql.py $< $(top_srcdir)/$@ +=20 + .c.o: +- $(COMPILE) -o $@ -c $< ++ $(COMPILE) -fPIE -o $@ -c $< +=20 + .cpp.o: +- $(COMPILE_CXX) -o $@ -c $< ++ $(COMPILE_CXX) -fPIE -o $@ -c $< +=20 + .c.lo: + $(LT_COMPILE) -o $@ -c $< diff --git a/subversion/patches/0003-subversion-1.8.5-swigplWall.patch b/subv= ersion/patches/0003-subversion-1.8.5-swigplWall.patch new file mode 100644 index 0000000..af66806 --- /dev/null +++ b/subversion/patches/0003-subversion-1.8.5-swigplWall.patch @@ -0,0 +1,16 @@ + +Don't drop -Wall in the swig Perl bindings, otherwise building with +e.g. -Wformat-security might break. + +https://bugzilla.redhat.com/show_bug.cgi?id=3D1037341 + +--- subversion-1.8.5/subversion/bindings/swig/perl/native/Makefile.PL.in.swi= gplWall ++++ subversion-1.8.5/subversion/bindings/swig/perl/native/Makefile.PL.in +@@ -54,7 +54,6 @@ my $includes =3D ' -I/usr/include/apr-1 + # SWIG is using C++ style comments in an extern "C" code. + $cflags =3D~ s/-ansi\s+//g; + $cflags =3D~ s/-std=3Dc89\s+//g; +-$cflags =3D~ s/-Wall//g; + $cflags =3D~ s/-Wunused//g; + $cflags =3D~ s/-Wshadow//g; + $cflags =3D~ s/-Wstrict-prototypes//g; diff --git a/subversion/patches/001-subversion-1.7.0-rpath.patch b/subversion= /patches/001-subversion-1.7.0-rpath.patch deleted file mode 100644 index 2481346..0000000 --- a/subversion/patches/001-subversion-1.7.0-rpath.patch +++ /dev/null @@ -1,49 +0,0 @@ -diff -uap subversion-1.7.0/build.conf.rpath subversion-1.7.0/build.conf ---- subversion-1.7.0/build.conf.rpath 2011-08-04 21:18:50.000000000 +0100 -+++ subversion-1.7.0/build.conf 2011-10-12 09:23:43.844525530 +0100 -@@ -478,7 +478,7 @@ type =3D swig_lib - lang =3D python - path =3D subversion/bindings/swig/python/libsvn_swig_py - libs =3D libsvn_client libsvn_wc libsvn_ra libsvn_delta libsvn_subr apricon= v apr --link-cmd =3D $(LINK) -+link-cmd =3D $(LINK_LIB) - install =3D swig-py-lib - # need special build rule to include -DSWIGPYTHON - compile-cmd =3D $(COMPILE_SWIG_PY) -@@ -501,7 +501,7 @@ type =3D swig_lib - lang =3D ruby - path =3D subversion/bindings/swig/ruby/libsvn_swig_ruby - libs =3D libsvn_client libsvn_wc libsvn_delta libsvn_subr apriconv apr --link-cmd =3D $(LINK) $(SWIG_RB_LIBS) -+link-cmd =3D $(LINK_LIB) $(SWIG_RB_LIBS) - install =3D swig-rb-lib - # need special build rule to include - compile-cmd =3D $(COMPILE_SWIG_RB) -diff -uap subversion-1.7.0/build/generator/gen_base.py.rpath subversion-1.7.= 0/build/generator/gen_base.py ---- subversion-1.7.0/build/generator/gen_base.py.rpath 2011-06-22 17:44:54.0= 00000000 +0100 -+++ subversion-1.7.0/build/generator/gen_base.py 2011-10-12 09:23:15.3686493= 75 +0100 -@@ -506,6 +506,10 @@ class TargetLib(TargetLinked): - self.msvc_fake =3D options.get('msvc-fake') =3D=3D 'yes' # has fake tar= get - self.msvc_export =3D options.get('msvc-export', '').split() -=20 -+ ### hmm. this is Makefile-specific -+ if self.link_cmd =3D=3D '$(LINK)': -+ self.link_cmd =3D '$(LINK_LIB)' -+ - class TargetApacheMod(TargetLib): -=20 - def __init__(self, name, options, gen_obj): -diff -uap subversion-1.7.0/Makefile.in.rpath subversion-1.7.0/Makefile.in ---- subversion-1.7.0/Makefile.in.rpath 2011-07-16 12:50:53.000000000 +0100 -+++ subversion-1.7.0/Makefile.in 2011-10-12 09:24:36.165524732 +0100 -@@ -203,8 +203,8 @@ COMPILE_JAVAHL_CXX =3D $(LIBTOOL) $(LTCXXF - COMPILE_JAVAHL_JAVAC =3D $(JAVAC) $(JAVAC_FLAGS) - COMPILE_JAVAHL_JAVAH =3D $(JAVAH) -=20 --LINK =3D $(LIBTOOL) $(LTFLAGS) --mode=3Dlink $(CC) $(LT_LDFLAGS) $(CFLAGS) = $(LDFLAGS) -rpath $(libdir) --LINK_LIB =3D $(LINK) $(LT_SO_VERSION) -+LINK =3D $(LIBTOOL) $(LTFLAGS) --mode=3Dlink $(CC) $(LT_LDFLAGS) $(CFLAGS) = $(LDFLAGS) -+LINK_LIB =3D $(LINK) $(LT_SO_VERSION) -rpath $(libdir) - LINK_CXX =3D $(LIBTOOL) $(LTCXXFLAGS) --mode=3Dlink $(CXX) $(LT_LDFLAGS) $(= CXXFLAGS) $(LDFLAGS) -rpath $(libdir) - LINK_CXX_LIB =3D $(LINK_CXX) $(LT_SO_VERSION) -=20 diff --git a/subversion/patches/002-subversion-1.7.0-pie.patch b/subversion/p= atches/002-subversion-1.7.0-pie.patch deleted file mode 100644 index 85e9f07..0000000 --- a/subversion/patches/002-subversion-1.7.0-pie.patch +++ /dev/null @@ -1,57 +0,0 @@ -diff -uap subversion-1.7.0/build/generator/gen_base.py.pie subversion-1.7.0/= build/generator/gen_base.py ---- subversion-1.7.0/build/generator/gen_base.py.pie 2011-10-12 09:25:30.510= 524103 +0100 -+++ subversion-1.7.0/build/generator/gen_base.py 2011-10-12 09:25:30.5156501= 10 +0100 -@@ -406,7 +406,7 @@ class TargetLinked(Target): - self.install =3D options.get('install') - self.compile_cmd =3D options.get('compile-cmd') - self.sources =3D options.get('sources', '*.c *.cpp') -- self.link_cmd =3D options.get('link-cmd', '$(LINK)') -+ self.link_cmd =3D options.get('link-cmd', '$(LINK_LIB)') -=20 - self.external_lib =3D options.get('external-lib') - self.external_project =3D options.get('external-project') -@@ -462,6 +462,11 @@ class TargetExe(TargetLinked): - self.manpages =3D options.get('manpages', '') - self.testing =3D options.get('testing') -=20 -+ if self.install =3D=3D 'test' or self.install =3D=3D 'bdb-test': -+ self.link_cmd =3D '$(LINK_TEST)' -+ else: -+ self.link_cmd =3D '$(LINK_EXE)' -+ - def add_dependencies(self): - TargetLinked.add_dependencies(self) -=20 -@@ -507,8 +512,8 @@ class TargetLib(TargetLinked): - self.msvc_export =3D options.get('msvc-export', '').split() -=20 - ### hmm. this is Makefile-specific -- if self.link_cmd =3D=3D '$(LINK)': -- self.link_cmd =3D '$(LINK_LIB)' -+ if self.install =3D=3D 'test': -+ self.link_cmd =3D '$(LINK_TEST_LIB)' -=20 - class TargetApacheMod(TargetLib): -=20 -diff -uap subversion-1.7.0/Makefile.in.pie subversion-1.7.0/Makefile.in ---- subversion-1.7.0/Makefile.in.pie 2011-10-12 09:25:30.511600030 +0100 -+++ subversion-1.7.0/Makefile.in 2011-10-12 09:26:16.757524426 +0100 -@@ -205,6 +205,9 @@ COMPILE_JAVAHL_JAVAH =3D $(JAVAH) -=20 - LINK =3D $(LIBTOOL) $(LTFLAGS) --mode=3Dlink $(CC) $(LT_LDFLAGS) $(CFLAGS) = $(LDFLAGS) - LINK_LIB =3D $(LINK) $(LT_SO_VERSION) -rpath $(libdir) -+LINK_TEST =3D $(LINK) -no-install -+LINK_TEST_LIB =3D $(LINK) -avoid-version -+LINK_EXE =3D $(LINK) -pie - LINK_CXX =3D $(LIBTOOL) $(LTCXXFLAGS) --mode=3Dlink $(CXX) $(LT_LDFLAGS) $(= CXXFLAGS) $(LDFLAGS) -rpath $(libdir) - LINK_CXX_LIB =3D $(LINK_CXX) $(LT_SO_VERSION) -=20 -@@ -657,7 +660,7 @@ schema-clean: - $(PYTHON) $(top_srcdir)/build/transform_sql.py $< $(top_srcdir)/$@ -=20 - .c.o: -- $(COMPILE) -o $@ -c $< -+ $(COMPILE) -fpie -o $@ -c $< -=20 - .cpp.o: - $(COMPILE_CXX) -o $@ -c $< diff --git a/subversion/subversion.nm b/subversion/subversion.nm index 54ab6a7..db42224 100644 --- a/subversion/subversion.nm +++ b/subversion/subversion.nm @@ -4,7 +4,7 @@ ############################################################################= ### =20 name =3D subversion -version =3D 1.8.13 +version =3D 1.9.4 release =3D 1 =20 groups =3D Development/Tools @@ -41,13 +41,14 @@ build end =20 configure_options +=3D \ - --sbindir=3D/sbin \ + CPPFLAGS=3D"-P" \ --disable-mod-activation \ - --disable-static \ - --with-berkeley-db + --disable-static =20 prepare_cmds - ./autogen.sh --release + # Regenerate build system. + sed -i "/seems to be moved/s/^/#/" build/ltmain.sh && + ./autogen.sh =20 # Fix shebang lines. perl -pi -e 's|/usr/bin/env perl -w|/usr/bin/perl -w|' tools/hook-scripts/= *.pl.in @@ -77,6 +78,10 @@ packages the Subversion libraries. end =20 + requires + perl(:MODULE_COMPAT_%{perl_version}) + end + files /usr/lib/libsvn_swig_perl-1.so.* /usr/lib/perl*/ --=20 2.6.3 --===============2541797183687553059==--