config BR2_PACKAGE_LIBIIO
	bool "libiio"
	select BR2_PACKAGE_LIBIIO_LOCAL_BACKEND if !BR2_PACKAGE_LIBIIO_XML_BACKEND
	help
	  Libiio is a library to ease the development of software
	  interfacing Linux Industrial I/O (IIO) devices.

	  http://wiki.analog.com/resources/tools-software/linux-software/libiio

if BR2_PACKAGE_LIBIIO

config BR2_PACKAGE_LIBIIO_LOCAL_BACKEND
	bool "Local backend"
	default y
	help
	  Enable the local backend of the library.

config BR2_PACKAGE_LIBIIO_XML_BACKEND
	bool "XML backend"
	default y
	select BR2_PACKAGE_LIBXML2
	help
	  Enable the XML backend of the library.

config BR2_PACKAGE_LIBIIO_NETWORK_BACKEND
	bool "Network backend"
	default y
	select BR2_PACKAGE_LIBIIO_XML_BACKEND
	help
	  Enable the network backend of the library.

config BR2_PACKAGE_LIBIIO_USB_BACKEND
	bool "USB backend"
	default y
	depends on BR2_TOOLCHAIN_HAS_THREADS # from libusb
	select BR2_PACKAGE_LIBIIO_XML_BACKEND
	select BR2_PACKAGE_LIBUSB
	help
	  Enable the USB backend of the library.

comment "The USB backend needs a toolchain w/ threads"
	depends on !BR2_TOOLCHAIN_HAS_THREADS

config BR2_PACKAGE_LIBIIO_SERIAL_BACKEND
	bool "Serial backend"
	default y
	select BR2_PACKAGE_LIBIIO_XML_BACKEND
	select BR2_PACKAGE_LIBSERIALPORT
	help
	  Enable the serial backend of the library.

config BR2_PACKAGE_LIBIIO_IIOD
	bool "IIO Daemon"
	default y
	depends on BR2_TOOLCHAIN_HAS_THREADS
	select BR2_PACKAGE_LIBIIO_LOCAL_BACKEND
	help
	  Install the IIO Daemon.

config BR2_PACKAGE_LIBIIO_IIOD_USBD
	bool "USB support in the IIO Daemon (FunctionFS)"
	depends on BR2_PACKAGE_LIBIIO_IIOD
	depends on BR2_PACKAGE_LIBAIO_ARCH_SUPPORTS
	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18 # usb_functionfs_descs_head_v2
	select BR2_PACKAGE_LIBAIO
	help
	  Add support for USB through FunctionFS with IIOD.

comment "USB support in the IIO Daemon requires libaio, headers >= 3.18"
	depends on BR2_PACKAGE_LIBIIO_IIOD
	depends on !BR2_PACKAGE_LIBAIO_ARCH_SUPPORTS || \
		   !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18

comment "IIO Daemon needs a toolchain w/ threads"
	depends on !BR2_TOOLCHAIN_HAS_THREADS

config BR2_PACKAGE_LIBIIO_TESTS
	bool "Install test programs"
	depends on BR2_TOOLCHAIN_HAS_THREADS
	help
	  Install the test programs (iio_info, iio_genxml, iio_readdev).

comment "IIO test programs need a toolchain w/ threads"
	depends on !BR2_TOOLCHAIN_HAS_THREADS

config BR2_PACKAGE_LIBIIO_BINDINGS_CSHARP
	bool "Install C# bindings"
	depends on BR2_PACKAGE_MONO
	help
	  Install the C# bindings.

config BR2_PACKAGE_LIBIIO_BINDINGS_PYTHON
	bool "Install Python bindings"
	depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3
	help
	  Install the Python bindings.

endif