[Libreoffice-commits] core.git: Branch 'libreoffice-5-0' - external/coinmp external/libetonyek external/libmwaw external/libodfgen external/libwpd external/libwpg external/libwps external/libxslt external/redland

Stephan Bergmann sbergman at redhat.com
Fri Jun 26 04:40:34 PDT 2015


 external/coinmp/ExternalProject_coinmp.mk         |    3 +
 external/coinmp/UnpackedTarball_coinmp.mk         |    3 +
 external/coinmp/rpath.patch                       |   50 ++++++++++++++++++++++
 external/libetonyek/ExternalProject_libetonyek.mk |    3 +
 external/libetonyek/UnpackedTarball_libetonyek.mk |    1 
 external/libetonyek/rpath.patch                   |   10 ++++
 external/libmwaw/ExternalProject_libmwaw.mk       |    3 +
 external/libmwaw/UnpackedTarball_libmwaw.mk       |    8 +++
 external/libmwaw/rpath.patch                      |   10 ++++
 external/libodfgen/ExternalProject_libodfgen.mk   |    3 +
 external/libodfgen/UnpackedTarball_libodfgen.mk   |    6 ++
 external/libodfgen/rpath.patch                    |   10 ++++
 external/libwpd/ExternalProject_libwpd.mk         |    3 +
 external/libwpd/UnpackedTarball_libwpd.mk         |    3 +
 external/libwpd/rpath.patch                       |   10 ++++
 external/libwpg/ExternalProject_libwpg.mk         |    3 +
 external/libwpg/UnpackedTarball_libwpg.mk         |    6 ++
 external/libwpg/rpath.patch                       |   10 ++++
 external/libwps/ExternalProject_libwps.mk         |    5 +-
 external/libwps/UnpackedTarball_libwps.mk         |    1 
 external/libwps/rpath.patch.0                     |   10 ++++
 external/libxslt/UnpackedTarball_xslt.mk          |    1 
 external/libxslt/rpath.patch.0                    |   10 ++++
 external/redland/UnpackedTarball_raptor.mk        |    1 
 external/redland/UnpackedTarball_rasqal.mk        |    3 +
 external/redland/UnpackedTarball_redland.mk       |    3 +
 external/redland/raptor/rpath.patch               |   21 +++++++++
 external/redland/rasqal/rpath.patch               |   21 +++++++++
 external/redland/redland/rpath.patch              |   10 ++++
 29 files changed, 229 insertions(+), 2 deletions(-)

New commits:
commit 25630d6bba6cb8a9656f517c3343eab179bb9370
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Fri Jun 12 14:38:02 2015 +0200

    Fix Linux RPATH of various external modules
    
    ...as discussed in 371cc81bd9ccbfbed25f810e70899c044280349e "external/liborcus:
    Fix Linux RPATH:"
    
    * When an external module produces multiple libraries (that we all install) that
      depend on each other, they need to contain $ORIGIN in RPATH (strictly
      speaking, those that do not depend on any other libraries from the module
      would not need that, but it is harmless and easier to do that way).
    
    * When an external module's libraries depend on other external modules'
      libraries, and (at least some of) those other external modules are not
      configuread as --with-system-*, they need to contain $ORIGIN in RPATH (again,
      for simplicity, some libraries may get that even if they would not strictly
      need it).
    
    * Try to outsmart the external modules' libtool instances to not add (ultimately
      bogus) paths to RPATH for dependencies on libraries from external modules
      (either from the same module, or from anohter module not configured as
      --with-system-*).  The only time we do not outsmart libtool, and instead rely
      on it (hopefully?) doing the right thing is when a given external modules'
      libraries depend on libraries from excatly one other external module, and the
      latter is configured as --with-system-*.
    
    * That outsmarting means that if an external library depends both on external
      libraries provided by modules not configured as --with-system-* (so RPATH
      contains $ORIGIN, and the outsmarting is not suppressed) and on external
      libraries provided by modules configured as --with-system-*:  Then if the
      latter are in unusual locations on the system that would require an RPATH
      entry (which might be provided via the corresponding "pkg-config --libs", say,
      and presumably would be honoured by libtool if we did not outsmart it), then
      those paths are now erroneously missing from RPATH.
    
    * That outsmarting also causes linking of some utility applications in module
      redland to fail, but those are ultimately unused, so cut them off by patching
      their respective sub-directory Makefile.in.
    
    (cherry picked from commit 1d028d4783da69c5c0e6e0b59e0f8ac55eb9d2b1)
    
    Change-Id: Iec05b3568fbcf04987018322c328b769ae4f5dab
    Reviewed-on: https://gerrit.libreoffice.org/16506
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: David Tardon <dtardon at redhat.com>
    Tested-by: David Tardon <dtardon at redhat.com>

