config BR2_PACKAGE_MPV
	bool "mpv"
	depends on BR2_TOOLCHAIN_HAS_THREADS
	depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
	depends on BR2_TOOLCHAIN_HAS_ATOMIC
	select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
	select BR2_PACKAGE_FFMPEG
	select BR2_PACKAGE_FFMPEG_SWSCALE
	select BR2_PACKAGE_ZLIB
	select BR2_PACKAGE_WAYLAND_PROTOCOLS if BR2_PACKAGE_WAYLAND
	# Select xkbcommon for wayland to avoid being mysterious
	select BR2_PACKAGE_LIBXKBCOMMON if BR2_PACKAGE_WAYLAND
	# Select all necessary X11 dependencies if X.org is enabled
	select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7
	select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_XORG7
	select BR2_PACKAGE_XLIB_LIBXINERAMA if BR2_PACKAGE_XORG7
	select BR2_PACKAGE_XLIB_LIBXSCRNSAVER if BR2_PACKAGE_XORG7
	select BR2_PACKAGE_XLIB_LIBXRANDR if BR2_PACKAGE_XORG7
	help
	  mpv is a fork of mplayer2 and MPlayer. It shares some features
	  with the former projects while introducing many more.

	  https://mpv.io/

comment "mpv needs a toolchain w/ threads, gcc >= 4.5"
	depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
	depends on BR2_TOOLCHAIN_HAS_ATOMIC
	depends on !BR2_TOOLCHAIN_HAS_THREADS || \
		!BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
