aboutsummaryrefslogtreecommitdiff
path: root/meta-linaro-integration/recipes-core/eglibc/eglibc-2.19/relocatable_sdk.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-linaro-integration/recipes-core/eglibc/eglibc-2.19/relocatable_sdk.patch')
-rw-r--r--meta-linaro-integration/recipes-core/eglibc/eglibc-2.19/relocatable_sdk.patch108
1 files changed, 0 insertions, 108 deletions
diff --git a/meta-linaro-integration/recipes-core/eglibc/eglibc-2.19/relocatable_sdk.patch b/meta-linaro-integration/recipes-core/eglibc/eglibc-2.19/relocatable_sdk.patch
deleted file mode 100644
index ca5f17ba..00000000
--- a/meta-linaro-integration/recipes-core/eglibc/eglibc-2.19/relocatable_sdk.patch
+++ /dev/null
@@ -1,108 +0,0 @@
-Upstream-Status: Inappropriate [SDK specific]
-
-This patch puts the dynamic loader path in the binaries, SYSTEM_DIRS strings
-and lengths as well as ld.so.cache path in the dynamic loader to specific
-sections in memory. The sections that contain paths have been allocated a 4096
-byte section, which is the maximum path length in linux. This will allow the
-relocating script to parse the ELF binary, detect the section and easily replace
-the strings in a certain path.
-
-Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
-
-Index: libc/elf/interp.c
-===================================================================
---- libc.orig/elf/interp.c
-+++ libc/elf/interp.c
-@@ -16,5 +16,5 @@
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
--const char __invoke_dynamic_linker__[] __attribute__ ((section (".interp")))
-+const char __invoke_dynamic_linker__[4096] __attribute__ ((section (".interp")))
- = RUNTIME_LINKER;
-Index: libc/elf/dl-load.c
-===================================================================
---- libc.orig/elf/dl-load.c
-+++ libc/elf/dl-load.c
-@@ -144,8 +144,8 @@ static size_t max_capstrlen attribute_re
- /* Get the generated information about the trusted directories. */
- #include "trusted-dirs.h"
-
--static const char system_dirs[] = SYSTEM_DIRS;
--static const size_t system_dirs_len[] =
-+static const char system_dirs[4096] __attribute__ ((section (".sysdirs"))) = SYSTEM_DIRS;
-+volatile static const size_t system_dirs_len[] __attribute__ ((section (".sysdirslen"))) =
- {
- SYSTEM_DIRS_LEN
- };
-Index: libc/elf/dl-cache.c
-===================================================================
---- libc.orig/elf/dl-cache.c
-+++ libc/elf/dl-cache.c
-@@ -133,6 +133,10 @@ do \
- while (0)
-
-
-+const char LD_SO_CACHE[4096] __attribute__ ((section (".ldsocache"))) =
-+ SYSCONFDIR "/ld.so.cache";
-+
-+
- int
- internal_function
- _dl_cache_libcmp (const char *p1, const char *p2)
-Index: libc/elf/ldconfig.c
-===================================================================
---- libc.orig/elf/ldconfig.c
-+++ libc/elf/ldconfig.c
-@@ -166,6 +166,9 @@ static struct argp argp =
- options, parse_opt, NULL, doc, NULL, more_help, NULL
- };
-
-+
-+extern const char LD_SO_CACHE[4096] __attribute__ ((section (".ldsocache")));
-+
- /* Check if string corresponds to an important hardware capability or
- a platform. */
- static int
-Index: libc/sysdeps/generic/dl-cache.h
-===================================================================
---- libc.orig/sysdeps/generic/dl-cache.h
-+++ libc/sysdeps/generic/dl-cache.h
-@@ -27,10 +27,6 @@
- ((flags) == 1 || (flags) == _DL_CACHE_DEFAULT_ID)
- #endif
-
--#ifndef LD_SO_CACHE
--# define LD_SO_CACHE SYSCONFDIR "/ld.so.cache"
--#endif
--
- #ifndef add_system_dir
- # define add_system_dir(dir) add_dir (dir)
- #endif
-Index: libc/elf/rtld.c
-===================================================================
---- libc.orig/elf/rtld.c
-+++ libc/elf/rtld.c
-@@ -99,6 +99,7 @@ uintptr_t __pointer_chk_guard_local
- strong_alias (__pointer_chk_guard_local, __pointer_chk_guard)
- #endif
-
-+extern const char LD_SO_CACHE[4096] __attribute__ ((section (".ldsocache")));
-
- /* List of auditing DSOs. */
- static struct audit_list
-@@ -1031,12 +1032,12 @@ of this helper program; chances are you
- --list list all dependencies and how they are resolved\n\
- --verify verify that given object really is a dynamically linked\n\
- object we can handle\n\
-- --inhibit-cache Do not use " LD_SO_CACHE "\n\
-+ --inhibit-cache Do not use %s\n\
- --library-path PATH use given PATH instead of content of the environment\n\
- variable LD_LIBRARY_PATH\n\
- --inhibit-rpath LIST ignore RUNPATH and RPATH information in object names\n\
- in LIST\n\
-- --audit LIST use objects named in LIST as auditors\n");
-+ --audit LIST use objects named in LIST as auditors\n", LD_SO_CACHE);
-
- ++_dl_skip_args;
- --_dl_argc;