Performing C++ SOURCE FILE Test LLVM_HAS_ATOMICS failed with the following output: Change Dir: /data/buildroot/buildroot-test/instance-1/output/build/i2pd-2.24.0/build/CMakeFiles/CMakeTmp Run Build Command:"/usr/bin/make" "cmTC_14d48/fast" make[1]: Entering directory '/data/buildroot/buildroot-test/instance-1/output/build/i2pd-2.24.0/build/CMakeFiles/CMakeTmp' /usr/bin/make -f CMakeFiles/cmTC_14d48.dir/build.make CMakeFiles/cmTC_14d48.dir/build make[2]: Entering directory '/data/buildroot/buildroot-test/instance-1/output/build/i2pd-2.24.0/build/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_14d48.dir/src.cxx.o /data/buildroot/buildroot-test/instance-1/output/host/bin/sparc-linux-g++ --sysroot=/data/buildroot/buildroot-test/instance-1/output/host/sparc-buildroot-linux-uclibc/sysroot -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -static -static -latomic -Wall -Wextra -Winvalid-pch -Wno-unused-parameter -std=c++11 -pipe -DLLVM_HAS_ATOMICS -DNDEBUG -o CMakeFiles/cmTC_14d48.dir/src.cxx.o -c /data/buildroot/buildroot-test/instance-1/output/build/i2pd-2.24.0/build/CMakeFiles/CMakeTmp/src.cxx Linking CXX executable cmTC_14d48 /data/buildroot/buildroot-test/instance-1/output/host/bin/cmake -E cmake_link_script CMakeFiles/cmTC_14d48.dir/link.txt --verbose=1 /data/buildroot/buildroot-test/instance-1/output/host/bin/sparc-linux-g++ --sysroot=/data/buildroot/buildroot-test/instance-1/output/host/sparc-buildroot-linux-uclibc/sysroot -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -static -static -latomic -Wall -Wextra -Winvalid-pch -Wno-unused-parameter -std=c++11 -pipe -DLLVM_HAS_ATOMICS -DNDEBUG -static -rdynamic CMakeFiles/cmTC_14d48.dir/src.cxx.o -o cmTC_14d48 /data/buildroot/buildroot-test/instance-1/output/host/opt/ext-toolchain/bin/../lib/gcc/sparc-buildroot-linux-uclibc/7.4.0/../../../../sparc-buildroot-linux-uclibc/bin/ld: CMakeFiles/cmTC_14d48.dir/src.cxx.o: in function `main': src.cxx:(.text.startup+0x1c): undefined reference to `__sync_val_compare_and_swap_4' /data/buildroot/buildroot-test/instance-1/output/host/opt/ext-toolchain/bin/../lib/gcc/sparc-buildroot-linux-uclibc/7.4.0/../../../../sparc-buildroot-linux-uclibc/bin/ld: src.cxx:(.text.startup+0x28): undefined reference to `__sync_add_and_fetch_4' /data/buildroot/buildroot-test/instance-1/output/host/opt/ext-toolchain/bin/../lib/gcc/sparc-buildroot-linux-uclibc/7.4.0/../../../../sparc-buildroot-linux-uclibc/bin/ld: src.cxx:(.text.startup+0x34): undefined reference to `__sync_sub_and_fetch_4' collect2: error: ld returned 1 exit status make[2]: *** [CMakeFiles/cmTC_14d48.dir/build.make:98: cmTC_14d48] Error 1 make[2]: Leaving directory '/data/buildroot/buildroot-test/instance-1/output/build/i2pd-2.24.0/build/CMakeFiles/CMakeTmp' make[1]: *** [Makefile:126: cmTC_14d48/fast] Error 2 make[1]: Leaving directory '/data/buildroot/buildroot-test/instance-1/output/build/i2pd-2.24.0/build/CMakeFiles/CMakeTmp' Source file was: #ifdef _MSC_VER #include /* Workaround for PR19898. */ #include #endif int main() { #ifdef _MSC_VER volatile LONG val = 1; MemoryBarrier(); InterlockedCompareExchange(&val, 0, 1); InterlockedIncrement(&val); InterlockedDecrement(&val); #else volatile unsigned long val = 1; __sync_synchronize(); __sync_val_compare_and_swap(&val, 1, 0); __sync_add_and_fetch(&val, 1); __sync_sub_and_fetch(&val, 1); #endif return 0; }