Andrew Geissler | 635e0e4 | 2020-08-21 15:58:33 -0500 | [diff] [blame^] | 1 | From f791a5d84475c02356f16679b7f4ee9c9c3408aa Mon Sep 17 00:00:00 2001 |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 2 | From: Khem Raj <raj.khem@gmail.com> |
| 3 | Date: Mon, 2 Mar 2015 01:42:38 +0000 |
Andrew Geissler | 635e0e4 | 2020-08-21 15:58:33 -0500 | [diff] [blame^] | 4 | Subject: [PATCH 14/17] Fix rpath in libtool when sysroot is enabled |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 5 | |
| 6 | Enabling sysroot support in libtool exposed a bug where the final |
| 7 | library had an RPATH encoded into it which still pointed to the |
| 8 | sysroot. This works around the issue until it gets sorted out |
| 9 | upstream. |
| 10 | |
| 11 | Fix suggested by Richard Purdie <richard.purdie@linuxfoundation.org> |
| 12 | |
| 13 | Upstream-Status: Inappropriate [embedded specific] |
| 14 | |
| 15 | Signed-off-by: Scott Garman <scott.a.garman@intel.com> |
| 16 | Signed-off-by: Khem Raj <raj.khem@gmail.com> |
| 17 | --- |
| 18 | ltmain.sh | 10 ++++++++-- |
| 19 | 1 file changed, 8 insertions(+), 2 deletions(-) |
| 20 | |
| 21 | diff --git a/ltmain.sh b/ltmain.sh |
Andrew Geissler | 635e0e4 | 2020-08-21 15:58:33 -0500 | [diff] [blame^] | 22 | index 70e856e0659..11ee684cccf 100644 |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 23 | --- a/ltmain.sh |
| 24 | +++ b/ltmain.sh |
| 25 | @@ -8035,9 +8035,11 @@ EOF |
| 26 | test "$opt_mode" != relink && rpath="$compile_rpath$rpath" |
| 27 | for libdir in $rpath; do |
| 28 | if test -n "$hardcode_libdir_flag_spec"; then |
| 29 | + func_replace_sysroot "$libdir" |
| 30 | + libdir=$func_replace_sysroot_result |
| 31 | + func_stripname '=' '' "$libdir" |
| 32 | + libdir=$func_stripname_result |
| 33 | if test -n "$hardcode_libdir_separator"; then |
| 34 | - func_replace_sysroot "$libdir" |
| 35 | - libdir=$func_replace_sysroot_result |
| 36 | if test -z "$hardcode_libdirs"; then |
| 37 | hardcode_libdirs="$libdir" |
| 38 | else |
| 39 | @@ -8770,6 +8772,10 @@ EOF |
| 40 | hardcode_libdirs= |
| 41 | for libdir in $compile_rpath $finalize_rpath; do |
| 42 | if test -n "$hardcode_libdir_flag_spec"; then |
| 43 | + func_replace_sysroot "$libdir" |
| 44 | + libdir=$func_replace_sysroot_result |
| 45 | + func_stripname '=' '' "$libdir" |
| 46 | + libdir=$func_stripname_result |
| 47 | if test -n "$hardcode_libdir_separator"; then |
| 48 | if test -z "$hardcode_libdirs"; then |
| 49 | hardcode_libdirs="$libdir" |
Andrew Geissler | 635e0e4 | 2020-08-21 15:58:33 -0500 | [diff] [blame^] | 50 | -- |
| 51 | 2.28.0 |
| 52 | |