]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/blob
8b6352b01b4bf908e1780835deef44cc9ce62ea4
[thirdparty/openembedded/openembedded-core-contrib.git] /
1 From: Richard Purdie <richard.purdie@linuxfoundation.org>
2 Subject: [PATCH 05/12] ltmain.in: Don't encode RATHS which match default linker paths
3
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.
7
8 Libtool may be passed link paths of the form "/usr/lib/../lib" so normalize
9 the paths before comparision.
10
11 Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12
13 Upstream-Status: Submitted [https://lists.gnu.org/archive/html/libtool-patches/2021-10/msg00013.html]
14
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
20 esac
21 fi
22 else
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"
33 + ;;
34 + esac
35 fi
36 elif test -n "$runpath_var"; then
37 case "$perm_rpath " in
38 @@ -8434,8 +8442,16 @@ EOF
39 esac
40 fi
41 else
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\"
51 + rpath+=" $flag"
52 + ;;
53 + esac
54 fi
55 elif test -n "$runpath_var"; then
56 case "$perm_rpath " in
57 @@ -8489,8 +8505,14 @@ EOF
58 esac
59 fi
60 else
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
66 + *" $libdir "*) ;;
67 + *) eval flag=\"$hardcode_libdir_flag_spec\"
68 + func_append rpath " $flag"
69 + ;;
70 + esac
71 fi
72 elif test -n "$runpath_var"; then
73 case "$finalize_perm_rpath " in
74 --
75 2.25.1
76