menuconfig BR2_PACKAGE_MPD bool "mpd" depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_WCHAR # boost depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU # fork depends on BR2_TOOLCHAIN_HAS_ATOMIC depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # C++17 depends on BR2_HOST_GCC_AT_LEAST_8 # C++17 select BR2_PACKAGE_BOOST select BR2_PACKAGE_FMT select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE help MPD is a flexible, powerful, server-side application for playing music. Through plugins and libraries it can play a variety of sound files while being controlled by its network protocol. https://www.musicpd.org if BR2_PACKAGE_MPD comment "Archive plugins" config BR2_PACKAGE_MPD_BZIP2 bool "bzip2" select BR2_PACKAGE_BZIP2 help Enable bzip2 archive support. config BR2_PACKAGE_MPD_SQLITE bool "sqlite" select BR2_PACKAGE_SQLITE help Enable sqlite database support. If you don't use sqlite it will use an ASCII database. config BR2_PACKAGE_MPD_ZZIP bool "zzip" select BR2_PACKAGE_ZZIPLIB help Enable ZIP archive support. comment "Commercial services" config BR2_PACKAGE_MPD_QOBUZ bool "qobuz" depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS select BR2_PACKAGE_MPD_CURL select BR2_PACKAGE_LIBGCRYPT select BR2_PACKAGE_YAJL help Play songs from the commercial streaming service Qobuz. config BR2_PACKAGE_MPD_SOUNDCLOUD bool "soundcloud" select BR2_PACKAGE_MPD_CURL select BR2_PACKAGE_YAJL help Enable soundcloud.com playlist support. comment "Converter plugins" config BR2_PACKAGE_MPD_LIBSAMPLERATE bool "libsamplerate" select BR2_PACKAGE_LIBSAMPLERATE help Enable libsamplerate input support. Select this for software sample rate conversion. config BR2_PACKAGE_MPD_LIBSOXR bool "libsoxr" select BR2_PACKAGE_LIBSOXR help Enable libsoxr resampler support. The SoX Resampler library performs software sample-rate conversion. comment "Decoder plugins" config BR2_PACKAGE_MPD_DSD bool "dsd" help Enable Digital Speech Decoder (DSD) support to play audio files encoded in a digital speech format. config BR2_PACKAGE_MPD_FAAD2 bool "faad2" select BR2_PACKAGE_FAAD2 help Enable faad2 input support. Select this if you want to play back MP4/AAC files. config BR2_PACKAGE_MPD_FFMPEG bool "ffmpeg" depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS select BR2_PACKAGE_FFMPEG help Enable ffmpeg input support. Select this if you want to play back files supported by ffmpeg. config BR2_PACKAGE_MPD_FLAC bool "flac" select BR2_PACKAGE_FLAC help Enable flac input/streaming support. Select this if you want to play back FLAC files. config BR2_PACKAGE_MPD_FLUIDSYNTH bool "fluidsynth" depends on !BR2_STATIC_LIBS select BR2_PACKAGE_FLUIDSYNTH help Enable fluidsynth MIDI decoder support. comment "fluidsynth support needs a toolchain w/ dynamic library" depends on BR2_STATIC_LIBS config BR2_PACKAGE_MPD_LIBSNDFILE bool "libsndfile" select BR2_PACKAGE_LIBSNDFILE help Enable libsndfile input/streaming support. Select this if you want to play back WAV files. config BR2_PACKAGE_MPD_MAD bool "mad" default y select BR2_PACKAGE_LIBID3TAG select BR2_PACKAGE_LIBMAD help Enable mad input support. Select this if you want to play back MP3 files. config BR2_PACKAGE_MPD_MODPLUG bool "modplug" select BR2_PACKAGE_LIBMODPLUG help Enable Modplug decoder support. config BR2_PACKAGE_MPD_MPG123 bool "mpg123" select BR2_PACKAGE_LIBID3TAG select BR2_PACKAGE_MPG123 help Enable mpg123 input support. Select this if you want to play back MP3 files. config BR2_PACKAGE_MPD_MUSEPACK bool "musepack" select BR2_PACKAGE_LIBCUEFILE select BR2_PACKAGE_LIBREPLAYGAIN select BR2_PACKAGE_MUSEPACK help Enable musepack input support. Select this if you want to play back MPC files. config BR2_PACKAGE_MPD_OPUS bool "opus" select BR2_PACKAGE_OPUS select BR2_PACKAGE_LIBOGG help Enable opus input support. Select this if you want to play back OPUS encoded files. config BR2_PACKAGE_MPD_SIDPLAY bool "sidplay" select BR2_PACKAGE_LIBSIDPLAY2 help Enable C64 SID support. config BR2_PACKAGE_MPD_TREMOR bool "tremor" depends on !BR2_PACKAGE_MPD_VORBIS select BR2_PACKAGE_LIBOGG select BR2_PACKAGE_TREMOR help Enable vorbis input support. Select this if you want to play back OGG files on softfloat targets. config BR2_PACKAGE_MPD_VORBIS bool "vorbis" select BR2_PACKAGE_LIBOGG select BR2_PACKAGE_LIBVORBIS help Enable vorbis input/streaming support. Select this if you want to play back OGG files on hardfloat targets. config BR2_PACKAGE_MPD_WAVPACK bool "wavpack" select BR2_PACKAGE_WAVPACK help Enable wavpack input support. Select this if you want to play back WV files. comment "Encoder plugins" config BR2_PACKAGE_MPD_LAME bool "lame" select BR2_PACKAGE_LAME help Enable lame (mp3) encoding support. config BR2_PACKAGE_MPD_TWOLAME bool "twolame" select BR2_PACKAGE_TWOLAME help Enable TwoLAME mp2 encoding. comment "Input plugins" config BR2_PACKAGE_MPD_CDIO_PARANOIA bool "cdio-paranoia" select BR2_PACKAGE_LIBCDIO_PARANOIA help Enable cdio-paranoia support. config BR2_PACKAGE_MPD_CURL bool "curl" select BR2_PACKAGE_LIBCURL help Enable curl streaming (http) support. config BR2_PACKAGE_MPD_LIBMMS bool "mms" select BR2_PACKAGE_LIBMMS help Enable MMS support. config BR2_PACKAGE_MPD_LIBNFS bool "nfs" # libnfs -> libtirpc depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC || BR2_TOOLCHAIN_HAS_THREADS select BR2_PACKAGE_LIBNFS help Enable Network File System (NFS) support. comment "nfs support needs a toolchain w/ threads support" depends on !(BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_HAS_NATIVE_RPC) comment "samba support needs a glibc toolchain w/ dynamic library, RPC" depends on !BR2_nios2 depends on !BR2_TOOLCHAIN_USES_GLIBC || BR2_STATIC_LIBS || \ !BR2_TOOLCHAIN_HAS_NATIVE_RPC config BR2_PACKAGE_MPD_LIBSMBCLIENT bool "samba" depends on !BR2_nios2 # samba depends on BR2_TOOLCHAIN_USES_GLIBC depends on !BR2_STATIC_LIBS depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC depends on BR2_TOOLCHAIN_HAS_SYNC_4 select BR2_PACKAGE_SAMBA4 help Enable Samba support. comment "Output plugins" config BR2_PACKAGE_MPD_ALSA bool "alsa" default y select BR2_PACKAGE_ALSA_LIB select BR2_PACKAGE_ALSA_LIB_PCM select BR2_PACKAGE_ALSA_LIB_MIXER help Enable alsa output support. config BR2_PACKAGE_MPD_AO bool "ao" select BR2_PACKAGE_LIBAO help Enable libao output support. config BR2_PACKAGE_MPD_HTTPD_OUTPUT bool "httpd output" help Enable httpd output support. config BR2_PACKAGE_MPD_JACK2 bool "jack2" depends on !BR2_STATIC_LIBS # jack2 depends on BR2_TOOLCHAIN_HAS_SYNC_4 select BR2_PACKAGE_JACK2 help Enable jack output support. comment "jack support needs a toolchain w/ dynamic library" depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_STATIC_LIBS config BR2_PACKAGE_MPD_OPENAL bool "openal" depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL select BR2_PACKAGE_OPENAL help Enable OpenAL output support. comment "openal support needs a toolchain w/ NPTL" depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL config BR2_PACKAGE_MPD_OSS bool "oss" help Enable OSS (Open Sound System) output support. config BR2_PACKAGE_MPD_PULSEAUDIO bool "pulseaudio" depends on BR2_PACKAGE_PULSEAUDIO_HAS_ATOMIC depends on BR2_USE_WCHAR depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS depends on BR2_USE_MMU select BR2_PACKAGE_PULSEAUDIO help Enable pulseaudio output support. comment "pulseaudio support needs a toolchain w/ threads, wchar, dynamic library" depends on BR2_USE_MMU depends on BR2_PACKAGE_PULSEAUDIO_HAS_ATOMIC depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || !BR2_USE_WCHAR config BR2_PACKAGE_MPD_SHOUTCAST bool "shoutcast" select BR2_PACKAGE_LIBSHOUT help Enable shoutcast streaming output support. comment "Miscellaneous plugins" config BR2_PACKAGE_MPD_AVAHI_SUPPORT bool "avahi (zeroconf) support" depends on !BR2_STATIC_LIBS # avahi select BR2_PACKAGE_AVAHI select BR2_PACKAGE_AVAHI_DAEMON select BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY help Enable Avahi (zeroconf) support. Select this for multicast DNS/DNS-SD service discovery support. This allows MPD to publish service information on a local network. comment "avahi support needs a toolchain w/ dynamic library" depends on BR2_STATIC_LIBS config BR2_PACKAGE_MPD_IO_URING bool "io_uring" depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_1 select BR2_PACKAGE_LIBURING help Asynchronous I/O using kernel io_uring subsystem comment "io_uring support needs a toolchain w/ headers >= 5.1" depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_1 config BR2_PACKAGE_MPD_LIBMPDCLIENT bool "libmpdclient" select BR2_PACKAGE_LIBMPDCLIENT help Enable libmpdclient support. config BR2_PACKAGE_MPD_NEIGHBOR_DISCOVERY_SUPPORT bool "neighbor discovery support" depends on BR2_PACKAGE_MPD_LIBSMBCLIENT || !BR2_PACKAGE_MPD_UPNP_DISABLED help Enable support for neighbor discovery. This option can be used in conjunction with the smbclient plugin to provide a list of SMB/CIFS servers or with the UPnP plugin to provide a list of UPnP servers on the local network. The neighbor plugin needs configuration in mpd.conf. For further information take a look at the MPD documentation. config BR2_PACKAGE_MPD_TCP bool "tcp sockets" default y help Enable MPD to listen on tcp sockets. You want this on if MPD and the client(s) work on different machines (the usual scenario). choice prompt "UPnP" default BR2_PACKAGE_MPD_UPNP_PUPNP if BR2_PACKAGE_MPD_UPNP # legacy default BR2_PACKAGE_MPD_UPNP_DISABLED help Enable MPD to access a UPnP based media server. For further information, see https://www.lesbonscomptes.com/upmpdcli/pages/upmpdcli-or-mpdupnp.html config BR2_PACKAGE_MPD_UPNP_PUPNP bool "pupnp" select BR2_PACKAGE_EXPAT select BR2_PACKAGE_LIBUPNP select BR2_PACKAGE_MPD_CURL help Provides UPnP database access through libupnp (the legacy Portable SDK for UPnP devices). Introduces least additional dependencies. config BR2_PACKAGE_MPD_UPNP_NPUPNP bool "npupnp" select BR2_PACKAGE_LIBNPUPNP select BR2_PACKAGE_MPD_CURL help Provides UPnP database access through libnpupnp (a C++ reimplementation of the Portable UPnP library). This implementation is more modern, but also brings additional features not needed in this context, thus consuming more space. config BR2_PACKAGE_MPD_UPNP_DISABLED bool "disabled" help No UPnP client functionality. endchoice comment "Tag plugins" config BR2_PACKAGE_MPD_ID3TAG bool "id3tag" select BR2_PACKAGE_LIBID3TAG help Enable ID3 support. endif comment "mpd needs a toolchain w/ C++, threads, wchar, gcc >= 8, host gcc >= 8" depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_ATOMIC depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ !BR2_TOOLCHAIN_HAS_THREADS || \ !BR2_TOOLCHAIN_GCC_AT_LEAST_8 || \ !BR2_HOST_GCC_AT_LEAST_8