summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/recipes-devtools/libtool/libtool.inc3
-rw-r--r--meta/recipes-devtools/libtool/libtool/fix-final-rpath.patch36
2 files changed, 38 insertions, 1 deletions
diff --git a/meta/recipes-devtools/libtool/libtool.inc b/meta/recipes-devtools/libtool/libtool.inc
index bccb7698b4..8701c820d2 100644
--- a/meta/recipes-devtools/libtool/libtool.inc
+++ b/meta/recipes-devtools/libtool/libtool.inc
@@ -13,7 +13,8 @@ SRC_URI = "${GNU_MIRROR}/libtool/libtool-${PV}.tar.gz \
13 file://prefix-manpage-fix.patch \ 13 file://prefix-manpage-fix.patch \
14 file://rename-with-sysroot.patch \ 14 file://rename-with-sysroot.patch \
15 file://resolve-sysroot.patch \ 15 file://resolve-sysroot.patch \
16 file://use-sysroot-in-libpath.patch" 16 file://use-sysroot-in-libpath.patch \
17 file://fix-final-rpath.patch"
17 18
18do_compile_prepend () { 19do_compile_prepend () {
19 # Sometimes this file doesn't get rebuilt, force the issue 20 # Sometimes this file doesn't get rebuilt, force the issue
diff --git a/meta/recipes-devtools/libtool/libtool/fix-final-rpath.patch b/meta/recipes-devtools/libtool/libtool/fix-final-rpath.patch
new file mode 100644
index 0000000000..402e2c6b51
--- /dev/null
+++ b/meta/recipes-devtools/libtool/libtool/fix-final-rpath.patch
@@ -0,0 +1,36 @@
1Enalbing sysroot support exposed a bug where the final library
2had an RPATH encoded into it which still pointed to the sysroot.
3This works around the issue until it gets sorted out upstream.
4
5Fix suggested by Richard Purdie <richard.purdie@intel.com>
6Signed-off-by: Scott Garman <scott.a.garman@intel.com>
7
8Index: libtool-2.4/libltdl/config/ltmain.m4sh
9===================================================================
10--- libtool-2.4.orig/libltdl/config/ltmain.m4sh 2011-01-13 14:10:14.580025108 +0000
11+++ libtool-2.4/libltdl/config/ltmain.m4sh 2011-01-13 15:10:18.540025113 +0000
12@@ -7246,9 +7246,11 @@
13 test "$opt_mode" != relink && rpath="$compile_rpath$rpath"
14 for libdir in $rpath; do
15 if test -n "$hardcode_libdir_flag_spec"; then
16+ func_replace_sysroot "$libdir"
17+ libdir=$func_replace_sysroot_result
18+ func_stripname '=' '' "$libdir"
19+ libdir=$func_stripname_result
20 if test -n "$hardcode_libdir_separator"; then
21- func_replace_sysroot "$libdir"
22- libdir=$func_replace_sysroot_result
23 if test -z "$hardcode_libdirs"; then
24 hardcode_libdirs="$libdir"
25 else
26@@ -7981,6 +7983,10 @@
27 hardcode_libdirs=
28 for libdir in $compile_rpath $finalize_rpath; do
29 if test -n "$hardcode_libdir_flag_spec"; then
30+ func_replace_sysroot "$libdir"
31+ libdir=$func_replace_sysroot_result
32+ func_stripname '=' '' "$libdir"
33+ libdir=$func_stripname_result
34 if test -n "$hardcode_libdir_separator"; then
35 if test -z "$hardcode_libdirs"; then
36 hardcode_libdirs="$libdir"