From c0928b7c0e9cb67db0e746c6373bf20ca8aa62f5 Mon Sep 17 00:00:00 2001 From: Gwenhael Goavec-Merou Date: Fri, 22 Feb 2019 14:12:18 +0100 Subject: [PATCH] package/gqrx: link with libatomic when needed On some architectures, atomic builtins are provided by the libatomic library from gcc. Linking with libatomic is therefore necessary, otherwise the build fails with: sparc-buildroot-linux-uclibc/sysroot/lib/libatomic.so.1: error adding symbols: DSO missing from command line Fixes: - http://autobuild.buildroot.net/results/a003ad5324a0c0f55cb8db5d3e5d69bd21999e16/ - http://autobuild.buildroot.net/results/464602175d026d135125e5baa00e0729aec7a931/ Signed-off-by: Gwenhael Goavec-Merou [Peter: add dependency on sync or atomic builtins in Config, addd comment] Signed-off-by: Peter Korsgaard --- package/gqrx/Config.in | 2 ++ package/gqrx/gqrx.mk | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/package/gqrx/Config.in b/package/gqrx/Config.in index a46409e333..b0d7e7b9f3 100644 --- a/package/gqrx/Config.in +++ b/package/gqrx/Config.in @@ -1,6 +1,7 @@ comment "gqrx needs a toolchain w/ C++, threads, wchar, dynamic library" depends on BR2_USE_MMU # gnuradio depends on !BR2_PACKAGE_PYTHON3 # gnuradio + depends on BR2_TOOLCHAIN_HAS_SYNC_4 || BR2_TOOLCHAIN_HAS_ATOMIC depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ !BR2_USE_WCHAR || !BR2_STATIC_LIBS @@ -14,6 +15,7 @@ config BR2_PACKAGE_GQRX depends on BR2_INSTALL_LIBSTDCPP # boost depends on BR2_TOOLCHAIN_HAS_THREADS # boost depends on BR2_USE_WCHAR # boost + depends on BR2_TOOLCHAIN_HAS_SYNC_4 || BR2_TOOLCHAIN_HAS_ATOMIC depends on BR2_PACKAGE_QT5 depends on !BR2_PACKAGE_PYTHON3 select BR2_PACKAGE_BOOST diff --git a/package/gqrx/gqrx.mk b/package/gqrx/gqrx.mk index b51bb23eaf..d93c07d10c 100644 --- a/package/gqrx/gqrx.mk +++ b/package/gqrx/gqrx.mk @@ -12,4 +12,10 @@ GQRX_DEPENDENCIES = boost gnuradio gr-osmosdr qt5base qt5svg GQRX_CONF_OPTS = -DLINUX_AUDIO_BACKEND=Gr-audio +# gqrx can use __atomic builtins, so we need to link with +# libatomic when available +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +GQRX_CONF_OPTS += -DCMAKE_EXE_LINKER_FLAGS=-latomic +endif + $(eval $(cmake-package)) -- 2.30.2