1menuconfig BR2_PACKAGE_MPD 2 bool "mpd" 3 depends on BR2_INSTALL_LIBSTDCPP 4 depends on BR2_USE_WCHAR # boost 5 depends on BR2_TOOLCHAIN_HAS_THREADS 6 depends on BR2_USE_MMU # fork 7 depends on BR2_TOOLCHAIN_HAS_ATOMIC 8 depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # C++17 9 depends on BR2_HOST_GCC_AT_LEAST_8 # C++17 10 select BR2_PACKAGE_BOOST 11 select BR2_PACKAGE_FMT 12 select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE 13 help 14 MPD is a flexible, powerful, server-side application 15 for playing music. Through plugins and libraries 16 it can play a variety of sound files while being 17 controlled by its network protocol. 18 19 https://www.musicpd.org 20 21if BR2_PACKAGE_MPD 22 23comment "Archive plugins" 24 25config BR2_PACKAGE_MPD_BZIP2 26 bool "bzip2" 27 select BR2_PACKAGE_BZIP2 28 help 29 Enable bzip2 archive support. 30 31config BR2_PACKAGE_MPD_SQLITE 32 bool "sqlite" 33 select BR2_PACKAGE_SQLITE 34 help 35 Enable sqlite database support. 36 If you don't use sqlite it will use an ASCII database. 37 38config BR2_PACKAGE_MPD_ZZIP 39 bool "zzip" 40 select BR2_PACKAGE_ZZIPLIB 41 help 42 Enable ZIP archive support. 43 44comment "Commercial services" 45 46config BR2_PACKAGE_MPD_QOBUZ 47 bool "qobuz" 48 depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS 49 select BR2_PACKAGE_MPD_CURL 50 select BR2_PACKAGE_LIBGCRYPT 51 select BR2_PACKAGE_YAJL 52 help 53 Play songs from the commercial streaming service Qobuz. 54 55config BR2_PACKAGE_MPD_SOUNDCLOUD 56 bool "soundcloud" 57 select BR2_PACKAGE_MPD_CURL 58 select BR2_PACKAGE_YAJL 59 help 60 Enable soundcloud.com playlist support. 61 62comment "Converter plugins" 63 64config BR2_PACKAGE_MPD_LIBSAMPLERATE 65 bool "libsamplerate" 66 select BR2_PACKAGE_LIBSAMPLERATE 67 help 68 Enable libsamplerate input support. 69 Select this for software sample rate conversion. 70 71config BR2_PACKAGE_MPD_LIBSOXR 72 bool "libsoxr" 73 select BR2_PACKAGE_LIBSOXR 74 help 75 Enable libsoxr resampler support. 76 The SoX Resampler library performs software sample-rate 77 conversion. 78 79comment "Decoder plugins" 80 81config BR2_PACKAGE_MPD_DSD 82 bool "dsd" 83 help 84 Enable Digital Speech Decoder (DSD) support to play audio 85 files encoded in a digital speech format. 86 87config BR2_PACKAGE_MPD_FAAD2 88 bool "faad2" 89 select BR2_PACKAGE_FAAD2 90 help 91 Enable faad2 input support. 92 Select this if you want to play back MP4/AAC files. 93 94config BR2_PACKAGE_MPD_FFMPEG 95 bool "ffmpeg" 96 depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS 97 select BR2_PACKAGE_FFMPEG 98 help 99 Enable ffmpeg input support. 100 Select this if you want to play back files supported by 101 ffmpeg. 102 103config BR2_PACKAGE_MPD_FLAC 104 bool "flac" 105 select BR2_PACKAGE_FLAC 106 help 107 Enable flac input/streaming support. 108 Select this if you want to play back FLAC files. 109 110config BR2_PACKAGE_MPD_FLUIDSYNTH 111 bool "fluidsynth" 112 depends on !BR2_STATIC_LIBS 113 select BR2_PACKAGE_FLUIDSYNTH 114 help 115 Enable fluidsynth MIDI decoder support. 116 117comment "fluidsynth support needs a toolchain w/ dynamic library" 118 depends on BR2_STATIC_LIBS 119 120config BR2_PACKAGE_MPD_LIBSNDFILE 121 bool "libsndfile" 122 select BR2_PACKAGE_LIBSNDFILE 123 help 124 Enable libsndfile input/streaming support. 125 Select this if you want to play back WAV files. 126 127config BR2_PACKAGE_MPD_MAD 128 bool "mad" 129 default y 130 select BR2_PACKAGE_MPD_ID3TAG 131 select BR2_PACKAGE_LIBMAD 132 help 133 Enable mad input support. 134 Select this if you want to play back MP3 files. 135 136config BR2_PACKAGE_MPD_MODPLUG 137 bool "modplug" 138 select BR2_PACKAGE_LIBMODPLUG 139 help 140 Enable Modplug decoder support. 141 142config BR2_PACKAGE_MPD_MPG123 143 bool "mpg123" 144 select BR2_PACKAGE_MPD_ID3TAG 145 select BR2_PACKAGE_MPG123 146 help 147 Enable mpg123 input support. 148 Select this if you want to play back MP3 files. 149 150config BR2_PACKAGE_MPD_MUSEPACK 151 bool "musepack" 152 select BR2_PACKAGE_LIBCUEFILE 153 select BR2_PACKAGE_LIBREPLAYGAIN 154 select BR2_PACKAGE_MUSEPACK 155 help 156 Enable musepack input support. 157 Select this if you want to play back MPC files. 158 159config BR2_PACKAGE_MPD_OPUS 160 bool "opus" 161 select BR2_PACKAGE_OPUS 162 select BR2_PACKAGE_LIBOGG 163 help 164 Enable opus input support. 165 Select this if you want to play back OPUS encoded files. 166 167config BR2_PACKAGE_MPD_SIDPLAY 168 bool "sidplay" 169 select BR2_PACKAGE_LIBSIDPLAY2 170 help 171 Enable C64 SID support. 172 173config BR2_PACKAGE_MPD_TREMOR 174 bool "tremor" 175 depends on !BR2_PACKAGE_MPD_VORBIS 176 select BR2_PACKAGE_LIBOGG 177 select BR2_PACKAGE_TREMOR 178 help 179 Enable vorbis input support. 180 Select this if you want to play back OGG files on softfloat 181 targets. 182 183config BR2_PACKAGE_MPD_VORBIS 184 bool "vorbis" 185 select BR2_PACKAGE_LIBOGG 186 select BR2_PACKAGE_LIBVORBIS 187 help 188 Enable vorbis input/streaming support. 189 Select this if you want to play back OGG files on hardfloat 190 targets. 191 192config BR2_PACKAGE_MPD_WAVPACK 193 bool "wavpack" 194 select BR2_PACKAGE_WAVPACK 195 help 196 Enable wavpack input support. 197 Select this if you want to play back WV files. 198 199comment "Encoder plugins" 200 201config BR2_PACKAGE_MPD_LAME 202 bool "lame" 203 select BR2_PACKAGE_LAME 204 help 205 Enable lame (mp3) encoding support. 206 207config BR2_PACKAGE_MPD_TWOLAME 208 bool "twolame" 209 select BR2_PACKAGE_TWOLAME 210 help 211 Enable TwoLAME mp2 encoding. 212 213comment "Input plugins" 214 215config BR2_PACKAGE_MPD_CDIO_PARANOIA 216 bool "cdio-paranoia" 217 select BR2_PACKAGE_LIBCDIO_PARANOIA 218 help 219 Enable cdio-paranoia support. 220 221config BR2_PACKAGE_MPD_CURL 222 bool "curl" 223 select BR2_PACKAGE_LIBCURL 224 help 225 Enable curl streaming (http) support. 226 227config BR2_PACKAGE_MPD_LIBMMS 228 bool "mms" 229 select BR2_PACKAGE_LIBMMS 230 help 231 Enable MMS support. 232 233config BR2_PACKAGE_MPD_LIBNFS 234 bool "nfs" 235 # libnfs -> libtirpc 236 depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC || BR2_TOOLCHAIN_HAS_THREADS 237 select BR2_PACKAGE_LIBNFS 238 help 239 Enable Network File System (NFS) support. 240 241comment "nfs support needs a toolchain w/ threads support" 242 depends on !(BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_HAS_NATIVE_RPC) 243 244comment "samba support needs a glibc toolchain w/ dynamic library, RPC" 245 depends on !BR2_nios2 246 depends on !BR2_TOOLCHAIN_USES_GLIBC || BR2_STATIC_LIBS || \ 247 !BR2_TOOLCHAIN_HAS_NATIVE_RPC 248 249config BR2_PACKAGE_MPD_LIBSMBCLIENT 250 bool "samba" 251 depends on !BR2_nios2 # samba 252 depends on BR2_TOOLCHAIN_USES_GLIBC 253 depends on !BR2_STATIC_LIBS 254 depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC 255 depends on BR2_TOOLCHAIN_HAS_SYNC_4 256 select BR2_PACKAGE_SAMBA4 257 help 258 Enable Samba support. 259 260comment "Output plugins" 261 262config BR2_PACKAGE_MPD_ALSA 263 bool "alsa" 264 default y 265 select BR2_PACKAGE_ALSA_LIB 266 select BR2_PACKAGE_ALSA_LIB_PCM 267 select BR2_PACKAGE_ALSA_LIB_MIXER 268 help 269 Enable alsa output support. 270 271config BR2_PACKAGE_MPD_AO 272 bool "ao" 273 select BR2_PACKAGE_LIBAO 274 help 275 Enable libao output support. 276 277config BR2_PACKAGE_MPD_HTTPD_OUTPUT 278 bool "httpd output" 279 help 280 Enable httpd output support. 281 282config BR2_PACKAGE_MPD_JACK2 283 bool "jack2" 284 depends on !BR2_STATIC_LIBS # jack2 285 depends on BR2_TOOLCHAIN_HAS_SYNC_4 286 select BR2_PACKAGE_JACK2 287 help 288 Enable jack output support. 289 290comment "jack support needs a toolchain w/ dynamic library" 291 depends on BR2_TOOLCHAIN_HAS_SYNC_4 292 depends on BR2_STATIC_LIBS 293 294config BR2_PACKAGE_MPD_OPENAL 295 bool "openal" 296 depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS 297 depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL 298 select BR2_PACKAGE_OPENAL 299 help 300 Enable OpenAL output support. 301 302comment "openal support needs a toolchain w/ NPTL" 303 depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS 304 depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL 305 306config BR2_PACKAGE_MPD_OSS 307 bool "oss" 308 help 309 Enable OSS (Open Sound System) output support. 310 311config BR2_PACKAGE_MPD_PULSEAUDIO 312 bool "pulseaudio" 313 depends on BR2_PACKAGE_PULSEAUDIO_HAS_ATOMIC 314 depends on BR2_USE_WCHAR 315 depends on BR2_TOOLCHAIN_HAS_THREADS 316 depends on !BR2_STATIC_LIBS 317 depends on BR2_USE_MMU 318 select BR2_PACKAGE_PULSEAUDIO 319 help 320 Enable pulseaudio output support. 321 322comment "pulseaudio support needs a toolchain w/ threads, wchar, dynamic library" 323 depends on BR2_USE_MMU 324 depends on BR2_PACKAGE_PULSEAUDIO_HAS_ATOMIC 325 depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || !BR2_USE_WCHAR 326 327config BR2_PACKAGE_MPD_SHOUTCAST 328 bool "shoutcast" 329 select BR2_PACKAGE_LIBSHOUT 330 help 331 Enable shoutcast streaming output support. 332 333comment "Miscellaneous plugins" 334 335config BR2_PACKAGE_MPD_AVAHI_SUPPORT 336 bool "avahi (zeroconf) support" 337 depends on !BR2_STATIC_LIBS # avahi 338 select BR2_PACKAGE_AVAHI 339 select BR2_PACKAGE_AVAHI_DAEMON 340 select BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY 341 help 342 Enable Avahi (zeroconf) support. 343 Select this for multicast DNS/DNS-SD service discovery 344 support. This allows MPD to publish service information on a 345 local network. 346 347comment "avahi support needs a toolchain w/ dynamic library" 348 depends on BR2_STATIC_LIBS 349 350config BR2_PACKAGE_MPD_IO_URING 351 bool "io_uring" 352 depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_1 353 select BR2_PACKAGE_LIBURING 354 help 355 Asynchronous I/O using kernel io_uring subsystem 356 357comment "io_uring support needs a toolchain w/ headers >= 5.1" 358 depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_1 359 360config BR2_PACKAGE_MPD_LIBMPDCLIENT 361 bool "libmpdclient" 362 select BR2_PACKAGE_LIBMPDCLIENT 363 help 364 Enable libmpdclient support. 365 366config BR2_PACKAGE_MPD_NEIGHBOR_DISCOVERY_SUPPORT 367 bool "neighbor discovery support" 368 depends on BR2_PACKAGE_MPD_LIBSMBCLIENT || !BR2_PACKAGE_MPD_UPNP_DISABLED 369 help 370 Enable support for neighbor discovery. 371 This option can be used in conjunction with the smbclient 372 plugin to provide a list of SMB/CIFS servers or with the 373 UPnP plugin to provide a list of UPnP servers on the local 374 network. The neighbor plugin needs configuration in 375 mpd.conf. For further information take a look at the MPD 376 documentation. 377 378config BR2_PACKAGE_MPD_TCP 379 bool "tcp sockets" 380 default y 381 help 382 Enable MPD to listen on tcp sockets. 383 384 You want this on if MPD and the client(s) work 385 on different machines (the usual scenario). 386 387choice 388 prompt "UPnP" 389 default BR2_PACKAGE_MPD_UPNP_PUPNP if BR2_PACKAGE_MPD_UPNP # legacy 390 default BR2_PACKAGE_MPD_UPNP_DISABLED 391 help 392 Enable MPD to access a UPnP based media server. 393 394 For further information, see 395 https://www.lesbonscomptes.com/upmpdcli/pages/upmpdcli-or-mpdupnp.html 396 397config BR2_PACKAGE_MPD_UPNP_PUPNP 398 bool "pupnp" 399 select BR2_PACKAGE_EXPAT 400 select BR2_PACKAGE_LIBUPNP 401 select BR2_PACKAGE_MPD_CURL 402 help 403 Provides UPnP database access through libupnp 404 (the legacy Portable SDK for UPnP devices). 405 406 Introduces least additional dependencies. 407 408config BR2_PACKAGE_MPD_UPNP_NPUPNP 409 bool "npupnp" 410 select BR2_PACKAGE_EXPAT 411 select BR2_PACKAGE_LIBNPUPNP 412 select BR2_PACKAGE_MPD_CURL 413 help 414 Provides UPnP database access through libnpupnp 415 (a C++ reimplementation of the Portable UPnP library). 416 417 This implementation is more modern, but also brings 418 additional features not needed in this context, thus 419 consuming more space. 420 421config BR2_PACKAGE_MPD_UPNP_DISABLED 422 bool "disabled" 423 help 424 No UPnP client functionality. 425 426endchoice 427 428comment "Tag plugins" 429 430config BR2_PACKAGE_MPD_ID3TAG 431 bool "id3tag" 432 select BR2_PACKAGE_LIBID3TAG 433 help 434 Enable ID3 support. 435 436endif 437 438comment "mpd needs a toolchain w/ C++, threads, wchar, gcc >= 8, host gcc >= 8" 439 depends on BR2_USE_MMU 440 depends on BR2_TOOLCHAIN_HAS_ATOMIC 441 depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ 442 !BR2_TOOLCHAIN_HAS_THREADS || \ 443 !BR2_TOOLCHAIN_GCC_AT_LEAST_8 || \ 444 !BR2_HOST_GCC_AT_LEAST_8 445