<feed xmlns='http://www.w3.org/2005/Atom'>
<title>buildroot/package/libunwind, branch 2017.05</title>
<subtitle>OpenPOWER buildroot sources</subtitle>
<id>https://git.raptorcs.com/git/buildroot/atom?h=2017.05</id>
<link rel='self' href='https://git.raptorcs.com/git/buildroot/atom?h=2017.05'/>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/'/>
<updated>2017-05-04T21:23:17+00:00</updated>
<entry>
<title>package/libunwind: disable for x86 with musl</title>
<updated>2017-05-04T21:23:17+00:00</updated>
<author>
<name>Romain Naour</name>
<email>romain.naour@gmail.com</email>
</author>
<published>2017-04-17T17:37:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=60aee0cc5afb85976ca3b346f82b2caadc3a1c21'/>
<id>urn:sha1:60aee0cc5afb85976ca3b346f82b2caadc3a1c21</id>
<content type='text'>
libunwind use sigreturn() and setcontext() while building for x86 [1]
but this function is not available with musl [2].

This throw a warning during libunwind build:
In file included from x86/Los-linux.c:4:0:
x86/Gos-linux.c: In function ‘_ULx86_local_resume’:
x86/Gos-linux.c:298:7: warning: implicit declaration of function ‘sigreturn’ [-Wimplicit-function-declaration]
      sigreturn (sc);
      ^
But any program trying to link against libunwind-generic.so or
libunwind.so fail to build:
[...]/usr/lib/libunwind-generic.so: undefined reference to `sigreturn'
[...]/usr/lib/libunwind-generic.so: undefined reference to `setcontext'
collect2: error: ld returned 1 exit status

Disable libunwind for x86 target when musl is used.

Reported upstream by Waldemar [3]

[1] http://git.savannah.gnu.org/gitweb/?p=libunwind.git;a=blob;f=src/x86/Gos-linux.c;h=17aebc2974af50eb0bf8292689b2ed22a4c97866;hb=HEAD#l299
[2] http://openwall.com/lists/musl/2016/02/04/3
[3] http://lists.nongnu.org/archive/html/libunwind-devel/2017-04/msg00030.html

Signed-off-by: Romain Naour &lt;romain.naour@gmail.com&gt;
Cc: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Cc: Waldemar Brodkorb &lt;wbx@openadk.org&gt;
Reviewed-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
</content>
</entry>
<entry>
<title>package/libunwind: simplify architecture dependencies</title>
<updated>2017-05-04T21:21:04+00:00</updated>
<author>
<name>Yann E. MORIN</name>
<email>yann.morin.1998@free.fr</email>
</author>
<published>2017-04-17T16:44:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=a84acbb4a7d7cf5feb43147839f04485e714b1a6'/>
<id>urn:sha1:a84acbb4a7d7cf5feb43147839f04485e714b1a6</id>
<content type='text'>
BR2_ARM_CPU_HAS_ARM already embeddeds the fact that this is an ARM chip,
so (BR2_arm || BR2_armeb) is forcibly true when BR2_ARM_CPU_HAS_ARM is.

In other words, BR2_ARM_CPU_HAS_ARM can't be true unless either BR2_arm
or BR2_armeb itslef is true.

Simplify the logic accordingly.

Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Cc: Romain Naour &lt;romain.naour@openwide.fr&gt;
Acked-by: Romain Naour &lt;romain.naour@gmail.com&gt;
Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
</content>
</entry>
<entry>
<title>package/libunwind: disable for x86 with uClibc toolchain</title>
<updated>2017-04-17T13:08:22+00:00</updated>
<author>
<name>Romain Naour</name>
<email>romain.naour@gmail.com</email>
</author>
<published>2017-04-16T19:49:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=c5b56b0a20b2be24878d8bae66fbe665e8fea698'/>
<id>urn:sha1:c5b56b0a20b2be24878d8bae66fbe665e8fea698</id>
<content type='text'>
libunwind use sigreturn() while building for x86 [1] but this function
is not available with uClibc-ng.

This throw a warning during libunwind build:
In file included from x86/Los-linux.c:4:0:
x86/Gos-linux.c: In function ‘_ULx86_local_resume’:
x86/Gos-linux.c:298:7: warning: implicit declaration of function ‘sigreturn’ [-Wimplicit-function-declaration]
       sigreturn (sc);
       ^

