glibc: fix MIPS and SPARC builds for glibc < 2.24 with recent binutils
authorVicente Olivert Riera <Vincent.Riera@imgtec.com>
Thu, 8 Sep 2016 16:07:30 +0000 (17:07 +0100)
committerPeter Korsgaard <peter@korsgaard.com>
Thu, 8 Sep 2016 18:27:19 +0000 (20:27 +0200)
commit3ca860a95f1860c4b2e96fafe93b85030db15ed2
tree7ff365c40c9ede454eea55f6db82118bb9e30977
parent866722daaa32dd57215c8b8f3e6fdb1df120174c
glibc: fix MIPS and SPARC builds for glibc < 2.24 with recent binutils

Backport two upstream patches to fix a build failure on MIPS and SPARC
architectures when using recent binutils versions. It appears that on
these architectures pt-vfork.S includes vfork.S (through the alpha
version of pt-vfork.S) and that the __vfork aliases are not
conditionalized on IS_IN (libc) like on other architectures. Therefore
the aliases are also wrongly included in libpthread.so.

The build failure looks like this:

/br/output/build/glibc-2.22/build/nptl/libpthread.so:(*IND*+0x0):
multiple definition of `vfork@GLIBC_2.0'
/br/output/build/glibc-2.22/build/nptl/libpthread.so::(.text+0xeea0):
first defined here

This problem was reported in Debian here:

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=827477

Upstream patches here:

https://sourceware.org/git/?p=glibc.git;a=commit;h=43c2948756bb6e144c7b871e827bba37d61ad3a3
https://sourceware.org/git/?p=glibc.git;a=commit;h=b87c1ec3fa398646f042a68f0ce0f7d09c1348c7

I have tweaked them a little bit in order to not patch the ChangeLog
file, otherwise it will fail.

Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/glibc/2.22/0004-MIPS-SPARC-fix-wrong-vfork-aliases-in-libpthread.so.patch [new file with mode: 0644]
package/glibc/2.22/0005-MIPS-SPARC-more-fixes-to-the-vfork-aliases-in-libpth.patch [new file with mode: 0644]
package/glibc/2.23/0003-MIPS-SPARC-fix-wrong-vfork-aliases-in-libpthread.so.patch [new file with mode: 0644]
package/glibc/2.23/0004-MIPS-SPARC-more-fixes-to-the-vfork-aliases-in-libpth.patch [new file with mode: 0644]