Source: abseil
Severity: important
Version: 0~20200923.1-1
X-Debbugs-CC: bba...@debian.org
Tags: patch

Dear Debian abseil maintainer,

One of the packages I maintain build-depends on abseil library. As
indicated in https://buildd.debian.org/status/package.php?p=libgav1 ,
it currently fails to build for armel due to the following reason:

/usr/bin/ld: /usr/lib/arm-linux-
gnueabi/libabsl_debugging_internal.so.20200923: undefined reference to
`__atomic_compare_exchange_8'
/usr/bin/ld: /usr/lib/arm-linux-
gnueabi/libabsl_spinlock_wait.so.20200923.0.0: undefined reference to
`__atomic_load_8'
/usr/bin/ld: /usr/lib/arm-linux-
gnueabi/libabsl_spinlock_wait.so.20200923.0.0: undefined reference to
`__atomic_store_8'

Looking into the buildlog of abseil of armel (
https://buildd.debian.org/status/fetch.php?pkg=abseil&arch=armel&ver=0%7E20200923.1-1&stamp=1602525704&raw=0
), I found some related information:

dpkg-shlibdeps: warning: symbol __atomic_load_8 used by
debian/libabsl20200923/usr/lib/arm-linux-
gnueabi/libabsl_flags_internal.so.20200923.0.0 found in none of the
libraries
dpkg-shlibdeps: warning: symbol __atomic_store_8 used by
debian/libabsl20200923/usr/lib/arm-linux-
gnueabi/libabsl_flags_internal.so.20200923.0.0 found in none of the
libraries

I am not familiar with ARM so I did some googling. It seems that one
way to circumvent this issue is to explicitly add "-latomic" during
building for armel. I enabled this flag in my libgav1 build but it was
not working. So my guess is that you might need to enable the flag in
the build of abseil library.

If you find it reasonable, please consider adding the following lines
in the front of debian/rules file:

ifneq (,$(filter $(DEB_HOST_ARCH), armel))
  export DEB_LDFLAGS_MAINT_APPEND=-latomic
endif

Hope this patch can fix the build error of libgav1. Let me know if you
have any thoughts.

Thanks,
Boyuan Yang

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to