diff --git a/external/coinmp/ExternalProject_coinmp.mk b/external/coinmp/ExternalProject_coinmp.mk
index 8405248..d8bfaac 100644
--- a/external/coinmp/ExternalProject_coinmp.mk
+++ b/external/coinmp/ExternalProject_coinmp.mk
@@ -31,6 +31,9 @@ $(call gb_ExternalProject_get_state_target,coinmp,build) :
 			$(if $(DISABLE_DYNLOADING),--disable-shared) \
 			$(if $(filter MACOSX,$(OS)),--prefix=/@.__________________________________________________OOO) \
 			--enable-dependency-linking F77=unavailable \
+			$(if $(filter LINUX,$(OS)), \
+				'LDFLAGS=-Wl$(COMMA)-z$(COMMA)origin \
+					-Wl$(COMMA)-rpath$(COMMA)\$$$$ORIGIN') \
 		&& $(MAKE) \
 		$(if $(filter MACOSX,$(OS)),&& $(PERL) \
 			$(SRCDIR)/solenv/bin/macosx-change-install-names.pl shl OOO \
diff --git a/external/coinmp/UnpackedTarball_coinmp.mk b/external/coinmp/UnpackedTarball_coinmp.mk
index 635deff..8963586 100644
--- a/external/coinmp/UnpackedTarball_coinmp.mk
+++ b/external/coinmp/UnpackedTarball_coinmp.mk
@@ -15,6 +15,8 @@ $(eval $(call gb_UnpackedTarball_fix_end_of_line,coinmp,\
 	CoinMP/MSVisualStudio/v9/CoinMP.sln \
 ))
 
+$(eval $(call gb_UnpackedTarball_set_patchlevel,coinmp,0))
+
 $(eval $(call gb_UnpackedTarball_add_patches,coinmp,\
 	external/coinmp/android.build.patch.1 \
 	external/coinmp/no-binaries.patch.1 \
@@ -26,6 +28,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,coinmp,\
 	) \
 	$(if $(filter MACOSX,$(OS)),external/coinmp/macosx.build.patch.1) \
 	external/coinmp/werror-format-pedantic.patch.0 \
+	external/coinmp/rpath.patch \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/coinmp/rpath.patch b/external/coinmp/rpath.patch
new file mode 100644
index 0000000..b60bd18
--- /dev/null
+++ b/external/coinmp/rpath.patch
@@ -0,0 +1,50 @@
+--- Cbc/configure
++++ Cbc/configure
+@@ -12484,6 +12484,7 @@
+ 	output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
+ 	;;
+     esac
++hardcode_libdir_flag_spec_CXX=
+     ;;
+   lynxos*)
+     # FIXME: insert proper C++ library support
+--- Cgl/configure
++++ Cgl/configure
+@@ -12455,6 +12455,7 @@
+ 	output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
+ 	;;
+     esac
++hardcode_libdir_flag_spec_CXX=
+     ;;
+   lynxos*)
+     # FIXME: insert proper C++ library support
+--- Clp/configure
++++ Clp/configure
+@@ -12482,6 +12482,7 @@
+ 	output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
+ 	;;
+     esac
++hardcode_libdir_flag_spec_CXX=
+     ;;
+   lynxos*)
+     # FIXME: insert proper C++ library support
+--- CoinMP/configure
++++ CoinMP/configure
+@@ -12424,6 +12424,7 @@
+ 	output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
+ 	;;
+     esac
++hardcode_libdir_flag_spec_CXX=
+     ;;
+   lynxos*)
+     # FIXME: insert proper C++ library support
+--- Osi/configure
++++ Osi/configure
+@@ -12453,6 +12453,7 @@
+ 	output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
+ 	;;
+     esac
++hardcode_libdir_flag_spec_CXX=
+     ;;
+   lynxos*)
+     # FIXME: insert proper C++ library support
diff --git a/external/libetonyek/ExternalProject_libetonyek.mk b/external/libetonyek/ExternalProject_libetonyek.mk
index acfc76d..6d847fa 100644
--- a/external/libetonyek/ExternalProject_libetonyek.mk
+++ b/external/libetonyek/ExternalProject_libetonyek.mk
@@ -37,6 +37,9 @@ $(call gb_ExternalProject_get_state_target,libetonyek,build) :
 			--without-tools \
 			$(if $(filter WNT,$(OS_FOR_BUILD)),MKDIR_P="$(shell cygpath -m /usr/bin/mkdir) -p") \
 			$(if $(VERBOSE)$(verbose),--disable-silent-rules,--enable-silent-rules) \
