libaio: link against libgcc and libc to avoid unresolved symbols
authorAlexey Brodkin <alexey.brodkin@synopsys.com>
Fri, 28 Sep 2018 13:37:34 +0000 (16:37 +0300)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Mon, 8 Oct 2018 19:29:35 +0000 (21:29 +0200)
commit9cf2457878ff25b5825074194d8c92a831624749
tree1047a47e9c393e6384efc28169506035538ba4fb
parent89ef4c4e48ef3c4fb22fc139e7816a516eaa3212
libaio: link against libgcc and libc to avoid unresolved symbols

For some weird reason, the libaio build system passes -nostdlib
-nostartfiles, which causes libgcc to not be linked in, even if it's
needed. Due to this, on some architectures, with specific optimization
features, the build fails with unresolved symbols, as gcc emits code
that uses functions implemented in libgcc.

The fix proposed by Debian developers is to simply drop -nostdlib
-nostartfiles.

Fixes build failures of blktrace, lvm2 and the like users of libaio.

A couple of examples below:
blktrace: http://autobuild.buildroot.net/results/5528ab59f1939a7eff7e85318f3b36283019cc50/
lvm2:     http://autobuild.buildroot.net/results/a5dfc87f94b97135e5cc84f6a876114891ed9dd9/

And since we solve the problem in libaio sources there's no need to
mess with compilation flags in Buildroot, thus partially revert
commit ce6536ae500f ("libaio: work-around for PowerPC issue").

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
package/libaio/0003-Link-against-libgcc-to-avoid-unresolved-symbols.patch [new file with mode: 0644]
package/libaio/libaio.mk