config BR2_PACKAGE_USBGUARD
	bool "usbguard"
	depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS # protobuf
	depends on BR2_INSTALL_LIBSTDCPP # protobuf
	depends on BR2_TOOLCHAIN_HAS_THREADS # libqb, protobuf
	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # C++17 filesystem
	depends on !BR2_STATIC_LIBS # libqb, protobuf
	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
	help
	  The USBGuard software framework

	  Install a custom accept/deny list in /etc/usbguard/rules.conf
	  (e.g. using an overlay). This file can be generated on the
	  target using "usbguard generate-policy".

	  https://usbguard.github.io/

comment "usbguard needs a toolchain w/ C++, threads, dynamic library, gcc >= 8"
	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS \
		|| BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_8
	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
