[OE-core] [PATCH] glibc: Add relocation of GCONV_PATH

Richard Purdie richard.purdie at linuxfoundation.org
Mon Mar 7 10:46:11 UTC 2016


We're seeing various failures where nativesdk glibc can't find the gconv 
modules. We've tried various workaround but this needs fixing
'properly'.
One significant problem is knowing when a binary would use this glibc
and 
hence when to set the path and when not to.

Add the default path to its own special section which the sdk
relocation
script already knows how to handle and remap.

This significantly improves the usability of uninative.

Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

diff --git a/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch b/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch
index dde94b4..60f9f17 100644
--- a/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch
+++ b/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch
@@ -121,6 +121,16 @@ index 70d4aeb..5c726d0 100644
  #ifndef add_system_dir
  # define add_system_dir(dir) add_dir (dir)
  #endif
--- 
-2.6.4
-
+Index: git/iconv/gconv_conf.c
+===================================================================
+--- git.orig/iconv/gconv_conf.c
++++ git/iconv/gconv_conf.c
+@@ -36,7 +36,7 @@
+ 
+ 
+ /* This is the default path where we look for module lists.  */
+-static const char default_gconv_path[] = GCONV_PATH;
++static char default_gconv_path[4096] __attribute__ ((section (".gccrelocprefix"))) = GCONV_PATH;
+ 
+ /* The path elements, as determined by the __gconv_get_path function.
+    All path elements end in a slash.  */





More information about the Openembedded-core mailing list