config BR2_PACKAGE_LIBSIGROK
	bool "libsigrok"
	select BR2_PACKAGE_LIBZIP
	select BR2_PACKAGE_LIBGLIB2
	# libglib2
	depends on BR2_USE_WCHAR
	depends on BR2_TOOLCHAIN_HAS_THREADS
	depends on BR2_USE_MMU
	# std=c11
	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
	help
	  Libsigrok is a shared library written in C, which provides
	  the basic hardware access drivers for logic analyzers and
	  other supported devices, as well as input/output file format
	  support.

	  This library is a part of the sigrok software suite.

	  http://sigrok.org/wiki/Libsigrok

if BR2_PACKAGE_LIBSIGROK

config BR2_PACKAGE_LIBSIGROKCXX
	bool "build C++ bindings"
	select BR2_PACKAGE_GLIBMM
	depends on BR2_INSTALL_LIBSTDCPP
	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # glibmm
	help
	  Build libsigrok C++ bindings as well.

comment "C++ bindings need a toolchain w/ C++, gcc >= 4.8"
	depends on !BR2_INSTALL_LIBSTDCPP || \
		!BR2_TOOLCHAIN_GCC_AT_LEAST_4_8

endif

comment "libsigrok needs a toolchain w/ wchar, threads, gcc >= 4.7"
	depends on BR2_USE_MMU
	depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
