summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/mklibs
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/mklibs')
-rw-r--r--meta/recipes-devtools/mklibs/files/avoid-failure-on-symbol-provided-by-application.patch25
1 files changed, 13 insertions, 12 deletions
diff --git a/meta/recipes-devtools/mklibs/files/avoid-failure-on-symbol-provided-by-application.patch b/meta/recipes-devtools/mklibs/files/avoid-failure-on-symbol-provided-by-application.patch
index 7d6d62e773..17d9af4de4 100644
--- a/meta/recipes-devtools/mklibs/files/avoid-failure-on-symbol-provided-by-application.patch
+++ b/meta/recipes-devtools/mklibs/files/avoid-failure-on-symbol-provided-by-application.patch
@@ -1,7 +1,7 @@
1From f172101130604e4a9efa5746f4d8d30de99a0fdc Mon Sep 17 00:00:00 2001 1From dcb45256970b15b672d0004533826c94083356e5 Mon Sep 17 00:00:00 2001
2From: Yuanjie Huang <yuanjie.huang@windriver.com> 2From: Yuanjie Huang <yuanjie.huang@windriver.com>
3Date: Fri, 17 Apr 2015 14:48:20 +0800 3Date: Fri, 17 Apr 2015 14:48:20 +0800
4Subject: [PATCH] avoid failure on symbol provided by application 4Subject: [PATCH 4/6] avoid failure on symbol provided by application
5 5
6Upstream-Status: Pending 6Upstream-Status: Pending
7 7
@@ -13,12 +13,13 @@ cannot be provided by libraries. It prevents false alarm on absence
13of symbols. 13of symbols.
14 14
15Signed-off-by: Yuanjie Huang <yuanjie.huang@windriver.com> 15Signed-off-by: Yuanjie Huang <yuanjie.huang@windriver.com>
16
16--- 17---
17 src/mklibs | 28 ++++++++++++++++++++++++---- 18 src/mklibs | 28 ++++++++++++++++++++++++----
18 1 file changed, 24 insertions(+), 4 deletions(-) 19 1 file changed, 24 insertions(+), 4 deletions(-)
19 20
20diff --git a/src/mklibs b/src/mklibs 21diff --git a/src/mklibs b/src/mklibs
21index c5614ea..b0d9034 100755 22index a3533c0..66b7a09 100755
22--- a/src/mklibs 23--- a/src/mklibs
23+++ b/src/mklibs 24+++ b/src/mklibs
24@@ -133,9 +133,9 @@ class Symbol(object): 25@@ -133,9 +133,9 @@ class Symbol(object):
@@ -31,9 +32,9 @@ index c5614ea..b0d9034 100755
31- self.weak, self.library = weak, library 32- self.weak, self.library = weak, library
32+ self.weak, self.library, self.object = weak, library, object 33+ self.weak, self.library, self.object = weak, library, object
33 34
34 # Return undefined symbols in an object as a set of tuples (name, weakness) 35 def symbol_is_blacklisted(name):
35 def undefined_symbols(obj): 36 # The ARM Embedded ABI spec states symbols under this namespace as
36@@ -144,6 +144,11 @@ def undefined_symbols(obj): 37@@ -152,6 +152,11 @@ def undefined_symbols(obj):
37 38
38 output = command("mklibs-readelf", "--print-symbols-undefined", obj) 39 output = command("mklibs-readelf", "--print-symbols-undefined", obj)
39 40
@@ -45,7 +46,7 @@ index c5614ea..b0d9034 100755
45 result = [] 46 result = []
46 for line in output: 47 for line in output:
47 name, weak_string, version_string, library_string = line.split()[:4] 48 name, weak_string, version_string, library_string = line.split()[:4]
48@@ -160,7 +165,7 @@ def undefined_symbols(obj): 49@@ -171,7 +176,7 @@ def undefined_symbols(obj):
49 if library_string.lower() != 'none': 50 if library_string.lower() != 'none':
50 library = library_string 51 library = library_string
51 52
@@ -54,7 +55,7 @@ index c5614ea..b0d9034 100755
54 55
55 return result 56 return result
56 57
57@@ -495,12 +500,13 @@ while 1: 58@@ -498,12 +503,13 @@ while 1:
58 and re.search("^ps_", str(symbol))) 59 and re.search("^ps_", str(symbol)))
59 and not (re.search("ld-linux.so.3$", str(symbol))) 60 and not (re.search("ld-linux.so.3$", str(symbol)))
60 and not (re.search("^__gnu_local_gp", str(symbol)))): 61 and not (re.search("^__gnu_local_gp", str(symbol)))):
@@ -68,8 +69,8 @@ index c5614ea..b0d9034 100755
68+ present_symbol_progs = {} 69+ present_symbol_progs = {}
69 checked_libs = small_libs 70 checked_libs = small_libs
70 checked_libs.extend(available_libs) 71 checked_libs.extend(available_libs)
71 checked_libs.append(ldlib) 72 checked_libs.append(sysroot + ldlib)
72@@ -510,6 +516,12 @@ while 1: 73@@ -513,6 +519,12 @@ while 1:
73 names = symbol.base_names() 74 names = symbol.base_names()
74 for name in names: 75 for name in names:
75 present_symbols[name] = symbol 76 present_symbols[name] = symbol
@@ -82,7 +83,7 @@ index c5614ea..b0d9034 100755
82 83
83 # are we finished? 84 # are we finished?
84 num_unresolved = 0 85 num_unresolved = 0
85@@ -565,6 +577,14 @@ while 1: 86@@ -568,6 +580,14 @@ while 1:
86 for name in needed_symbols: 87 for name in needed_symbols:
87 if not name in symbol_provider: 88 if not name in symbol_provider:
88 if not needed_symbols[name].weak: 89 if not needed_symbols[name].weak:
@@ -98,5 +99,5 @@ index c5614ea..b0d9034 100755
98 else: 99 else:
99 lib = symbol_provider[name] 100 lib = symbol_provider[name]
100-- 101--
1011.8.5.2.233.g932f7e4 1022.16.1
102 103