On 02/01/2017 04:34 PM, Steve McIntyre wrote: > Hey folks, > > On Wed, Feb 01, 2017 at 05:08:50AM +0100, Guillem Jover wrote: >> On Tue, 2017-01-31 at 22:44:36 +0000, James Cowgill wrote: >>> >>> Here libgsm.so has neither HARD or SOFT flags set. Also, asking gcc to >>> generate a library which does not link against libc (this is used by >>> sonames2elf in some packages) causes both flags to be set (maybe >>> because it's compatible with both?). >> >> Even worse, I've found at least one instance of a package containing >> binaries with EABIv4 (on armel, paris-traceroute). So I guess I'll have >> to remove the flags matching on EM_ARM ELF binaries for now. At least >> this will get us back to the previous behavior with objdump, no >> regression in that sense. >> >> To be able to distinguish armel from armhf I'd probably need to check >> the arm attributes section for Tag_ABI_VFP_args, which annoyingly >> seems to be set even when the HARD flag is not set. :/ But this will >> be for dpkg 1.19.x. > > Please don't go down that route, the ABI flags are intended to save > people from that. I'm curious what's going wrong with libgsm1 here > such that we're not seeing consistent ABI flags.
It's not just libgsm1, on armhf the build fails because of more than 20 libraries: https://buildd.debian.org/status/fetch.php?pkg=wine&arch=armhf&ver=1.8.6-4&stamp=1485847439&raw=0 Greets jre If it helps, this is the short form of the code that triggers this (we compute a list of dependencies for libs that are dlopen'ed by Wine): $ sonamesDepends="libfontconfig.so.1 libfreetype.so.6 libncurses.so.5" $ sonamesRecommends="libcups.so.2 libdbus-1.so.3 libfontconfig.so.1 libfreetype.so.6 libGL.so.1 libgnutls.so.30 libgsm.so.1 libjpeg.so.62 libncurses.so.5 libodbc.so.2 libopenal.so.1 libOSMesa.so.8 libpng16.so.16 libtiff.so.5 libX11.so.6 libXcomposite.so.1 libXcursor.so.1 libXext.so.6 libXi.so.6 libXinerama.so.1 libXrandr.so.2 libXrender.so.1 libxslt.so.1 libXxf86vm.so.1" $ printf 'INPUT(%s)\n' "$sonamesDepends" > libeverything.so $ gcc -shared -nostdlib -Wl,--no-as-needed -L. -leverything -o elf.depends $ printf 'INPUT(%s)\n' "$sonamesRecommends" > libeverything.so $ gcc -shared -nostdlib -Wl,--no-as-needed -L. -leverything -o elf.recommends $ dpkg-shlibdeps --warnings=1 \ -pdlopen \ -dDepends -edebian/tmp/elf.depends \ -dRecommends -edebian/tmp/elf.recommends \ -Tdebian/libwine.substvars