config BR2_PACKAGE_MINIDLNA
	bool "minidlna"
	depends on !BR2_STATIC_LIBS
	depends on BR2_USE_WCHAR # flac
	depends on BR2_USE_MMU # fork
	depends on BR2_TOOLCHAIN_HAS_THREADS
	depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
	select BR2_PACKAGE_FFMPEG
	select BR2_PACKAGE_FLAC
	select BR2_PACKAGE_LIBVORBIS # selects libogg
	select BR2_PACKAGE_LIBOGG
	select BR2_PACKAGE_LIBID3TAG # selects zlib
	select BR2_PACKAGE_LIBEXIF
	select BR2_PACKAGE_JPEG
	select BR2_PACKAGE_SQLITE
	help
	  MiniDLNA (aka ReadyDLNA) is server software with the aim of
	  being fully compliant with DLNA/UPnP-AV clients.

	  http://minidlna.sourceforge.net/

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