OpenSuse's libreadline has extra symbol information which upsets our uninative
loader as our libreadline is missing symbols with the appropriate versions.

The simplest solution is to add the version information as they're harmless.

Signed-off-by: Richard Purdie <[email protected]>
---
 .../recipes-core/readline/readline-8.0/rl-native.map | 12 ++++++++++++
 meta/recipes-core/readline/readline.inc              |  5 +++++
 2 files changed, 17 insertions(+)
 create mode 100644 meta/recipes-core/readline/readline-8.0/rl-native.map

diff --git a/meta/recipes-core/readline/readline-8.0/rl-native.map 
b/meta/recipes-core/readline/readline-8.0/rl-native.map
new file mode 100644
index 00000000000..5e7d49cdd22
--- /dev/null
+++ b/meta/recipes-core/readline/readline-8.0/rl-native.map
@@ -0,0 +1,12 @@
+READLINE_6.3 {
+    rl_change_environment;
+    rl_clear_history;
+    rl_executing_key;
+    rl_executing_keyseq;
+    rl_filename_stat_hook;
+    rl_history_substr_search_backward;
+    rl_history_substr_search_forward;
+    rl_input_available_hook;
+    rl_print_last_kbd_macro;
+    rl_signal_event_hook;
+};
diff --git a/meta/recipes-core/readline/readline.inc 
b/meta/recipes-core/readline/readline.inc
index e9665228dc2..07f54a76f18 100644
--- a/meta/recipes-core/readline/readline.inc
+++ b/meta/recipes-core/readline/readline.inc
@@ -43,3 +43,8 @@ do_install_append () {
 BBCLASSEXTEND = "native nativesdk"
 
 CONFFILES_${PN} += "${sysconfdir}/inputrc"
+
+# OpenSuse injects versions into libreadline leading to conficits between our 
native one and theirs
+# see their spec file for where this is injected. Extra versioning is harmless 
so we just do the same.
+SRC_URI_append_class-native = " file://rl-native.map"
+LDFLAGS_append_class-native = " -Wl,--version-script=${WORKDIR}/rl-native.map"
\ No newline at end of file
-- 
2.20.1

-- 
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to