libtool: fix library RPATHs
Enabling sysroot support exposed a bug where the final library had an RPATH encoded into it which still pointed to the sysroot. This works around the issue until it gets sorted out upstream. Fix suggested by Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Scott Garman <scott.a.garman@intel.com>
This commit is contained in:
parent
62dc23953d
commit
ded899b580
|
@ -13,7 +13,8 @@ SRC_URI = "${GNU_MIRROR}/libtool/libtool-${PV}.tar.gz \
|
|||
file://prefix-manpage-fix.patch \
|
||||
file://rename-with-sysroot.patch \
|
||||
file://resolve-sysroot.patch \
|
||||
file://use-sysroot-in-libpath.patch"
|
||||
file://use-sysroot-in-libpath.patch \
|
||||
file://fix-final-rpath.patch"
|
||||
|
||||
do_compile_prepend () {
|
||||
# Sometimes this file doesn't get rebuilt, force the issue
|
||||
|
|
|
@ -0,0 +1,36 @@
|
|||
Enalbing sysroot support exposed a bug where the final library
|
||||
had an RPATH encoded into it which still pointed to the sysroot.
|
||||
This works around the issue until it gets sorted out upstream.
|
||||
|
||||
Fix suggested by Richard Purdie <richard.purdie@intel.com>
|
||||
Signed-off-by: Scott Garman <scott.a.garman@intel.com>
|
||||
|
||||
Index: libtool-2.4/libltdl/config/ltmain.m4sh
|
||||
===================================================================
|
||||
--- libtool-2.4.orig/libltdl/config/ltmain.m4sh 2011-01-13 14:10:14.580025108 +0000
|
||||
+++ libtool-2.4/libltdl/config/ltmain.m4sh 2011-01-13 15:10:18.540025113 +0000
|
||||
@@ -7246,9 +7246,11 @@
|
||||
test "$opt_mode" != relink && rpath="$compile_rpath$rpath"
|
||||
for libdir in $rpath; do
|
||||
if test -n "$hardcode_libdir_flag_spec"; then
|
||||
+ func_replace_sysroot "$libdir"
|
||||
+ libdir=$func_replace_sysroot_result
|
||||
+ func_stripname '=' '' "$libdir"
|
||||
+ libdir=$func_stripname_result
|
||||
if test -n "$hardcode_libdir_separator"; then
|
||||
- func_replace_sysroot "$libdir"
|
||||
- libdir=$func_replace_sysroot_result
|
||||
if test -z "$hardcode_libdirs"; then
|
||||
hardcode_libdirs="$libdir"
|
||||
else
|
||||
@@ -7981,6 +7983,10 @@
|
||||
hardcode_libdirs=
|
||||
for libdir in $compile_rpath $finalize_rpath; do
|
||||
if test -n "$hardcode_libdir_flag_spec"; then
|
||||
+ func_replace_sysroot "$libdir"
|
||||
+ libdir=$func_replace_sysroot_result
|
||||
+ func_stripname '=' '' "$libdir"
|
||||
+ libdir=$func_stripname_result
|
||||
if test -n "$hardcode_libdir_separator"; then
|
||||
if test -z "$hardcode_libdirs"; then
|
||||
hardcode_libdirs="$libdir"
|
Loading…
Reference in New Issue