But any program trying to link against libunwind-generic.so fail to build:
[...]usr/lib/libunwind-generic.so: undefined reference to `sigreturn'
collect2: error: ld returned 1 exit status

Disable libunwind for x86 target when uClibc-ng is used.

Fixes:
http://autobuild.buildroot.net/results/54a/54afac8148cff5f3c17e83f80917fd9006948fe0//build-end.log

[1] http://git.savannah.gnu.org/gitweb/?p=libunwind.git;a=blob;f=src/x86/Gos-linux.c;h=17aebc2974af50eb0bf8292689b2ed22a4c97866;hb=HEAD#l299

Signed-off-by: Romain Naour &lt;romain.naour@gmail.com&gt;
Tested-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Acked-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
</content>
</entry>
<entry>
<title>arch: remove support for sh64</title>
<updated>2016-09-08T20:15:15+00:00</updated>
<author>
<name>Gustavo Zacarias</name>
<email>gustavo@zacarias.com.ar</email>
</author>
<published>2016-09-08T18:38:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=4338a319b72570e433fd7484f8a95e1e0e978941'/>
<id>urn:sha1:4338a319b72570e433fd7484f8a95e1e0e978941</id>
<content type='text'>
It's been deprecated for quite some time now.

Signed-off-by: Gustavo Zacarias &lt;gustavo@zacarias.com.ar&gt;
Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
</content>
</entry>
<entry>
<title>libunwind: fix architecture dependencies</title>
<updated>2016-08-07T20:58:32+00:00</updated>
<author>
<name>Thomas Petazzoni</name>
<email>thomas.petazzoni@free-electrons.com</email>
</author>
<published>2016-08-07T08:46:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=68d399fbddc5da909863971814856d7e00e7649a'/>
<id>urn:sha1:68d399fbddc5da909863971814856d7e00e7649a</id>
<content type='text'>
Due to a misplaced parenthesis, the libunwind dependency were
incorrect. Indeed, they were of the form:

 default y if LIBC_TYPE &amp;&amp; (arm dependency) || (list of other architectures)

Which meant that that the LIBC_TYPE dependency was not taken into
account for the "other architectures". This commit changes that to:

 default y if LIBC_TYPE &amp;&amp; ((arm dependency) || list of other architectures)

Without this fix, libunwind can be selected for example on
PowerPC/uClibc configurations, while only PowerPC/glibc should be
allowed. This fixes:

  http://autobuild.buildroot.net/results/96c53ff240dcd68fcc9e3d32c4026c9886edcbe7/

Similarly, it also fixes cases where SuperH/uClibc was allowed, while
only SuperH/glibc should be allowed. This fixes:

  http://autobuild.buildroot.net/results/95a6cca21aea9914ba8bb3f571760fc054c53ecd/

Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
Reviewed-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
</content>
</entry>
<entry>
<title>libunwind: needs ARM instruction support</title>
<updated>2016-07-23T20:58:44+00:00</updated>
<author>
<name>Gustavo Zacarias</name>
<email>gustavo@zacarias.com.ar</email>
</author>
<published>2016-07-23T15:24:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=3a10967c7f0d29d600befc2c14a5859726ea6aa0'/>
<id>urn:sha1:3a10967c7f0d29d600befc2c14a5859726ea6aa0</id>
<content type='text'>
Fixes:
http://autobuild.buildroot.net/results/4cf/4cf517cd81d3aa5da26848edaba5df0bfbab2c77/

Signed-off-by: Gustavo Zacarias &lt;gustavo@zacarias.com.ar&gt;
Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
</content>
</entry>
<entry>
<title>libunwind: fix C library dependency</title>
<updated>2016-02-01T18:32:42+00:00</updated>
<author>
<name>Thomas Petazzoni</name>
<email>thomas.petazzoni@free-electrons.com</email>
</author>
<published>2016-01-27T21:25:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=1da65232ecd211cd3e55adfdc8b2fbf0cf27af90'/>
<id>urn:sha1:1da65232ecd211cd3e55adfdc8b2fbf0cf27af90</id>
<content type='text'>
The libunwind package currently dependency on glibc *or* uclibc
snapshot. However, we are going to remove the support for uclibc
snapshot, and uClibc-ng has equivalent functionality as uclibc
snapshot. Moreover, musl is also capable of building libunwind for
certain architectures.

Therefore, this commit reworks the architecture dependencies of
libunwind, to make it available on all architectures for which it is
supported, depending on the capabilities of the different C libraries,
and the implementation of libunwind on each architecture.

On some architectures, libunwind uses the C library *context()
functions, which are not provided by musl at all, and not provided by
uClibc on all architectures. But on some other architectures,
libunwind does not use the C library *context() functions, which
explains why it can be built with musl on such architectures.

Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
Signed-off-by: Peter Korsgaard &lt;peter@korsgaard.com&gt;
</content>
</entry>
<entry>
<title>libunwind: add hash file</title>
<updated>2015-07-28T20:32:57+00:00</updated>
<author>
<name>Gustavo Zacarias</name>
<email>gustavo@zacarias.com.ar</email>
</author>
<published>2015-07-28T18:39:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=ae491ec2f6618fe8e5c4f3f935cbf333431b316d'/>
<id>urn:sha1:ae491ec2f6618fe8e5c4f3f935cbf333431b316d</id>
<content type='text'>
Signed-off-by: Gustavo Zacarias &lt;gustavo@zacarias.com.ar&gt;
Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
</content>
</entry>
<entry>
<title>libunwind: fix comment dependencies</title>
<updated>2014-11-16T23:22:47+00:00</updated>
<author>
<name>Peter Korsgaard</name>
<email>peter@korsgaard.com</email>
</author>
<published>2014-11-16T23:22:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=5a99682127b02f0d792390311956e977a2718fa2'/>
<id>urn:sha1:5a99682127b02f0d792390311956e977a2718fa2</id>
<content type='text'>
Comment should be shown when no threads OR not uclibc-snapshot / glibc, not
AND.

Signed-off-by: Peter Korsgaard &lt;peter@korsgaard.com&gt;
</content>
</entry>
<entry>
<title>package/libunwind: link to libgcc_s, not libgcc</title>
<updated>2014-11-16T23:11:51+00:00</updated>
<author>
<name>Yann E. MORIN</name>
<email>yann.morin.1998@free.fr</email>
</author>
<published>2014-11-16T13:29:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=261d8bfcd70542da9275f401c9981c16b7290686'/>
<id>urn:sha1:261d8bfcd70542da9275f401c9981c16b7290686</id>
<content type='text'>
Backport a fix from upstream to link against libgcc_s instead of libgcc.

Fixes ltrace build failures:
    http://autobuild.buildroot.net/results/a0c/a0c132f8cdea2c34ceff27606764a60c2853f644/
    http://autobuild.buildroot.net/results/67f/67fbd04d6ae187861fa1bf84d3df1877c7be6fb2/
    http://autobuild.buildroot.net/results/0ca/0ca564101b870e5953acb66ac832ce9e23198392/
    ...

Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Signed-off-by: Peter Korsgaard &lt;peter@korsgaard.com&gt;
</content>
</entry>
</feed>
