summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/binutils
diff options
context:
space:
mode:
authorScott Garman <scott.a.garman@intel.com>2011-01-18 12:02:23 -0800
committerSaul Wold <sgw@linux.intel.com>2011-01-21 01:36:16 -0800
commit4d387c3c0e8807013af61c964536c68f8e976762 (patch)
tree64e3b4fd08959d422e4633ab560feabcc116dbca /meta/recipes-devtools/binutils
parent68a9d3dd5a40dd1a3d664e4a99cc9da18686f2e1 (diff)
downloadpoky-4d387c3c0e8807013af61c964536c68f8e976762.tar.gz
binutils: fix library RPATHs
This integrates the RPATH fixes we recently applied to libtool. Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Diffstat (limited to 'meta/recipes-devtools/binutils')
-rw-r--r--meta/recipes-devtools/binutils/binutils-2.21/libtool-rpath-fix.patch36
-rw-r--r--meta/recipes-devtools/binutils/binutils_2.21.bb1
2 files changed, 37 insertions, 0 deletions
diff --git a/meta/recipes-devtools/binutils/binutils-2.21/libtool-rpath-fix.patch b/meta/recipes-devtools/binutils/binutils-2.21/libtool-rpath-fix.patch
new file mode 100644
index 0000000000..a0058c1a4f
--- /dev/null
+++ b/meta/recipes-devtools/binutils/binutils-2.21/libtool-rpath-fix.patch
@@ -0,0 +1,36 @@
1Enabling sysroot support in libtool exposed a bug where the final
2library had an RPATH encoded into it which still pointed to the
3sysroot. This works around the issue until it gets sorted out
4upstream.
5
6Fix suggested by Richard Purdie <richard.purdie@linuxfoundation.org>
7Signed-off-by: Scott Garman <scott.a.garman@intel.com>
8
9diff -urN binutils-2.21.orig//ltmain.sh binutils-2.21/ltmain.sh
10--- binutils-2.21.orig//ltmain.sh 2011-01-18 11:50:40.821710085 -0800
11+++ binutils-2.21/ltmain.sh 2011-01-18 11:51:38.774952785 -0800
12@@ -8035,9 +8035,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@@ -8770,6 +8772,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"
diff --git a/meta/recipes-devtools/binutils/binutils_2.21.bb b/meta/recipes-devtools/binutils/binutils_2.21.bb
index 1d6a3c4fad..270c720c39 100644
--- a/meta/recipes-devtools/binutils/binutils_2.21.bb
+++ b/meta/recipes-devtools/binutils/binutils_2.21.bb
@@ -28,6 +28,7 @@ SRC_URI = "\
28 file://binutils-2.19.1-ld-sysroot.patch \ 28 file://binutils-2.19.1-ld-sysroot.patch \
29 file://libiberty_path_fix.patch \ 29 file://libiberty_path_fix.patch \
30 file://binutils-poison.patch \ 30 file://binutils-poison.patch \
31 file://libtool-rpath-fix.patch \
31 " 32 "
32 33
33SRC_URI[md5sum] = "c84c5acc9d266f1a7044b51c85a823f5" 34SRC_URI[md5sum] = "c84c5acc9d266f1a7044b51c85a823f5"