From: Ross Burton Date: Tue, 9 Aug 2016 11:12:02 +0000 (+0100) Subject: connman: disable version-scripts to fix crashes at startup X-Git-Tag: lucaceresoli/bug-15201-perf-libtraceevent-missing~24714 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0194531627735c1f5643ff1bd1bca27ca05c8e95;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git connman: disable version-scripts to fix crashes at startup With binutils 2.27 on at least MIPS, connmand will crash on startup. This appears to be due to the symbol visibilty scripts hiding symbols that stdio looks up at runtime, resulting in it segfaulting. This certainly appears to be a bug in binutils 2.27 although the problem has been known about for some time: https://sourceware.org/bugzilla/show_bug.cgi?id=17908 As the version scripts are only used to hide symbols from plugins we can safely remove the scripts to work around the problem until binutils is fixed. Signed-off-by: Ross Burton --- diff --git a/meta/recipes-connectivity/connman/connman/no-version-scripts.patch b/meta/recipes-connectivity/connman/connman/no-version-scripts.patch new file mode 100644 index 00000000000..e96e38bcf91 --- /dev/null +++ b/meta/recipes-connectivity/connman/connman/no-version-scripts.patch @@ -0,0 +1,27 @@ +With binutils 2.27 on at least MIPS, connmand will crash on startup. This +appears to be due to the symbol visibilty scripts hiding symbols that stdio +looks up at runtime, resulting in it segfaulting. + +This certainly appears to be a bug in binutils 2.27 although the problem has +been known about for some time: + +https://sourceware.org/bugzilla/show_bug.cgi?id=17908 + +As the version scripts are only used to hide symbols from plugins we can safely +remove the scripts to work around the problem until binutils is fixed. + +Upstream-Status: Inappropriate +Signed-off-by: Ross Burton + +diff --git a/Makefile.am b/Makefile.am +index d70725c..76ae432 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -132,2 +132 @@ src_connmand_LDADD = gdbus/libgdbus-internal.la $(builtin_libadd) \ +-src_connmand_LDFLAGS = -Wl,--export-dynamic \ +- -Wl,--version-script=$(srcdir)/src/connman.ver ++src_connmand_LDFLAGS = -Wl,--export-dynamic +@@ -166,2 +165 @@ vpn_connman_vpnd_LDADD = gdbus/libgdbus-internal.la $(builtin_vpn_libadd) \ +-vpn_connman_vpnd_LDFLAGS = -Wl,--export-dynamic \ +- -Wl,--version-script=$(srcdir)/vpn/vpn.ver ++vpn_connman_vpnd_LDFLAGS = -Wl,--export-dynamic diff --git a/meta/recipes-connectivity/connman/connman_1.33.bb b/meta/recipes-connectivity/connman/connman_1.33.bb index b31b1464bbc..5485c15bd36 100644 --- a/meta/recipes-connectivity/connman/connman_1.33.bb +++ b/meta/recipes-connectivity/connman/connman_1.33.bb @@ -3,6 +3,7 @@ require connman.inc SRC_URI = "${KERNELORG_MIRROR}/linux/network/${BPN}/${BP}.tar.xz \ file://0001-plugin.h-Change-visibility-to-default-for-debug-symb.patch \ file://connman \ + file://no-version-scripts.patch \ " SRC_URI_append_libc-musl = "file://0002-resolve-musl-does-not-implement-res_ninit.patch \ file://0003-Fix-header-inclusions-for-musl.patch \ @@ -12,4 +13,3 @@ SRC_URI[md5sum] = "c51903fd3e7a6a371d12ac5d72a1fa01" SRC_URI[sha256sum] = "bc8946036fa70124d663136f9f6b6238d897ca482782df907b07a428b09df5a0" RRECOMMENDS_${PN} = "connman-conf" -