On 08/04/11 21:57, Mathew de Detrich wrote:
A problem that seems to be occurring on packages (typically on AUR) where makepkg using gnu's strip causes the package building process to fail (since /usr/bin/strip terminates with a different error message) when there is an incompatible object file in the source. As an example with this current package (read the latest comments) https://aur.archlinux.org/packages.php?ID=31566
It fails to build unless you add options=(!strip) into the PKGBUILD, which of course solves the problem in a bastardized way since it doesn't strip anything at all (and causes ridiculously bloated packages)
In this case the problem seems to be that the source package contains an object file from a different architecture (x64) which when stripped, causes the strip to prematurely terminate (and thus the building of the package to fail)
I looked through the man page for strip and there doesn't seem to be an option for it to continue stripping even if it hits an incompatible source file. The other option I guess would be to add more granularity (or another option) where you can provide a mask for objects not to be stripped (so you can do something like *64.so and any file matching that mask wont be stripped). Or you could manually invoke strip on every object file, and not terminate the makepkg process should it hit an "incompatible" object file
In any case its an annoyance
I can not be sure given no-one who hits this issue ever posts any actual output... but you are probably hitting this binutils issue: http://sourceware.org/bugzilla/show_bug.cgi?id=12632 But anyway, it appears the change from using a whitelist to choose what files to strip to attempting to strip everything has caused some packaging issues. So I also think some way to blacklist files/folders from being stripped would be useful. Allan