package/usbguard: needs std::future
authorFabrice Fontaine <fontaine.fabrice@gmail.com>
Tue, 10 Aug 2021 08:27:44 +0000 (10:27 +0200)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Thu, 12 Aug 2021 21:43:14 +0000 (23:43 +0200)
usbguard needs std::future to avoid the following build failure raised
since the addition of the package in commit
fbff7d7289cc95db991184f890f4ca1fcf8a101e:

In file included from src/Library/IPCClientPrivate.hpp:37:0,
                 from src/Library/IPCClientPrivate.cpp:24:
/home/buildroot/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/arm-none-linux-gnueabi/include/c++/4.8.3/future:122:11: error: declaration of 'class std::promise<std::unique_ptr<google::protobuf::Message> >'
     class promise;
           ^
src/Library/IPCClientPrivate.cpp: In member function 'usbguard::IPC::MessagePointer usbguard::IPCClientPrivate::qbIPCSendRecvMessage(usbguard::IPC::MessageType&)':
src/Library/IPCClientPrivate.cpp:244:26: error: invalid use of incomplete type 'class std::promise<std::unique_ptr<google::protobuf::Message> >'
     auto future = promise.get_future();
                          ^
Fixes:
 - http://autobuild.buildroot.org/results/1c4e0dab5917e5559a97f7cf7a99e30a2b561fc9

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

index 41f19dc1a07b1a141298a444b1150295f10cb4b3..ca6d52034b6a86d37f01bcc1a8735af4b18c926c 100644 (file)
@@ -6,6 +6,7 @@ config BR2_PACKAGE_USBGUARD
        depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # protobuf
        depends on !BR2_STATIC_LIBS # libqb, protobuf
        depends on !BR2_TOOLCHAIN_USES_MUSL
+       depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # std::future
        select BR2_PACKAGE_PROTOBUF
        select BR2_PACKAGE_LIBQB
        select BR2_PACKAGE_LIBSODIUM if !BR2_PACKAGE_LIBGCRYPT && !BR2_PACKAGE_LIBOPENSSL
@@ -23,3 +24,7 @@ comment "usbguard needs a glibc or uClibc toolchain w/ C++, threads, dynamic lib
                || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 \
                || BR2_TOOLCHAIN_USES_MUSL
        depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS
+
+comment "usbguard needs a toolchain not affected by GCC bug 64735"
+       depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS
+       depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735