cutelyst: link with libatomic when needed
authorFabrice Fontaine <fontaine.fabrice@gmail.com>
Tue, 28 Aug 2018 20:59:24 +0000 (22:59 +0200)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Tue, 28 Aug 2018 21:08:49 +0000 (23:08 +0200)
On some architectures, atomic binutils 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

This is often for example the case on sparcv8 32 bit.

This atomic dependency is due to Qt >= 5.8, pkconfig can't be used as
Qt5 pc files does not mention this dependency

Fixes:
 - http://autobuild.buildroot.net/results/9e307ab9c7067b26d7b33a572204394808e25772

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
package/cutelyst/cutelyst.mk

index e8695a7b3ac1c0b694e27d4f2ab90aa243d14825..8e117e32863c968ce988b12c6def1f1e8854759a 100644 (file)
@@ -16,6 +16,11 @@ CUTELYST_CONF_OPTS += \
        -DPLUGIN_CSRFPROTECTION=ON \
        -DPLUGIN_VIEW_GRANTLEE=OFF
 
+# Qt 5.8 needs atomics, which on various architectures are in -latomic
+ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC)$(BR2_PACKAGE_QT5_VERSION_LATEST),yy)
+CUTELYST_CONF_OPTS += -DCMAKE_CXX_FLAGS="$(TARGET_CXXFLAGS) -latomic"
+endif
+
 ifeq ($(BR2_PACKAGE_LIBPWQUALITY),y)
 CUTELYST_CONF_OPTS += -DPLUGIN_VALIDATOR_PWQUALITY=ON
 CUTELYST_DEPENDENCIES += libpwquality