Skip to content

src/corelib/configure.json: fix atomicfptr detection

Fabrice Fontaine requested to merge ffontaine/qtbase:kde/5.15 into kde/5.15

Fix atomicfptr detection on sparc v8 by linking with libatomic if needed to avoid the following build failure:

/sysroot -std=gnu++11 -w -fPIC  -I. -I/home/peko/autobuild/instance-0/output-1/build/qt5base-d16bf02a11953dcac01dca73e6f3778f293adefe/mkspecs/devices/linux-buildroot-g++ -o main.o main.cpp
> /home/peko/autobuild/instance-0/output-1/host/bin/sparc-linux-g++ --sysroot=/home/peko/autobuild/instance-0/output-1/host/sparc-buildroot-linux-uclibc/sysroot --sysroot=/home/peko/autobuild/instance-0/output-1/host/sparc-buildroot-linux-uclibc/sysroot -Wl,-O1 -o atomicfptr main.o   -lexecinfo  -lrt -lpthread -ldl
> /home/peko/autobuild/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/sparc-buildroot-linux-uclibc/10.3.0/../../../../sparc-buildroot-linux-uclibc/bin/ld: main.o: in function `test(std::atomic<void (*)(int)> volatile&)':
> main.cpp:(.text+0x40): undefined reference to `__atomic_compare_exchange_4'
> collect2: error: ld returned 1 exit status
> make[1]: *** [Makefile:69: atomicfptr] Error 1

[...]

ERROR: detected a std::atomic implementation that fails for function pointers.
Please apply the patch corresponding to your Standard Library vendor, found in
  qtbase/config.tests/atomicfptr

Fixes:

Signed-off-by: Fabrice Fontaine fontaine.fabrice@gmail.com

Merge request reports