config BR2_PACKAGE_DOVECOT
	bool "dovecot"
	depends on !BR2_STATIC_LIBS
	depends on BR2_USE_MMU # fork()
	select BR2_PACKAGE_OPENSSL
	select BR2_PACKAGE_ZLIB
	help
	  Dovecot is an open source IMAP and POP3 email server for
	  Linux/UNIX- like systems, written with security primarily in
	  mind. Dovecot is an excellent choice for both small and large
	  installations. It's fast, simple to set up, requires no
	  special administration and it uses very little memory.

	  http://www.dovecot.org

if BR2_PACKAGE_DOVECOT

config BR2_PACKAGE_DOVECOT_MYSQL
	bool "mysql support"
	depends on BR2_INSTALL_LIBSTDCPP # mysql
	depends on BR2_TOOLCHAIN_HAS_THREADS # mysql
	select BR2_PACKAGE_MYSQL
	help
	  Enable MySQL support.

comment "mysql support needs a toolchain w/ C++, threads"
	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS

config BR2_PACKAGE_DOVECOT_SQLITE
	bool "sqlite support"
	select BR2_PACKAGE_SQLITE
	help
	  Enable SQLite support.

source package/dovecot-pigeonhole/Config.in

endif # BR2_PACKAGE_DOVECOT

comment "dovecot needs a toolchain w/ dynamic library"
	depends on BR2_USE_MMU
	depends on BR2_STATIC_LIBS
