diff options
author | Khem Raj <raj.khem@gmail.com> | 2012-06-20 08:18:36 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-06-21 13:03:04 +0100 |
commit | be9756ae12c7ea4629943bf59f30f0c8330a2056 (patch) | |
tree | c31909788aa147bb4f3ef41804a61b32f7a2a58b /meta/recipes-core/uclibc/uclibc-git/orign_path.patch | |
parent | d2270701924553b720001a8cf0c1c48921efe9c4 (diff) | |
download | poky-be9756ae12c7ea4629943bf59f30f0c8330a2056.tar.gz |
uclibc-git: Upgrade to latest tip of master
(From OE-Core rev: 3c516e1032c86156dc09ffa509977fe197470090)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core/uclibc/uclibc-git/orign_path.patch')
-rw-r--r-- | meta/recipes-core/uclibc/uclibc-git/orign_path.patch | 47 |
1 files changed, 24 insertions, 23 deletions
diff --git a/meta/recipes-core/uclibc/uclibc-git/orign_path.patch b/meta/recipes-core/uclibc/uclibc-git/orign_path.patch index c9c15a34b7..81bb8f8459 100644 --- a/meta/recipes-core/uclibc/uclibc-git/orign_path.patch +++ b/meta/recipes-core/uclibc/uclibc-git/orign_path.patch | |||
@@ -5,9 +5,9 @@ Upstream-Status: Pending | |||
5 | 5 | ||
6 | Index: git/ldso/ldso/dl-elf.c | 6 | Index: git/ldso/ldso/dl-elf.c |
7 | =================================================================== | 7 | =================================================================== |
8 | --- git.orig/ldso/ldso/dl-elf.c 2012-01-23 19:18:58.000000000 -0800 | 8 | --- git.orig/ldso/ldso/dl-elf.c 2012-06-19 18:29:08.629931662 -0700 |
9 | +++ git/ldso/ldso/dl-elf.c 2012-01-23 21:52:06.144646590 -0800 | 9 | +++ git/ldso/ldso/dl-elf.c 2012-06-19 21:21:14.798431393 -0700 |
10 | @@ -133,53 +133,60 @@ | 10 | @@ -133,56 +133,60 @@ |
11 | * in uClibc/ldso/util/ldd.c */ | 11 | * in uClibc/ldso/util/ldd.c */ |
12 | static struct elf_resolve * | 12 | static struct elf_resolve * |
13 | search_for_named_library(const char *name, unsigned rflags, const char *path_list, | 13 | search_for_named_library(const char *name, unsigned rflags, const char *path_list, |
@@ -16,9 +16,9 @@ Index: git/ldso/ldso/dl-elf.c | |||
16 | { | 16 | { |
17 | - char *path, *path_n, *mylibname; | 17 | - char *path, *path_n, *mylibname; |
18 | + char *mylibname; | 18 | + char *mylibname; |
19 | + const char *p, *pn; | ||
20 | struct elf_resolve *tpnt; | 19 | struct elf_resolve *tpnt; |
21 | - int done; | 20 | - int done; |
21 | + const char *p, *pn; | ||
22 | + int plen; | 22 | + int plen; |
23 | 23 | ||
24 | if (path_list==NULL) | 24 | if (path_list==NULL) |
@@ -82,24 +82,25 @@ Index: git/ldso/ldso/dl-elf.c | |||
82 | - _dl_strcpy(mylibname, "."); /* Assume current dir if empty path */ | 82 | - _dl_strcpy(mylibname, "."); /* Assume current dir if empty path */ |
83 | - _dl_strcat(mylibname, "/"); | 83 | - _dl_strcat(mylibname, "/"); |
84 | - _dl_strcat(mylibname, name); | 84 | - _dl_strcat(mylibname, name); |
85 | - if ((tpnt = _dl_load_elf_shared_library(rflags, rpnt, mylibname)) != NULL) | 85 | + _dl_strcat(mylibname, "/"); |
86 | - return tpnt; | 86 | + _dl_strcat(mylibname, name); |
87 | #ifdef __LDSO_SAFE_RUNPATH__ | ||
88 | - if (*mylibname == '/') | ||
89 | + if (*mylibname == '/') | ||
90 | #endif | ||
91 | - if ((tpnt = _dl_load_elf_shared_library(rflags, rpnt, mylibname)) != NULL) | ||
92 | - return tpnt; | ||
87 | - path_n = path+1; | 93 | - path_n = path+1; |
88 | - } | 94 | - } |
89 | - path++; | 95 | - path++; |
90 | - } while (!done); | 96 | - } while (!done); |
91 | + _dl_strcat(mylibname, "/"); | 97 | + if ((tpnt = _dl_load_elf_shared_library(rflags, rpnt, mylibname)) != NULL) |
92 | + _dl_strcat(mylibname, name); | ||
93 | + | ||
94 | + tpnt = _dl_load_elf_shared_library(rflags, rpnt, mylibname); | ||
95 | + if (tpnt != NULL) | ||
96 | + return tpnt; | 98 | + return tpnt; |
97 | + } | 99 | + } |
98 | + | ||
99 | return NULL; | 100 | return NULL; |
100 | } | 101 | } |
101 | 102 | ||
102 | @@ -231,8 +238,10 @@ | 103 | @@ -234,8 +238,10 @@ |
103 | if (pnt) { | 104 | if (pnt) { |
104 | pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB]; | 105 | pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB]; |
105 | _dl_if_debug_dprint("\tsearching RPATH='%s'\n", pnt); | 106 | _dl_if_debug_dprint("\tsearching RPATH='%s'\n", pnt); |
@@ -111,7 +112,7 @@ Index: git/ldso/ldso/dl-elf.c | |||
111 | } | 112 | } |
112 | #endif | 113 | #endif |
113 | 114 | ||
114 | @@ -240,7 +249,7 @@ | 115 | @@ -243,7 +249,7 @@ |
115 | /* Check in LD_{ELF_}LIBRARY_PATH, if specified and allowed */ | 116 | /* Check in LD_{ELF_}LIBRARY_PATH, if specified and allowed */ |
116 | if (_dl_library_path) { | 117 | if (_dl_library_path) { |
117 | _dl_if_debug_dprint("\tsearching LD_LIBRARY_PATH='%s'\n", _dl_library_path); | 118 | _dl_if_debug_dprint("\tsearching LD_LIBRARY_PATH='%s'\n", _dl_library_path); |
@@ -120,7 +121,7 @@ Index: git/ldso/ldso/dl-elf.c | |||
120 | { | 121 | { |
121 | return tpnt1; | 122 | return tpnt1; |
122 | } | 123 | } |
123 | @@ -254,7 +263,7 @@ | 124 | @@ -257,7 +263,7 @@ |
124 | if (pnt) { | 125 | if (pnt) { |
125 | pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB]; | 126 | pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB]; |
126 | _dl_if_debug_dprint("\tsearching RUNPATH='%s'\n", pnt); | 127 | _dl_if_debug_dprint("\tsearching RUNPATH='%s'\n", pnt); |
@@ -129,7 +130,7 @@ Index: git/ldso/ldso/dl-elf.c | |||
129 | return tpnt1; | 130 | return tpnt1; |
130 | } | 131 | } |
131 | #endif | 132 | #endif |
132 | @@ -288,7 +297,7 @@ | 133 | @@ -291,7 +297,7 @@ |
133 | /* Look for libraries wherever the shared library loader | 134 | /* Look for libraries wherever the shared library loader |
134 | * was installed */ | 135 | * was installed */ |
135 | _dl_if_debug_dprint("\tsearching ldso dir='%s'\n", _dl_ldsopath); | 136 | _dl_if_debug_dprint("\tsearching ldso dir='%s'\n", _dl_ldsopath); |
@@ -138,7 +139,7 @@ Index: git/ldso/ldso/dl-elf.c | |||
138 | if (tpnt1 != NULL) | 139 | if (tpnt1 != NULL) |
139 | return tpnt1; | 140 | return tpnt1; |
140 | #endif | 141 | #endif |
141 | @@ -301,7 +310,7 @@ | 142 | @@ -304,7 +310,7 @@ |
142 | #ifndef __LDSO_CACHE_SUPPORT__ | 143 | #ifndef __LDSO_CACHE_SUPPORT__ |
143 | ":" UCLIBC_RUNTIME_PREFIX "usr/X11R6/lib" | 144 | ":" UCLIBC_RUNTIME_PREFIX "usr/X11R6/lib" |
144 | #endif | 145 | #endif |
@@ -149,9 +150,9 @@ Index: git/ldso/ldso/dl-elf.c | |||
149 | 150 | ||
150 | Index: git/ldso/ldso/ldso.c | 151 | Index: git/ldso/ldso/ldso.c |
151 | =================================================================== | 152 | =================================================================== |
152 | --- git.orig/ldso/ldso/ldso.c 2012-01-23 19:18:58.000000000 -0800 | 153 | --- git.orig/ldso/ldso/ldso.c 2012-06-19 18:29:08.633931663 -0700 |
153 | +++ git/ldso/ldso/ldso.c 2012-01-23 21:34:11.152594621 -0800 | 154 | +++ git/ldso/ldso/ldso.c 2012-06-19 18:29:10.197931738 -0700 |
154 | @@ -407,6 +407,20 @@ | 155 | @@ -403,6 +403,20 @@ |
155 | return p - list; | 156 | return p - list; |
156 | } | 157 | } |
157 | 158 | ||
@@ -172,7 +173,7 @@ Index: git/ldso/ldso/ldso.c | |||
172 | void *_dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr, | 173 | void *_dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr, |
173 | ElfW(auxv_t) auxvt[AT_EGID + 1], char **envp, char **argv | 174 | ElfW(auxv_t) auxvt[AT_EGID + 1], char **envp, char **argv |
174 | DL_GET_READY_TO_RUN_EXTRA_PARMS) | 175 | DL_GET_READY_TO_RUN_EXTRA_PARMS) |
175 | @@ -458,9 +472,7 @@ | 176 | @@ -454,9 +468,7 @@ |
176 | * been fixed up by now. Still no function calls outside of this | 177 | * been fixed up by now. Still no function calls outside of this |
177 | * library, since the dynamic resolver is not yet ready. | 178 | * library, since the dynamic resolver is not yet ready. |
178 | */ | 179 | */ |
@@ -181,5 +182,5 @@ Index: git/ldso/ldso/ldso.c | |||
181 | - } | 182 | - } |
182 | + _dl_setup_progname(argv[0]); | 183 | + _dl_setup_progname(argv[0]); |
183 | 184 | ||
184 | #ifndef __LDSO_STANDALONE_SUPPORT__ | 185 | #ifdef __DSBT__ |
185 | if (_start == (void *) auxvt[AT_ENTRY].a_un.a_val) { | 186 | _dl_ldso_dsbt = (void *)tpnt->dynamic_info[DT_DSBT_BASE_IDX]; |