From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Petazzoni Date: Mon, 21 Aug 2017 23:30:14 +0200 Subject: [Buildroot] [PATCH] libunwind: needs dynamic library support In-Reply-To: <20170820210151.2242-1-thomas.petazzoni@free-electrons.com> References: <20170820210151.2242-1-thomas.petazzoni@free-electrons.com> Message-ID: <20170821233014.221cc34b@windsurf> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: buildroot@busybox.net Hello, On Sun, 20 Aug 2017 23:01:51 +0200, Thomas Petazzoni wrote: > libunwind configure script explicitly links libunwind against > libgcc_s. libgcc_s is only guaranteed to be available for toolchains > that supports dynamic linking: pure static linking toolchains only > have libgcc.a, not libgcc_s.so. > > Therefore, let's make libunwind unavailable on toolchains that lack > dynamic linking support. We could potentially support linking with > libgcc, but switching to libgcc_s was done upstream because libgcc was > lacking some symbols on ARM > (https://lists.nongnu.org/archive/html/libunwind-devel/2014-06/msg00024.html). Even > though recent gcc versions seem to provide such symbols in libgcc.a, > having libunwind available on static linking configurations is not a > useful enough use-case to do the necessary research to find when this > issue was fixed in gcc. > > Since libunwind is not used as a mandatory dependency in any package, > adding this !BR2_STATIC_LIBS dependency is trivial and nicely avoids > the problematic situation. > > This fixes two different autobuilder failures: > > - Gstreamer 1.x programs failing to link, because libunwind links > against libgcc_s that isn't available (static linking > configuration): > > http://autobuild.buildroot.net/results/9d4fbf7167e9afce0eef5c9e0cfd42c966ecba36/ > > - Gmrender-resurrect, which fails to link, because GStreamer 1.x uses > some libunwind functionality, but does not take into account the > libunwind dependency in its .pc files (static linking > configuration): > > http://autobuild.buildroot.net/results/0a3a2485c187a000482c178f1e9c64dd716a858f/ > > Signed-off-by: Thomas Petazzoni > --- > package/libunwind/Config.in | 7 +++++-- > 1 file changed, 5 insertions(+), 2 deletions(-) Applied to master, thanks. Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com