config BR2_PACKAGE_POCO
	bool "poco"
	depends on BR2_INSTALL_LIBSTDCPP
	depends on BR2_USE_WCHAR
	# pthread_condattr_setclock
	depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
	depends on !BR2_STATIC_LIBS # dlopen()
	depends on !(BR2_arc || BR2_microblaze || BR2_mipsel \
		|| BR2_or1k || BR2_riscv || BR2_xtensa)
	select BR2_PACKAGE_ZLIB
	select BR2_PACKAGE_PCRE
	help
	  The C++ Portable Components Libraries

	  http://pocoproject.org

if BR2_PACKAGE_POCO

comment "poco components"

config BR2_PACKAGE_POCO_JSON
	bool "json"

config BR2_PACKAGE_POCO_XML
	bool "xml"
	select BR2_PACKAGE_EXPAT

config BR2_PACKAGE_POCO_UTIL
	bool "util"
	select BR2_PACKAGE_POCO_XML

config BR2_PACKAGE_POCO_NET
	bool "net"

config BR2_PACKAGE_POCO_CRYPTO
	bool "crypto"
	select BR2_PACKAGE_OPENSSL

config BR2_PACKAGE_POCO_NETSSL_OPENSSL
	bool "netssl_openssl"
	select BR2_PACKAGE_POCO_NET
	select BR2_PACKAGE_POCO_CRYPTO
	select BR2_PACKAGE_POCO_UTIL
	select BR2_PACKAGE_OPENSSL

config BR2_PACKAGE_POCO_ZIP
	bool "zip"
	select BR2_PACKAGE_POCO_XML
	select BR2_PACKAGE_POCO_NET
	select BR2_PACKAGE_POCO_UTIL

config BR2_PACKAGE_POCO_CPP_PARSER
	bool "cpp_parser"

config BR2_PACKAGE_POCO_PDF
	bool "pdf"

config BR2_PACKAGE_POCO_REDIS
	bool "redis"
	select BR2_PACKAGE_POCO_NET

config BR2_PACKAGE_POCO_MONGODB
	bool "mongodb"
	select BR2_PACKAGE_POCO_NET

config BR2_PACKAGE_POCO_DATA
	bool

config BR2_PACKAGE_POCO_DATA_SQLITE
	bool "sqlite"
	select BR2_PACKAGE_POCO_DATA
	select BR2_PACKAGE_SQLITE

config BR2_PACKAGE_POCO_DATA_MYSQL
	bool "mysql"
	depends on BR2_USE_MMU # mysql
	select BR2_PACKAGE_POCO_DATA
	select BR2_PACKAGE_MYSQL

endif # BR2_PACKAGE_POCO

comment "poco needs a toolchain w/ wchar, NPTL, C++, dynamic library"
	depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP \
		|| !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS
	depends on !(BR2_arc || BR2_microblaze || BR2_mipsel \
		|| BR2_or1k || BR2_xtensa)