+			$(if $(filter LINUX,$(OS)), \
+				'LDFLAGS=-Wl$(COMMA)-z$(COMMA)origin \
+					-Wl$(COMMA)-rpath$(COMMA)\$$$$ORIGIN') \
 			BOOST_CFLAGS="$(if $(SYSTEM_BOOST),$(BOOST_CPPFLAGS),-I$(call gb_UnpackedTarball_get_dir,boost))" \
 			XML_CFLAGS="$(LIBXML_CFLAGS)" \
 			XML_LIBS="$(LIBXML_LIBS)" \
diff --git a/external/libetonyek/UnpackedTarball_libetonyek.mk b/external/libetonyek/UnpackedTarball_libetonyek.mk
index 24167e5..327852a 100644
--- a/external/libetonyek/UnpackedTarball_libetonyek.mk
+++ b/external/libetonyek/UnpackedTarball_libetonyek.mk
@@ -20,6 +20,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,libetonyek,\
 	external/libetonyek/ubsan.patch \
 	external/libetonyek/0001-add-missing-breaks.patch.1 \
 	external/libetonyek/0002-remove-surplus-breaks.patch.1 \
+	external/libetonyek/rpath.patch \
 ))
 
 ifeq ($(COM_GCC_IS_CLANG),TRUE)
diff --git a/external/libetonyek/rpath.patch b/external/libetonyek/rpath.patch
new file mode 100644
index 0000000..3a62805
--- /dev/null
+++ b/external/libetonyek/rpath.patch
@@ -0,0 +1,10 @@
+--- configure
++++ configure
+@@ -14451,6 +14451,7 @@
+ 	    esac
+ 	    ;;
+ 	esac
++hardcode_libdir_flag_spec_CXX=
+ 	;;
+ 
+       lynxos*)
diff --git a/external/libmwaw/ExternalProject_libmwaw.mk b/external/libmwaw/ExternalProject_libmwaw.mk
index 75c9260..d1f05d3 100644
--- a/external/libmwaw/ExternalProject_libmwaw.mk
+++ b/external/libmwaw/ExternalProject_libmwaw.mk
@@ -39,6 +39,9 @@ $(call gb_ExternalProject_get_state_target,libmwaw,build) :
 			CXXFLAGS="$(if $(SYSTEM_BOOST),$(BOOST_CPPFLAGS),\
 				$(if $(COM_GCC_IS_CLANG),-Qunused-arguments) \
 				-I$(call gb_UnpackedTarball_get_dir,boost))" \
