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_LARGEFILE
	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/ largefile, wchar, threads, dynamic library"
	depends on BR2_USE_MMU
	depends on !BR2_LARGEFILE || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
