1 From: Richard Purdie <richard.purdie@linuxfoundation.org>
2 Subject: [PATCH 05/12] ltmain.in: Don't encode RATHS which match default linker paths
4 We don't want to add RPATHS which match default linker search paths, they're
5 a waste of space. This patch filters libtools list of paths to encoode and
6 removes the ones we don't need.
8 Libtool may be passed link paths of the form "/usr/lib/../lib" so normalize
9 the paths before comparision.
11 Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
13 Upstream-Status: Submitted [https://lists.gnu.org/archive/html/libtool-patches/2021-10/msg00013.html]
15 diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
16 index 40cb94a..2fa055e 100644
17 --- a/build-aux/ltmain.in
18 +++ b/build-aux/ltmain.in
19 @@ -7700,8 +7700,16 @@ EOF
23 - eval flag=\"$hardcode_libdir_flag_spec\"
24 - func_append dep_rpath " $flag"
25 + # We only want to hardcode in an rpath if it isn't in the
26 + # default dlsearch path.
27 + func_normal_abspath "$libdir"
28 + libdir_norm=$func_normal_abspath_result
29 + case " $sys_lib_dlsearch_path " in
30 + *" $libdir_norm "*) ;;
31 + *) eval flag=\"$hardcode_libdir_flag_spec\"
32 + func_append dep_rpath " $flag"
36 elif test -n "$runpath_var"; then
37 case "$perm_rpath " in
38 @@ -8434,8 +8442,16 @@ EOF
42 - eval flag=\"$hardcode_libdir_flag_spec\"
43 - func_append rpath " $flag"
44 + # We only want to hardcode in an rpath if it isn't in the
45 + # default dlsearch path.
46 + func_normal_abspath "$libdir"
47 + libdir_norm=$func_normal_abspath_result
48 + case " $sys_lib_dlsearch_path " in
49 + *" $libdir_norm "*) ;;
50 + *) eval flag=\"$hardcode_libdir_flag_spec\"
55 elif test -n "$runpath_var"; then
56 case "$perm_rpath " in
57 @@ -8489,8 +8505,14 @@ EOF
61 - eval flag=\"$hardcode_libdir_flag_spec\"
62 - func_append rpath " $flag"
63 + # We only want to hardcode in an rpath if it isn't in the
64 + # default dlsearch path.
65 + case " $sys_lib_dlsearch_path " in
67 + *) eval flag=\"$hardcode_libdir_flag_spec\"
68 + func_append rpath " $flag"
72 elif test -n "$runpath_var"; then
73 case "$finalize_perm_rpath " in