From ac5b6028cd0a93c9b271d8a8b6d2a95a5aebc55d Mon Sep 17 00:00:00 2001 From: Fabrice Fontaine Date: Sat, 21 May 2022 22:43:48 +0200 Subject: [PATCH] package/qpid-proton: needs C++ and threads qpid-proton needs C++ (and so threads due to proactor) to avoid the following build failure: CMake Error at /nvmedata/autobuild/instance-3/output-1/host/share/cmake-3.18/Modules/CMakeTestCXXCompiler.cmake:59 (message): The C++ compiler "/usr/bin/c++" is not able to compile a simple test program. C++ check can't easily be removed: https://github.com/apache/qpid-proton/pull/366 Fixes: - http://autobuild.buildroot.org/results/76f8deccc9c4eee29eddf42586cc28e96eec0827 Signed-off-by: Fabrice Fontaine Reviewed-by: Luca Ceresoli Signed-off-by: Yann E. MORIN (cherry picked from commit f255a32211a3778e3cbc7ecef6ee2edec850f27d) Signed-off-by: Peter Korsgaard --- package/qpid-proton/Config.in | 7 +++++-- package/qpid-proton/qpid-proton.mk | 15 +-------------- 2 files changed, 6 insertions(+), 16 deletions(-) diff --git a/package/qpid-proton/Config.in b/package/qpid-proton/Config.in index b49a2afa7e..adddc6eca0 100644 --- a/package/qpid-proton/Config.in +++ b/package/qpid-proton/Config.in @@ -1,6 +1,8 @@ config BR2_PACKAGE_QPID_PROTON bool "qpid-proton" + depends on BR2_INSTALL_LIBSTDCPP depends on !BR2_STATIC_LIBS # build a shared library + depends on BR2_TOOLCHAIN_HAS_THREADS select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBUUID help @@ -13,5 +15,6 @@ config BR2_PACKAGE_QPID_PROTON https://qpid.apache.org/proton/ -comment "qpid-proton needs a toolchain w/ dynamic library" - depends on BR2_STATIC_LIBS +comment "qpid-proton needs a toolchain w/ C++, dynamic library, threads" + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/qpid-proton/qpid-proton.mk b/package/qpid-proton/qpid-proton.mk index 103cf9fd31..fae6ecc413 100644 --- a/package/qpid-proton/qpid-proton.mk +++ b/package/qpid-proton/qpid-proton.mk @@ -23,6 +23,7 @@ QPID_PROTON_DEPENDENCIES = \ # go language binding is enabled when host-go is present # For now, disable all of them. QPID_PROTON_CONF_OPTS = \ + -DBUILD_CPP=ON \ -DBUILD_GO=OFF \ -DBUILD_PYTHON=OFF \ -DBUILD_RUBY=OFF \ @@ -31,20 +32,6 @@ QPID_PROTON_CONF_OPTS = \ -DENABLE_WARNING_ERROR=OFF \ -DPYTHON_EXECUTABLE=$(HOST_DIR)/bin/python3 -# epoll proactor unconditionally uses pthread and cpp (C++) bindings -# unconditionally use proactor -ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) -ifeq ($(BR2_INSTALL_LIBSTDCPP),y) -QPID_PROTON_CONF_OPTS += -DBUILD_CPP=ON -else -QPID_PROTON_CONF_OPTS += -DBUILD_CPP=OFF -endif -else -QPID_PROTON_CONF_OPTS += \ - -DBUILD_CPP=OFF \ - -DPROACTOR=none -endif - ifeq ($(BR2_PACKAGE_JSONCPP),y) QPID_PROTON_DEPENDENCIES += jsoncpp QPID_PROTON_CONF_OPTS += -DENABLE_JSONCPP=ON