config BR2_PACKAGE_CURLFTPFS
	bool "curlftpfs (FUSE)"
	select BR2_PACKAGE_LIBFUSE
	select BR2_PACKAGE_LIBGLIB2
	select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE
	select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
	select BR2_PACKAGE_OPENSSL
	select BR2_PACKAGE_LIBCURL
	depends on BR2_USE_WCHAR # glib2
	depends on BR2_TOOLCHAIN_HAS_THREADS # libfuse, glib2
	depends on BR2_USE_MMU # libfuse, glib2
	depends on !BR2_STATIC_LIBS # libfuse
	help
	  CurlFtpFS is a filesystem for accessing FTP hosts based on FUSE
	  and libcurl.

	  http://curlftpfs.sourceforge.net/

comment "curlftpfs needs a toolchain w/ wchar, threads, dynamic library"
	depends on BR2_USE_MMU
	depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
