On Thu, May 02, 2024 at 11:38:14AM +0200, Michael Olbrich wrote:
> On Wed, Apr 24, 2024 at 05:33:22PM +0200, Ladislav Michl wrote:
> > On Tue, Apr 23, 2024 at 07:36:52AM +0200, Ladislav Michl wrote:
> > > Move package to a new upstream at https://github.com/spkr-beep/beep/
> > 
> > For v5te I needed to add LDFLAGS=-latomic to satisfy undefined reference:
> > arm-v5te-linux-gnueabi-gcc -Wl,-Map=beep.map,--cref 
> > -fasynchronous-unwind-tables -fanalyzer -fstack-protector-strong 
> > -fstack-clash-protection -fsanitize=undefined -save-temps=obj -O2 -g 
> > -std=gnu99 -pedantic -Wall -Wextra -Werror -Wno-padded 
> > -Wno-format-nonliteral   -o beep beep-log.o beep-main.o beep-library.o 
> > beep-usage.o beep-drivers.o beep-driver-console.o beep-driver-evdev.o   
> > /opt/OSELAS.Toolchain-2023.07.1/arm-v5te-linux-gnueabi/gcc-13.2.1-glibc-2.37-binutils-2.40-kernel-6.3.6-sanitized/lib/gcc/arm-v5te-linux-gnueabi/13.2.1/../../../../arm-v5te-linux-gnueabi/bin/ld:
> >  
> > /opt/OSELAS.Toolchain-2023.07.1/arm-v5te-linux-gnueabi/gcc-13.2.1-glibc-2.37-binutils-2.40-kernel-6.3.6-sanitized/lib/gcc/arm-v5te-linux-gnueabi/13.2.1/../../../../arm-v5te-linux-gnueabi/lib/libubsan.so:
> >  undefined reference to `__atomic_compare_exchange_8'
> > /opt/OSELAS.Toolchain-2023.07.1/arm-v5te-linux-gnueabi/gcc-13.2.1-glibc-2.37-binutils-2.40-kernel-6.3.6-sanitized/lib/gcc/arm-v5te-linux-gnueabi/13.2.1/../../../../arm-v5te-linux-gnueabi/bin/ld:
> >  
> > /opt/OSELAS.Toolchain-2023.07.1/arm-v5te-linux-gnueabi/gcc-13.2.1-glibc-2.37-binutils-2.40-kernel-6.3.6-sanitized/lib/gcc/arm-v5te-linux-gnueabi/13.2.1/../../../../arm-v5te-linux-gnueabi/lib/libubsan.so:
> >  undefined reference to `__atomic_load_8'
> > collect2: error: ld returned 1 exit status
> > 
> > I can see haproxy and dhcp packages are adding target flags based on
> > selected architecture. Is it to way to follow here?
> 
> Yes, please handle it like that. If it's missing for other architectures
> (ppc is a possibility here), I'll fix it when it fails in my tests.

I already sent v2 with different approach. Problems boils down to beep's
GNUMakefile trying to figure out whenever compiler supports various
sanitizers flags, but fails to figure out, that it comes at price linking
with sanitizer libraries on some architectures. V2 solves that by removing
all those checks, so external libraries are no longer needed.

        ladis

Reply via email to