+			$(if $(filter LINUX,$(OS)),$(if $(SYSTEM_REVENGE),, \
+				'LDFLAGS=-Wl$(COMMA)-z$(COMMA)origin \
+					-Wl$(COMMA)-rpath$(COMMA)\$$$$ORIGIN')) \
 			$(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
 			$(if $(filter MACOSX,$(OS)),--prefix=/@.__________________________________________________OOO) \
 		&& (cd $(EXTERNAL_WORKDIR)/src/lib && \
diff --git a/external/libmwaw/UnpackedTarball_libmwaw.mk b/external/libmwaw/UnpackedTarball_libmwaw.mk
index b18f32a..7aeb99c 100644
--- a/external/libmwaw/UnpackedTarball_libmwaw.mk
+++ b/external/libmwaw/UnpackedTarball_libmwaw.mk
@@ -11,7 +11,7 @@ $(eval $(call gb_UnpackedTarball_UnpackedTarball,libmwaw))
 
 $(eval $(call gb_UnpackedTarball_set_tarball,libmwaw,$(MWAW_TARBALL)))
 
-$(eval $(call gb_UnpackedTarball_set_patchlevel,libmwaw,1))
+$(eval $(call gb_UnpackedTarball_set_patchlevel,libmwaw,0))
 
 ifeq ($(COM_GCC_IS_CLANG),TRUE)
 ifneq ($(filter -fsanitize=%,$(CC)),)
@@ -21,4 +21,10 @@ $(eval $(call gb_UnpackedTarball_add_patches,libmwaw, \
 endif
 endif
 
+ifeq ($(SYSTEM_REVENGE),)
+$(eval $(call gb_UnpackedTarball_add_patches,libmwaw, \
+    external/libmwaw/rpath.patch \
+))
+endif
+
 # vim: set noet sw=4 ts=4:
diff --git a/external/libmwaw/rpath.patch b/external/libmwaw/rpath.patch
new file mode 100644
index 0000000..a73d8ae
--- /dev/null
+++ b/external/libmwaw/rpath.patch
@@ -0,0 +1,10 @@
+--- configure
++++ configure
+@@ -15353,6 +15353,7 @@
+ 	    esac
+ 	    ;;
+ 	esac
++hardcode_libdir_flag_spec_CXX=
+ 	;;
+ 
+       lynxos*)
diff --git a/external/libodfgen/ExternalProject_libodfgen.mk b/external/libodfgen/ExternalProject_libodfgen.mk
index 066ea86..2ad5a15 100644
--- a/external/libodfgen/ExternalProject_libodfgen.mk
+++ b/external/libodfgen/ExternalProject_libodfgen.mk
@@ -36,6 +36,9 @@ $(call gb_ExternalProject_get_state_target,libodfgen,build) :
 			--without-docs \
 			$(if $(VERBOSE)$(verbose),--disable-silent-rules,--enable-silent-rules) \
 			CXXFLAGS="$(if $(SYSTEM_BOOST),$(BOOST_CPPFLAGS),-I$(call gb_UnpackedTarball_get_dir,boost)) $(if $(SYSTEM_REVENGE),,$(if $(filter-out MSC,$(COM)),-DLIBREVENGE_VISIBILITY))" \
+			$(if $(filter LINUX,$(OS)),$(if $(SYSTEM_REVENGE),, \
+				'LDFLAGS=-Wl$(COMMA)-z$(COMMA)origin \
+					-Wl$(COMMA)-rpath$(COMMA)\$$$$ORIGIN')) \
 			$(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
 			$(if $(filter MACOSX,$(OS)),--prefix=/@.__________________________________________________OOO) \
 		&& $(MAKE) \
diff --git a/external/libodfgen/UnpackedTarball_libodfgen.mk b/external/libodfgen/UnpackedTarball_libodfgen.mk
index 85a14b3..32c8b36 100644
--- a/external/libodfgen/UnpackedTarball_libodfgen.mk
+++ b/external/libodfgen/UnpackedTarball_libodfgen.mk
@@ -21,4 +21,10 @@ $(eval $(call gb_UnpackedTarball_add_patches,libodfgen, \
 endif
 endif
 
+ifeq ($(SYSTEM_REVENGE),)
+$(eval $(call gb_UnpackedTarball_add_patches,libodfgen, \
+    external/libodfgen/rpath.patch \
+))
+endif
+
 # vim: set noet sw=4 ts=4:
diff --git a/external/libodfgen/rpath.patch b/external/libodfgen/rpath.patch
new file mode 100644
index 0000000..698cf5d
--- /dev/null
+++ b/external/libodfgen/rpath.patch
@@ -0,0 +1,10 @@
+--- configure
++++ configure
+@@ -13940,6 +13940,7 @@
+ 	    esac
+ 	    ;;
+ 	esac
++hardcode_libdir_flag_spec_CXX=
+ 	;;
+ 
+       lynxos*)
diff --git a/external/libwpd/ExternalProject_libwpd.mk b/external/libwpd/ExternalProject_libwpd.mk
index 69c4cc5..286e502 100644
--- a/external/libwpd/ExternalProject_libwpd.mk
+++ b/external/libwpd/ExternalProject_libwpd.mk
@@ -35,6 +35,9 @@ $(call gb_ExternalProject_get_state_target,libwpd,build) :
 				--prefix=/@.__________________________________________________OOO) \
 			$(if $(VERBOSE)$(verbose),--disable-silent-rules,--enable-silent-rules) \
 			$(if $(filter TRUE,$(DISABLE_DYNLOADING)),CFLAGS="$(CFLAGS) $(gb_VISIBILITY_FLAGS) $(gb_COMPILEROPTFLAGS)" CXXFLAGS="$(CXXFLAGS) $(gb_VISIBILITY_FLAGS) $(gb_VISIBILITY_FLAGS_CXX) $(gb_COMPILEROPTFLAGS)") \
+			$(if $(filter LINUX,$(OS)),$(if $(SYSTEM_REVENGE),, \
+				'LDFLAGS=-Wl$(COMMA)-z$(COMMA)origin \
+					-Wl$(COMMA)-rpath$(COMMA)\$$$$ORIGIN')) \
 			$(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
 		&& $(MAKE) \
 		$(if $(filter MACOSX,$(OS)),\
diff --git a/external/libwpd/UnpackedTarball_libwpd.mk b/external/libwpd/UnpackedTarball_libwpd.mk
index e8abb60..9610dfb 100644
--- a/external/libwpd/UnpackedTarball_libwpd.mk
+++ b/external/libwpd/UnpackedTarball_libwpd.mk
@@ -11,8 +11,11 @@ $(eval $(call gb_UnpackedTarball_UnpackedTarball,libwpd))
 
 $(eval $(call gb_UnpackedTarball_set_tarball,libwpd,$(WPD_TARBALL)))
 
+$(eval $(call gb_UnpackedTarball_set_patchlevel,libwpd,0))
+
 $(eval $(call gb_UnpackedTarball_add_patches,libwpd,\
 	external/libwpd/libwpd-vs2013.patch.1 \
+	$(if $(SYSTEM_REVENGE),,external/libwpd/rpath.patch) \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/libwpd/rpath.patch b/external/libwpd/rpath.patch
new file mode 100644
index 0000000..fb3deaa
--- /dev/null
+++ b/external/libwpd/rpath.patch
@@ -0,0 +1,10 @@
+--- configure
++++ configure
+@@ -13850,6 +13850,7 @@
+ 	    esac
+ 	    ;;
+ 	esac
++hardcode_libdir_flag_spec_CXX=
+ 	;;
+ 
+       lynxos*)
diff --git a/external/libwpg/ExternalProject_libwpg.mk b/external/libwpg/ExternalProject_libwpg.mk
index 22ed09a..e65e2ac 100644
--- a/external/libwpg/ExternalProject_libwpg.mk
+++ b/external/libwpg/ExternalProject_libwpg.mk
@@ -35,6 +35,9 @@ $(call gb_ExternalProject_get_state_target,libwpg,build) :
 			$(if $(filter MACOSX,$(OS)),--prefix=/@.__________________________________________________OOO) \
 			$(if $(VERBOSE)$(verbose),--disable-silent-rules,--enable-silent-rules) \
 			$(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
+			$(if $(filter LINUX,$(OS)), \
+				'LDFLAGS=-Wl$(COMMA)-z$(COMMA)origin \
+					-Wl$(COMMA)-rpath$(COMMA)\$$$$ORIGIN') \
 		&& $(MAKE) \
 		$(if $(filter MACOSX,$(OS)),\
 			&& $(PERL) $(SRCDIR)/solenv/bin/macosx-change-install-names.pl shl OOO \
diff --git a/external/libwpg/UnpackedTarball_libwpg.mk b/external/libwpg/UnpackedTarball_libwpg.mk
index 03be206..d0b1e99 100644
--- a/external/libwpg/UnpackedTarball_libwpg.mk
+++ b/external/libwpg/UnpackedTarball_libwpg.mk
@@ -11,4 +11,10 @@ $(eval $(call gb_UnpackedTarball_UnpackedTarball,libwpg))
 
 $(eval $(call gb_UnpackedTarball_set_tarball,libwpg,$(WPG_TARBALL)))
 
+$(eval $(call gb_UnpackedTarball_set_patchlevel,libwpg,0))
+
+$(eval $(call gb_UnpackedTarball_add_patches,libwpg, \
+    external/libwpg/rpath.patch \
+))
+
 # vim: set noet sw=4 ts=4:
diff --git a/external/libwpg/rpath.patch b/external/libwpg/rpath.patch
new file mode 100644
index 0000000..5a8f561
--- /dev/null
+++ b/external/libwpg/rpath.patch
@@ -0,0 +1,10 @@
+--- configure
++++ configure
+@@ -13858,6 +13858,7 @@
+ 	    esac
+ 	    ;;
+ 	esac
++hardcode_libdir_flag_spec_CXX=
+ 	;;
+ 
+       lynxos*)
diff --git a/external/libwps/ExternalProject_libwps.mk b/external/libwps/ExternalProject_libwps.mk
index 42cf8a4..10b39b3 100644
--- a/external/libwps/ExternalProject_libwps.mk
+++ b/external/libwps/ExternalProject_libwps.mk
@@ -35,7 +35,10 @@ $(call gb_ExternalProject_get_state_target,libwps,build) :
 			--disable-debug \
 			--disable-werror \
 			$(if $(VERBOSE)$(verbose),--disable-silent-rules,--enable-silent-rules) \
-			CXXFLAGS="$(if $(SYSTEM_BOOST),$(BOOST_CPPFLAGS),-I$(call gb_UnpackedTarball_get_dir,boost))" \
+			CXXFLAGS="$(if $(SYSTEM_BOOST),$(BOOST_CPPFLAGS),-I$(call gb_UnpackedTarball_get_dir,boost)) $(gb_VISIBILITY_FLAGS) $(gb_VISIBILITY_FLAGS_CXX)" \
+			$(if $(filter LINUX,$(OS)),$(if $(SYSTEM_REVENGE),, \
+				'LDFLAGS=-Wl$(COMMA)-z$(COMMA)origin \
+					-Wl$(COMMA)-rpath$(COMMA)\$$$$ORIGIN')) \
 			$(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
 			$(if $(filter MACOSX,$(OS)),--prefix=/@.__________________________________________________OOO) \
 		&& $(MAKE) \
diff --git a/external/libwps/UnpackedTarball_libwps.mk b/external/libwps/UnpackedTarball_libwps.mk
index 77662a7..77f1265 100644
--- a/external/libwps/UnpackedTarball_libwps.mk
+++ b/external/libwps/UnpackedTarball_libwps.mk
@@ -16,6 +16,7 @@ $(eval $(call gb_UnpackedTarball_set_patchlevel,libwps,1))
 $(eval $(call gb_UnpackedTarball_add_patches,libwps,\
 	external/libwps/0001-QuattroPro-parser-correct-a-mistake-when-reading-neg.patch \
 	external/libwps/0001-error-C2065-M_PI-undeclared-identifier.patch \
+	$(if $(SYSTEM_REVENGE),,external/libwps/rpath.patch.0) \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/libwps/rpath.patch.0 b/external/libwps/rpath.patch.0
new file mode 100644
index 0000000..600cc3d
--- /dev/null
+++ b/external/libwps/rpath.patch.0
@@ -0,0 +1,10 @@
+--- configure
++++ configure
+@@ -14306,6 +14306,7 @@
+ 	    esac
+ 	    ;;
+ 	esac
++hardcode_libdir_flag_spec_CXX=
+ 	;;
+ 
+       lynxos*)
diff --git a/external/libxslt/UnpackedTarball_xslt.mk b/external/libxslt/UnpackedTarball_xslt.mk
index 5ed0860..b81cd1d 100644
--- a/external/libxslt/UnpackedTarball_xslt.mk
+++ b/external/libxslt/UnpackedTarball_xslt.mk
@@ -20,6 +20,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,xslt,\
 	external/libxslt/libxslt-1.1.26-memdump.patch \
 	$(if $(filter ANDROID,$(OS)),external/libxslt/libxslt-android.patch) \
 	external/libxslt/libxslt-config-guess.patch.0 \
+	external/libxslt/rpath.patch.0 \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/libxslt/rpath.patch.0 b/external/libxslt/rpath.patch.0
new file mode 100644
index 0000000..78c4859
--- /dev/null
+++ b/external/libxslt/rpath.patch.0
@@ -0,0 +1,10 @@
+--- configure
++++ configure
+@@ -10196,6 +10196,7 @@
+       else
+         ld_shlibs=no
+       fi
++hardcode_libdir_flag_spec=
+       ;;
+ 
+     netbsd*)
diff --git a/external/redland/UnpackedTarball_raptor.mk b/external/redland/UnpackedTarball_raptor.mk
index f1949d1..752b41c 100644
--- a/external/redland/UnpackedTarball_raptor.mk
+++ b/external/redland/UnpackedTarball_raptor.mk
@@ -23,6 +23,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,raptor,\
 	$(if $(filter-out WNT,$(OS)),external/redland/raptor/raptor-bundled-soname.patch.1) \
 	$(if $(filter ANDROID,$(OS)),external/redland/raptor/raptor-android.patch.1) \
 	external/redland/raptor/ubsan.patch \
+	$(if $(SYSTEM_LIBXML),,external/redland/raptor/rpath.patch) \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/redland/UnpackedTarball_rasqal.mk b/external/redland/UnpackedTarball_rasqal.mk
index d49f47d..92571dd 100644
--- a/external/redland/UnpackedTarball_rasqal.mk
+++ b/external/redland/UnpackedTarball_rasqal.mk
@@ -14,6 +14,8 @@ $(eval $(call gb_UnpackedTarball_set_tarball,rasqal,$(RASQAL_TARBALL),,redland))
 # configure generated files for MSVC
 $(eval $(call gb_UnpackedTarball_add_file,rasqal,src/rasqal.h,external/redland/rasqal/rasqal.h))
 
+$(eval $(call gb_UnpackedTarball_set_patchlevel,rasqal,0))
+
 $(eval $(call gb_UnpackedTarball_add_patches,rasqal,\
 	external/redland/rasqal/rasqal-pkgconfig.patch.1 \
 	external/redland/rasqal/rasqal-freebsd.patch.1 \
@@ -23,6 +25,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,rasqal,\
 	$(if $(filter ANDROID,$(OS)),external/redland/rasqal/rasqal-android.patch.1) \
 	$(if $(filter WNTGCC,$(OS)$(COM)),external/redland/rasqal/rasqal-mingw.patch.1) \
 	$(if $(CROSS_COMPILING),external/redland/rasqal/rasqal-xcompile.patch.1) \
+	external/redland/rasqal/rpath.patch \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/redland/UnpackedTarball_redland.mk b/external/redland/UnpackedTarball_redland.mk
index 440be1f..d28e0dd 100644
--- a/external/redland/UnpackedTarball_redland.mk
+++ b/external/redland/UnpackedTarball_redland.mk
@@ -14,6 +14,8 @@ $(eval $(call gb_UnpackedTarball_set_tarball,redland,$(REDLAND_TARBALL),,redland
 # configure generated files for MSVC
 $(eval $(call gb_UnpackedTarball_add_file,redland,src/librdf.h,external/redland/redland/librdf.h))
 
+$(eval $(call gb_UnpackedTarball_set_patchlevel,redland,0))
+
 # redland-format.patch.0 sent upstream as
 #  <https://github.com/dajobe/librdf/pull/6>
 $(eval $(call gb_UnpackedTarball_add_patches,redland,\
@@ -26,6 +28,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,redland,\
 	$(if $(filter WNTGCC,$(OS)$(COM)),external/redland/redland/redland-mingw.patch.1) \
 	$(if $(CROSS_COMPILING),external/redland/redland/redland-xcompile.patch.1) \
 	external/redland/redland/redland-format.patch.0 \
+	external/redland/redland/rpath.patch \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/redland/raptor/rpath.patch b/external/redland/raptor/rpath.patch
new file mode 100644
index 0000000..7863f61
--- /dev/null
+++ b/external/redland/raptor/rpath.patch
@@ -0,0 +1,21 @@
+--- configure
++++ configure
+@@ -9892,6 +9892,7 @@
+       else
+         ld_shlibs=no
+       fi
++hardcode_libdir_flag_spec=
+       ;;
+ 
+     netbsd* | netbsdelf*-gnu)
+--- utils/Makefile.in
++++ utils/Makefile.in
+@@ -343,7 +343,7 @@
+ rapper_LDADD = $(top_builddir)/src/libraptor2.la
+ rdfdiff_SOURCES = rdfdiff.c $(am__append_2)
+ rdfdiff_LDADD = $(top_builddir)/src/libraptor2.la
+-all: all-am
++all:
+ 
+ .SUFFIXES:
+ .SUFFIXES: .c .lo .o .obj
diff --git a/external/redland/rasqal/rpath.patch b/external/redland/rasqal/rpath.patch
new file mode 100644
index 0000000..c0eed77
--- /dev/null
+++ b/external/redland/rasqal/rpath.patch
@@ -0,0 +1,21 @@
+--- configure
++++ configure
+@@ -9843,6 +9843,7 @@
+       else
+         ld_shlibs=no
+       fi
++hardcode_libdir_flag_spec=
+       ;;
+ 
+     netbsd* | netbsdelf*-gnu)
+--- utils/Makefile.in
++++ utils/Makefile.in
+@@ -373,7 +373,7 @@
+ $(man_MANS) \
+ roqet.html
+ 
+-all: all-am
++all:
+ 
+ .SUFFIXES:
+ .SUFFIXES: .c .lo .o .obj
diff --git a/external/redland/redland/rpath.patch b/external/redland/redland/rpath.patch
new file mode 100644
index 0000000..ec8c765
--- /dev/null
+++ b/external/redland/redland/rpath.patch
@@ -0,0 +1,10 @@
+--- configure
++++ configure
+@@ -10308,6 +10308,7 @@
+       else
+         ld_shlibs=no
+       fi
++hardcode_libdir_flag_spec=
+       ;;
+ 
+     netbsd* | netbsdelf*-gnu)


More information about the Libreoffice-commits mailing list