1 menuconfig BR2_PACKAGE_MPD
3 depends on BR2_INSTALL_LIBSTDCPP
4 depends on BR2_USE_WCHAR # flac
5 depends on BR2_TOOLCHAIN_HAS_THREADS
6 depends on BR2_USE_MMU # fork
7 depends on BR2_TOOLCHAIN_HAS_ATOMIC
8 # 0.19.x could be built with GCC 4.6, but for simplicity we require
9 # the same toolchain dependencies for all versions.
10 depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++14
12 depends on !BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC
13 select BR2_PACKAGE_BOOST
14 select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
15 select BR2_PACKAGE_MPD_TREMOR if !(BR2_PACKAGE_MPD_MAD || BR2_PACKAGE_MPD_MPG123 || BR2_PACKAGE_MPD_VORBIS || BR2_PACKAGE_MPD_WAVPACK || BR2_PACKAGE_MPD_FLAC || BR2_PACKAGE_MPD_MUSEPACK || BR2_PACKAGE_MPD_FFMPEG)
17 MPD is a flexible, powerful, server-side application
18 for playing music. Through plugins and libraries
19 it can play a variety of sound files while being
20 controlled by its network protocol.
22 http://www.musicpd.org
26 # Hidden config symbols to select the branch 0.20 by default and fallback
27 # to branch 0.19 for toolchains affected by GCC bug PR 64735. This way we
28 # keep support for mpd on some architectures, like ARMv5, until GCC 7 is
29 # released, which will fix this issue.
30 config BR2_PACKAGE_MPD_VERSION_STRING
32 default "0.20" if !BR2_TOOLCHAIN_HAS_GCC_BUG_64735
35 config BR2_PACKAGE_MPD_VERSION_0_20
37 default y if BR2_PACKAGE_MPD_VERSION_STRING = "0.20"
39 config BR2_PACKAGE_MPD_VERSION_0_19
41 default y if BR2_PACKAGE_MPD_VERSION_STRING = "0.19"
42 select BR2_PACKAGE_LIBGLIB2
44 comment "Archive plugins"
46 config BR2_PACKAGE_MPD_BZIP2
48 select BR2_PACKAGE_BZIP2
50 Enable bzip2 archive support.
52 config BR2_PACKAGE_MPD_SQLITE
54 select BR2_PACKAGE_SQLITE
56 Enable sqlite database support.
57 If you don't use sqlite it will use an ASCII database.
59 comment "Converter plugins"
61 config BR2_PACKAGE_MPD_LIBSAMPLERATE
63 select BR2_PACKAGE_LIBSAMPLERATE
65 Enable libsamplerate input support.
66 Select this for software sample rate conversion.
68 config BR2_PACKAGE_MPD_LIBSOXR
70 select BR2_PACKAGE_LIBSOXR
72 Enable libsoxr resampler support.
73 The SoX Resampler library performs software sample-rate
76 comment "Decoder plugins"
78 config BR2_PACKAGE_MPD_AUDIOFILE
80 select BR2_PACKAGE_AUDIOFILE
82 Enable audiofile input/streaming support.
83 Select this if you want to play back WAV files.
85 config BR2_PACKAGE_MPD_DSD
88 Enable Digital Speech Decoder (DSD) support to play audio
89 files encoded in a digital speech format.
91 config BR2_PACKAGE_MPD_FAAD2
93 select BR2_PACKAGE_FAAD2
95 Enable faad2 input support.
96 Select this if you want to play back MP4/AAC files.
98 config BR2_PACKAGE_MPD_FFMPEG
100 depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
101 select BR2_PACKAGE_FFMPEG
103 Enable ffmpeg input support.
104 Select this if you want to play back files supported by
107 config BR2_PACKAGE_MPD_FLAC
109 select BR2_PACKAGE_FLAC
111 Enable flac input/streaming support.
112 Select this if you want to play back FLAC files.
114 config BR2_PACKAGE_MPD_LIBSNDFILE
116 select BR2_PACKAGE_LIBSNDFILE
118 Enable libsndfile input/streaming support.
119 Select this if you want to play back WAV files.
121 config BR2_PACKAGE_MPD_MAD
124 select BR2_PACKAGE_LIBID3TAG
125 select BR2_PACKAGE_LIBMAD
127 Enable mad input support.
128 Select this if you want to play back MP3 files.
130 config BR2_PACKAGE_MPD_MPG123
132 select BR2_PACKAGE_LIBID3TAG
133 select BR2_PACKAGE_MPG123
135 Enable mpg123 input support.
136 Select this if you want to play back MP3 files.
138 config BR2_PACKAGE_MPD_MUSEPACK
140 select BR2_PACKAGE_LIBCUEFILE
141 select BR2_PACKAGE_LIBREPLAYGAIN
142 select BR2_PACKAGE_MUSEPACK
144 Enable musepack input support.
145 Select this if you want to play back MPC files.
147 config BR2_PACKAGE_MPD_OPUS
149 select BR2_PACKAGE_OPUS
150 select BR2_PACKAGE_LIBOGG
152 Enable opus input support.
153 Select this if you want to play back OPUS encoded files.
155 config BR2_PACKAGE_MPD_TREMOR
157 select BR2_PACKAGE_LIBOGG
158 select BR2_PACKAGE_TREMOR
160 Enable vorbis input support.
161 Select this if you want to play back OGG files on softfloat
164 config BR2_PACKAGE_MPD_VORBIS
166 select BR2_PACKAGE_LIBOGG
167 select BR2_PACKAGE_LIBVORBIS
169 Enable vorbis input/streaming support.
170 Select this if you want to play back OGG files on hardfloat
173 config BR2_PACKAGE_MPD_WAVPACK
175 select BR2_PACKAGE_WAVPACK
177 Enable wavpack input support.
178 Select this if you want to play back WV files.
180 comment "Encoder plugins"
182 config BR2_PACKAGE_MPD_LAME
184 select BR2_PACKAGE_LAME
186 Enable lame (mp3) encoding support.
188 config BR2_PACKAGE_MPD_TWOLAME
190 select BR2_PACKAGE_TWOLAME
192 Enable TwoLAME mp2 encoding.
194 comment "Input plugins"
196 config BR2_PACKAGE_MPD_CURL
198 select BR2_PACKAGE_LIBCURL
200 Enable curl streaming (http) support.
202 config BR2_PACKAGE_MPD_LIBNFS
205 depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC || BR2_TOOLCHAIN_HAS_THREADS
206 select BR2_PACKAGE_LIBNFS
208 Enable Network File System (NFS) support.
210 comment "nfs support needs a toolchain w/ threads support"
211 depends on !(BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_HAS_NATIVE_RPC)
213 comment "samba support needs a glibc toolchain w/ dynamic library, RPC"
214 depends on !BR2_nios2
215 depends on !BR2_TOOLCHAIN_USES_GLIBC || BR2_STATIC_LIBS || \
216 !BR2_TOOLCHAIN_HAS_NATIVE_RPC
218 config BR2_PACKAGE_MPD_LIBSMBCLIENT
220 depends on !BR2_nios2 # samba
221 depends on BR2_TOOLCHAIN_USES_GLIBC
222 depends on !BR2_STATIC_LIBS
223 depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC
224 depends on BR2_TOOLCHAIN_HAS_SYNC_4
225 select BR2_PACKAGE_SAMBA4
227 Enable Samba support.
229 config BR2_PACKAGE_MPD_SOUNDCLOUD
231 select BR2_PACKAGE_YAJL
233 Enable soundcloud.com playlist support.
235 comment "Output plugins"
237 config BR2_PACKAGE_MPD_ALSA
240 select BR2_PACKAGE_ALSA_LIB
241 select BR2_PACKAGE_ALSA_LIB_PCM
242 select BR2_PACKAGE_ALSA_LIB_MIXER
244 Enable alsa output support.
246 config BR2_PACKAGE_MPD_AO
248 select BR2_PACKAGE_LIBAO
250 Enable libao output support.
252 config BR2_PACKAGE_MPD_HTTPD_OUTPUT
255 Enable httpd output support.
257 config BR2_PACKAGE_MPD_JACK2
259 depends on !BR2_STATIC_LIBS # jack2
260 depends on BR2_TOOLCHAIN_HAS_SYNC_4
261 select BR2_PACKAGE_JACK2
263 Enable jack output support.
265 comment "jack support needs a toolchain w/ dynamic library"
266 depends on BR2_TOOLCHAIN_HAS_SYNC_4
267 depends on BR2_STATIC_LIBS
269 config BR2_PACKAGE_MPD_OSS
272 Enable OSS (Open Sound System) output support.
274 config BR2_PACKAGE_MPD_PULSEAUDIO
276 depends on !BR2_STATIC_LIBS # pulseaudio
277 depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pulseaudio -> json-c
278 select BR2_PACKAGE_PULSEAUDIO
280 Enable pulseaudio output support.
282 comment "pulseaudio support needs a toolchain w/ dynamic library"
283 depends on BR2_TOOLCHAIN_HAS_SYNC_4
284 depends on BR2_STATIC_LIBS
286 config BR2_PACKAGE_MPD_SHOUTCAST
288 select BR2_PACKAGE_LIBSHOUT
290 Enable shoutcast streaming output support.
292 comment "Miscellaneous plugins"
294 config BR2_PACKAGE_MPD_AVAHI_SUPPORT
295 bool "avahi (zeroconf) support"
296 depends on !BR2_STATIC_LIBS # avahi
297 select BR2_PACKAGE_AVAHI
298 select BR2_PACKAGE_AVAHI_DAEMON
299 select BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY
301 Enable Avahi (zeroconf) support.
302 Select this for multicast DNS/DNS-SD service discovery
303 support. This allows MPD to publish service information on a
306 comment "avahi support needs a toolchain w/ dynamic library"
307 depends on BR2_STATIC_LIBS
309 config BR2_PACKAGE_MPD_NEIGHBOR_DISCOVERY_SUPPORT
310 bool "neighbor discovery support"
311 depends on BR2_PACKAGE_MPD_LIBSMBCLIENT || BR2_PACKAGE_MPD_UPNP
313 Enable support for neighbor discovery.
314 This option can be used in conjunction with the smbclient
315 plugin to provide a list of SMB/CIFS servers or with the
316 UPnP plugin to provide a list of UPnP servers on the local
317 network. The neighbor plugin needs configuration in
318 mpd.conf. For further information take a look at the MPD
321 config BR2_PACKAGE_MPD_TCP
325 Enable MPD to listen on tcp sockets.
327 You want this on if MPD and the client(s) work
328 on different machines (the usual scenario).
330 config BR2_PACKAGE_MPD_UPNP
332 select BR2_PACKAGE_EXPAT
333 select BR2_PACKAGE_LIBUPNP
335 Enable MPD UPnP client support.
339 comment "mpd needs a toolchain w/ C++, threads, wchar, gcc >= 4.9"
340 depends on BR2_USE_MMU
341 depends on BR2_TOOLCHAIN_HAS_ATOMIC
342 depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \
343 !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
344 depends on !BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC