package/mpd: bump to version 0.19
PATCH v2 1/8 package/mpd: bump to version 0.19
* Bump to version 0.19
* Add boost as dependency
* Add support for libicu
---
Changes v1 -> v2:
- fix missing dependency of boost
--- package/mpd/Config.in | 4 +++- package/mpd/mpd.mk | 14 +++++++++++--- 2 files changed, 14 insertions(+), 4 deletions(-)
package/mpd/Config.in +3 -1
@@ -1,12 +1,14 @@ menuconfig BR2_PACKAGE_MPD bool "mpd" depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_LARGEFILE # boost depends on BR2_USE_WCHAR # libglib2, flac depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 depends on BR2_USE_MMU # libglib2 # avr32, sparc & CS powerpc gcc are too old depends on !(BR2_avr32 || BR2_sparc) depends on !(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201103 || BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201009) + select BR2_PACKAGE_BOOST select BR2_PACKAGE_LIBGLIB2 select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE 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)
@@ -211,4 +213,4 @@ comment "mpd needs a toolchain w/ C++, threads, wchar" depends on BR2_USE_MMU depends on !(BR2_avr32 || BR2_sparc) depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ - !BR2_TOOLCHAIN_HAS_THREADS + !BR2_TOOLCHAIN_HAS_THREADS || !BR2_LARGEFILE
package/mpd/mpd.mk +11 -3
@@ -4,11 +4,11 @@ # ################################################################################ -MPD_VERSION_MAJOR = 0.18 -MPD_VERSION = $(MPD_VERSION_MAJOR).16 +MPD_VERSION_MAJOR = 0.19 +MPD_VERSION = $(MPD_VERSION_MAJOR) MPD_SOURCE = mpd-$(MPD_VERSION).tar.xz MPD_SITE = http://www.musicpd.org/download/mpd/$(MPD_VERSION_MAJOR) -MPD_DEPENDENCIES = host-pkgconf libglib2 +MPD_DEPENDENCIES = host-pkgconf boost libglib2 MPD_LICENSE = GPLv2+ MPD_LICENSE_FILES = COPYING
@@ -19,6 +19,14 @@ else MPD_CONF_OPTS += --with-zeroconf=no endif +# MPD prefers libicu for utf8 collation instead of libglib2. +ifeq ($(BR2_PACKAGE_ICU),y) +MPD_DEPENDENCIES += icu +MPD_CONF_OPTS += --enable-icu +else +MPD_CONF_OPTS += --disable-icu +endif + ifeq ($(BR2_PACKAGE_MPD_ALSA),y) MPD_DEPENDENCIES += alsa-lib MPD_CONF_OPTS += --enable-alsa
Signature · 1 line
2.1.2
PATCH v2 2/8 package/mpd: sort plugins by type in Config.in
---
Changes v1 -> v2:
- fix dependency in comment
--- package/mpd/Config.in | 215 ++++++++++++++++++++++++++------------------------ 1 file changed, 114 insertions(+), 101 deletions(-)
package/mpd/Config.in +114 -101
@@ -22,65 +22,45 @@ menuconfig BR2_PACKAGE_MPD if BR2_PACKAGE_MPD -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. +comment "Archive plugins" -config BR2_PACKAGE_MPD_AO - bool "ao" - select BR2_PACKAGE_LIBAO - help - Enable libao output support. - -config BR2_PACKAGE_MPD_AUDIOFILE - bool "audiofile" - select BR2_PACKAGE_AUDIOFILE +config BR2_PACKAGE_MPD_BZIP2 + bool "bzip2" + select BR2_PACKAGE_BZIP2 help - Enable audiofile input/streaming support. - Select this if you want to play back WAV files. + Enable bzip2 archive support. -config BR2_PACKAGE_MPD_PULSEAUDIO - bool "pulseaudio" - depends on BR2_LARGEFILE # pulseaudio -> libsndfile - depends on BR2_ARCH_HAS_ATOMICS # pulseaudio - select BR2_PACKAGE_PULSEAUDIO +config BR2_PACKAGE_MPD_SQLITE + bool "sqlite" + select BR2_PACKAGE_SQLITE help - Enable pulseaudio output support. + Enable sqlite database support. + If you don't use sqlite it will use an ASCII database. -comment "pulseaudio support needs a toolchain w/ largefile" - depends on BR2_ARCH_HAS_ATOMICS - depends on !BR2_LARGEFILE +comment "Converter plugins" -config BR2_PACKAGE_MPD_BZIP2 - bool "bzip2" - select BR2_PACKAGE_BZIP2 +config BR2_PACKAGE_MPD_LIBSAMPLERATE + bool "libsamplerate" + select BR2_PACKAGE_LIBSAMPLERATE help - Enable bzip2 archive support. + Enable libsamplerate input support. + Select this for software sample rate conversion. -config BR2_PACKAGE_MPD_CURL - bool "curl" - select BR2_PACKAGE_LIBCURL +comment "Decoder plugins" + +config BR2_PACKAGE_MPD_AUDIOFILE + bool "audiofile" + select BR2_PACKAGE_AUDIOFILE help - Enable curl streaming (http) support. + Enable audiofile input/streaming support. + Select this if you want to play back WAV files. 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_FLAC - bool "flac" - select BR2_PACKAGE_FLAC - help - Enable flac input/streaming support. - Select this if you want to play back FLAC files. + Enable faad2 input support. + Select this if you want to play back MP4/AAC files. config BR2_PACKAGE_MPD_FFMPEG bool "ffmpeg"
@@ -88,32 +68,26 @@ config BR2_PACKAGE_MPD_FFMPEG depends on BR2_LARGEFILE depends on BR2_INET_IPV6 help - Enable ffmpeg input support. - Select this if you want to play back files supported by ffmpeg. + Enable ffmpeg input support. + Select this if you want to play back files supported by ffmpeg. comment "ffmpeg support needs a toolchain w/ largefile, IPv6" depends on !(BR2_LARGEFILE && BR2_INET_IPV6) -config BR2_PACKAGE_MPD_LAME - bool "lame" - select BR2_PACKAGE_LAME - help - Enable lame (mp3) encoding support. - -config BR2_PACKAGE_MPD_LIBSAMPLERATE - bool "libsamplerate" - select BR2_PACKAGE_LIBSAMPLERATE +config BR2_PACKAGE_MPD_FLAC + bool "flac" + select BR2_PACKAGE_FLAC help - Enable libsamplerate input support. - Select this for software sample rate conversion. + Enable flac input/streaming support. + Select this if you want to play back FLAC files. config BR2_PACKAGE_MPD_LIBSNDFILE bool "libsndfile" select BR2_PACKAGE_LIBSNDFILE depends on BR2_LARGEFILE help - Enable libsndfile input/streaming support. - Select this if you want to play back WAV files. + Enable libsndfile input/streaming support. + Select this if you want to play back WAV files. comment "libsndfile support needs a toolchain w/ largefile" depends on !BR2_LARGEFILE
@@ -124,16 +98,16 @@ config BR2_PACKAGE_MPD_MAD select BR2_PACKAGE_LIBID3TAG select BR2_PACKAGE_LIBMAD help - Enable mad input support. - Select this if you want to play back MP3 files. + Enable mad input support. + Select this if you want to play back MP3 files. 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. + Enable mpg123 input support. + Select this if you want to play back MP3 files. config BR2_PACKAGE_MPD_MUSEPACK bool "musepack"
@@ -141,72 +115,111 @@ config BR2_PACKAGE_MPD_MUSEPACK select BR2_PACKAGE_LIBREPLAYGAIN select BR2_PACKAGE_MUSEPACK help - Enable musepack input support. - Select this if you want to play back MPC files. + 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. + Enable opus input support. + Select this if you want to play back OPUS encoded files. -config BR2_PACKAGE_MPD_SOUNDCLOUD - bool "soundcloud" - select BR2_PACKAGE_YAJL +config BR2_PACKAGE_MPD_TREMOR + bool "tremor" + select BR2_PACKAGE_LIBOGG + select BR2_PACKAGE_TREMOR help - Enable soundcloud.com playlist support. + Enable vorbis input support. + Select this if you want to play back OGG files on softfloat targets. -config BR2_PACKAGE_MPD_SQLITE - bool "sqlite" - select BR2_PACKAGE_SQLITE +config BR2_PACKAGE_MPD_VORBIS + bool "vorbis" + select BR2_PACKAGE_LIBOGG + select BR2_PACKAGE_LIBVORBIS help - Enable sqlite database support. - If you don't use sqlite it will use an ASCII database. + Enable vorbis input/streaming support. + Select this if you want to play back OGG files on hardfloat targets. -config BR2_PACKAGE_MPD_TCP - bool "tcp sockets" - default y +config BR2_PACKAGE_MPD_WAVPACK + bool "wavpack" + select BR2_PACKAGE_WAVPACK help - Enable mpd to listen on tcp sockets. + Enable wavpack input support. + Select this if you want to play back WV files. - You want this on if mpd and the client(s) work - on different machines (the usual scenario). +comment "Encoder plugins" -config BR2_PACKAGE_MPD_TREMOR - bool "tremor" - select BR2_PACKAGE_LIBOGG - select BR2_PACKAGE_TREMOR +config BR2_PACKAGE_MPD_LAME + bool "lame" + select BR2_PACKAGE_LAME help - Enable vorbis input support. - Select this if you want to play back OGG files on softfloat targets. + Enable lame (mp3) encoding support. config BR2_PACKAGE_MPD_TWOLAME bool "twolame" depends on BR2_LARGEFILE # twolame -> libsndfile select BR2_PACKAGE_TWOLAME help - Enable TwoLAME mp2 encoding. + Enable TwoLAME mp2 encoding. comment "twolame support needs a toolchain w/ largefile" depends on !BR2_LARGEFILE -config BR2_PACKAGE_MPD_VORBIS - bool "vorbis" - select BR2_PACKAGE_LIBOGG - select BR2_PACKAGE_LIBVORBIS +comment "Input plugins" + +config BR2_PACKAGE_MPD_CURL + bool "curl" + select BR2_PACKAGE_LIBCURL help - Enable vorbis input/streaming support. - Select this if you want to play back OGG files on hardfloat targets. + Enable curl streaming (http) support. -config BR2_PACKAGE_MPD_WAVPACK - bool "wavpack" - select BR2_PACKAGE_WAVPACK +config BR2_PACKAGE_MPD_SOUNDCLOUD + bool "soundcloud" + select BR2_PACKAGE_YAJL + help + Enable soundcloud.com playlist 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_PULSEAUDIO + bool "pulseaudio" + depends on BR2_LARGEFILE # pulseaudio -> libsndfile + depends on BR2_ARCH_HAS_ATOMICS # pulseaudio + select BR2_PACKAGE_PULSEAUDIO + help + Enable pulseaudio output support. + +comment "pulseaudio support needs a toolchain w/ largefile" + depends on BR2_ARCH_HAS_ATOMICS + depends on !BR2_LARGEFILE + +comment "Miscellaneous plugins" + +config BR2_PACKAGE_MPD_TCP + bool "tcp sockets" + default y help - Enable wavpack input support. - Select this if you want to play back WV files. + Enable mpd to listen on tcp sockets. + You want this on if mpd and the client(s) work + on different machines (the usual scenario). endif comment "mpd needs a toolchain w/ C++, threads, wchar"
Signature · 1 line
2.1.2
PATCH v2 3/8 package/mpd: sort plugins alphabetically in mpd.mk
In reply to Jörg Krause---
Changes v1 -> v2:
- none
--- package/mpd/mpd.mk | 70 +++++++++++++++++++++++++++--------------------------- 1 file changed, 35 insertions(+), 35 deletions(-)
package/mpd/mpd.mk +35 -35
@@ -48,13 +48,6 @@ else MPD_CONF_OPTS += --disable-audiofile endif -ifeq ($(BR2_PACKAGE_MPD_PULSEAUDIO),y) -MPD_DEPENDENCIES += pulseaudio -MPD_CONF_OPTS += --enable-pulse -else -MPD_CONF_OPTS += --disable-pulse -endif - ifeq ($(BR2_PACKAGE_MPD_BZIP2),y) MPD_DEPENDENCIES += bzip2 MPD_CONF_OPTS += --enable-bzip2
@@ -62,6 +55,13 @@ else MPD_CONF_OPTS += --disable-bzip2 endif +ifeq ($(BR2_PACKAGE_MPD_CURL),y) +MPD_DEPENDENCIES += libcurl +MPD_CONF_OPTS += --enable-curl +else +MPD_CONF_OPTS += --disable-curl +endif + ifeq ($(BR2_PACKAGE_MPD_FAAD2),y) MPD_DEPENDENCIES += faad2 MPD_CONF_OPTS += --enable-aac
@@ -69,6 +69,13 @@ else MPD_CONF_OPTS += --disable-aac endif +ifeq ($(BR2_PACKAGE_MPD_FFMPEG),y) +MPD_DEPENDENCIES += ffmpeg +MPD_CONF_OPTS += --enable-ffmpeg +else +MPD_CONF_OPTS += --disable-ffmpeg +endif + ifeq ($(BR2_PACKAGE_MPD_FLAC),y) MPD_DEPENDENCIES += flac MPD_CONF_OPTS += --enable-flac
@@ -76,13 +83,6 @@ else MPD_CONF_OPTS += --disable-flac endif -ifeq ($(BR2_PACKAGE_MPD_CURL),y) -MPD_DEPENDENCIES += libcurl -MPD_CONF_OPTS += --enable-curl -else -MPD_CONF_OPTS += --disable-curl -endif - ifeq ($(BR2_PACKAGE_MPD_LAME),y) MPD_DEPENDENCIES += lame MPD_CONF_OPTS += --enable-lame-encoder
@@ -104,20 +104,6 @@ else MPD_CONF_OPTS += --disable-sndfile endif -ifeq ($(BR2_PACKAGE_MPD_OPUS),y) -MPD_DEPENDENCIES += opus libogg -MPD_CONF_OPTS += --enable-opus -else -MPD_CONF_OPTS += --disable-opus -endif - -ifeq ($(BR2_PACKAGE_MPD_VORBIS),y) -MPD_DEPENDENCIES += libvorbis -MPD_CONF_OPTS += --enable-vorbis --enable-vorbis-encoder -else -MPD_CONF_OPTS += --disable-vorbis --disable-vorbis-encoder -endif - ifeq ($(BR2_PACKAGE_MPD_MAD),y) MPD_DEPENDENCIES += libid3tag libmad MPD_CONF_OPTS += --enable-mad
@@ -139,6 +125,20 @@ else MPD_CONF_OPTS += --disable-mpc endif +ifeq ($(BR2_PACKAGE_MPD_OPUS),y) +MPD_DEPENDENCIES += opus libogg +MPD_CONF_OPTS += --enable-opus +else +MPD_CONF_OPTS += --disable-opus +endif + +ifeq ($(BR2_PACKAGE_MPD_PULSEAUDIO),y) +MPD_DEPENDENCIES += pulseaudio +MPD_CONF_OPTS += --enable-pulse +else +MPD_CONF_OPTS += --disable-pulse +endif + ifeq ($(BR2_PACKAGE_MPD_SOUNDCLOUD),y) MPD_DEPENDENCIES += yajl MPD_CONF_OPTS += --enable-soundcloud
@@ -169,6 +169,13 @@ else MPD_CONF_OPTS += --disable-twolame-encoder endif +ifeq ($(BR2_PACKAGE_MPD_VORBIS),y) +MPD_DEPENDENCIES += libvorbis +MPD_CONF_OPTS += --enable-vorbis --enable-vorbis-encoder +else +MPD_CONF_OPTS += --disable-vorbis --disable-vorbis-encoder +endif + ifeq ($(BR2_PACKAGE_MPD_WAVPACK),y) MPD_DEPENDENCIES += wavpack MPD_CONF_OPTS += --enable-wavpack
@@ -176,13 +183,6 @@ else MPD_CONF_OPTS += --disable-wavpack endif -ifeq ($(BR2_PACKAGE_MPD_FFMPEG),y) -MPD_DEPENDENCIES += ffmpeg -MPD_CONF_OPTS += --enable-ffmpeg -else -MPD_CONF_OPTS += --disable-ffmpeg -endif - define MPD_INSTALL_EXTRA_FILES @if [ ! -f $(TARGET_DIR)/etc/mpd.conf ]; then \ $(INSTALL) -D package/mpd/mpd.conf \
Signature · 1 line
2.1.2
PATCH v2 4/8 package/mpd: enable support for libsoxr
In reply to Jörg Krause---
Changes v1 -> v2:
- none
--- package/mpd/Config.in | 7 +++++++ package/mpd/mpd.mk | 7 +++++++ 2 files changed, 14 insertions(+)
package/mpd/Config.in +7 -0
@@ -46,6 +46,13 @@ config BR2_PACKAGE_MPD_LIBSAMPLERATE 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_AUDIOFILE
package/mpd/mpd.mk +7 -0
@@ -104,6 +104,13 @@ else MPD_CONF_OPTS += --disable-sndfile endif +ifeq ($(BR2_PACKAGE_MPD_LIBSOXR),y) +MPD_DEPENDENCIES += libsoxr +MPD_CONF_OPTS += --enable-soxr +else +MPD_CONF_OPTS += --disable-soxr +endif + ifeq ($(BR2_PACKAGE_MPD_MAD),y) MPD_DEPENDENCIES += libid3tag libmad MPD_CONF_OPTS += --enable-mad
Signature · 1 line
2.1.2
PATCH v2 4/8 package/mpd: enable support for libsoxr
Dear J?rg Krause,
Quoted 14 lines · J?rg Krause
Signed-off-by J?rg Krause <[email protected]>---
Changes v1 -> v2:
- none--- package/mpd/Config.in | 7 +++++++ package/mpd/mpd.mk | 7 +++++++ 2 files changed, 14 insertions(+)package/mpd/Config.in +0
-0
package/mpd/Config.in config BR2_PACKAGE_MPD_LIBSAMPLERATE · line 55
Quoted 10 lines
package/mpd/Config.in +7
-0@@ -46,6 +46,13 @@ config BR2_PACKAGE_MPD_LIBSAMPLERATE 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. +
I apologize for the silly comment, but the indentation is wrong here. The help text should be indented with one tab plus two spaces, not two tabs.
Same issue applies to patches 4, 5, 6 and 7 of your series.
Thanks,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v2 4/8 package/mpd: enable support for libsoxr
Dear Thomas Petazzoni,
Quoted 31 lines · Thomas Petazzoni
Dear J?rg Krause,
Quoted 14 lines · J?rg Krause
Signed-off-by J?rg Krause <[email protected]>---
Changes v1 -> v2:
- none--- package/mpd/Config.in | 7 +++++++ package/mpd/mpd.mk | 7 +++++++ 2 files changed, 14 insertions(+)package/mpd/Config.in +0
-0package/mpd/Config.in config BR2_PACKAGE_MPD_LIBSAMPLERATE · line 55
Quoted 10 lines
package/mpd/Config.in +7
-0@@ -46,6 +46,13 @@ config BR2_PACKAGE_MPD_LIBSAMPLERATE 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. +I apologize for the silly comment, but the indentation is wrong here. The help text should be indented with one tab plus two spaces, not two tabs.
Quoted 1 line
Same issue applies to patches 4, 5, 6 and 7 of your series.
Don't apologize, every comment is very welcome!
Yes, the intendation is wrong for almost all existing help texts in mpd.
I will fix the submitted patches and add an additional one to fix the
intendation of the existing help texts.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20141016/86daba78/attachment.html>
PATCH v2 5/8 package/mpd: enable support for libsmbclient
In reply to Jörg Krause---
Changes v1 -> v2:
- none
--- package/mpd/Config.in | 8 ++++++++ package/mpd/mpd.mk | 7 +++++++ 2 files changed, 15 insertions(+)
package/mpd/Config.in +8 -0
@@ -182,6 +182,14 @@ config BR2_PACKAGE_MPD_CURL help Enable curl streaming (http) support. +config BR2_PACKAGE_MPD_LIBSMBCLIENT + bool "samba" + depends on !BR2_nios2 # samba + select BR2_PACKAGE_SAMBA + select BR2_PACKAGE_SAMBA_LIBSMBCLIENT + help + Enable Samba support. + config BR2_PACKAGE_MPD_SOUNDCLOUD bool "soundcloud" select BR2_PACKAGE_YAJL
package/mpd/mpd.mk +7 -0
@@ -90,6 +90,13 @@ else MPD_CONF_OPTS += --disable-lame-encoder endif +ifeq ($(BR2_PACKAGE_MPD_LIBSMBCLIENT),y) +MPD_DEPENDENCIES += samba +MPD_CONF_OPTS += --enable-smbclient +else +MPD_CONF_OPTS += --disable-smbclient +endif + ifeq ($(BR2_PACKAGE_MPD_LIBSAMPLERATE),y) MPD_DEPENDENCIES += libsamplerate MPD_CONF_OPTS += --enable-lsr
Signature · 1 line
2.1.2
PATCH v2 6/8 package/mpd: enable support for libnfs
In reply to Jörg Krause---
Changes v1 -> v2:
- none
--- package/mpd/Config.in | 7 +++++++ package/mpd/mpd.mk | 8 ++++++++ 2 files changed, 15 insertions(+)
package/mpd/Config.in +7 -0
@@ -182,6 +182,13 @@ config BR2_PACKAGE_MPD_CURL help Enable curl streaming (http) support. +config BR2_PACKAGE_MPD_LIBNFS + bool "nfs" + depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC + select BR2_PACKAGE_LIBNFS + help + Enable Network File System (NFS) support. + config BR2_PACKAGE_MPD_LIBSMBCLIENT bool "samba" depends on !BR2_nios2 # samba
package/mpd/mpd.mk +8 -0
@@ -90,6 +90,14 @@ else MPD_CONF_OPTS += --disable-lame-encoder endif +ifeq ($(BR2_PACKAGE_MPD_LIBNFS),y) +PKG_CONFIG_PATH = "$(STAGING_DIR)/usr/lib/pkgconfig" +MPD_DEPENDENCIES += libnfs +MPD_CONF_OPTS += --enable-nfs +else +MPD_CONF_OPTS += --disable-nfs +endif + ifeq ($(BR2_PACKAGE_MPD_LIBSMBCLIENT),y) MPD_DEPENDENCIES += samba MPD_CONF_OPTS += --enable-smbclient
Signature · 1 line
2.1.2
PATCH v2 6/8 package/mpd: enable support for libnfs
Dear J?rg Krause,
package/mpd/mpd.mk else · line 94
Quoted 2 lines · J?rg Krause
package/mpd/mpd.mk +2
-0+ifeq ($(BR2_PACKAGE_MPD_LIBNFS),y) +PKG_CONFIG_PATH = "$(STAGING_DIR)/usr/lib/pkgconfig"
This looks wrong, for two reasons:
*) A package is not allowed to change global variables. Remember that
the namespace of variables in global, so if one package is changing a global variable, this change is visible to all other packages.
*) $(STAGING_DIR)/usr/lib/pkgconfig is already the default search path
for our pkg-config, so there should be no need to make this tuning. Which problem have you seen?
Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v2 6/8 package/mpd: enable support for libnfs
Dear Thomas Petazzoni,
Quoted 11 lines · Thomas Petazzoni
Dear J?rg Krause,
package/mpd/mpd.mk else · line 94
Quoted 2 lines · J?rg Krause
package/mpd/mpd.mk +2
-0+ifeq ($(BR2_PACKAGE_MPD_LIBNFS),y) +PKG_CONFIG_PATH = "$(STAGING_DIR)/usr/lib/pkgconfig"This looks wrong, for two reasons:
*) A package is not allowed to change global variables. Remember that
the namespace of variables in global, so if one package is changing a global variable, this change is visible to all other packages.
I have seens this at wpa_supplicant which use it if package dbus is selected:
ifeq ($(BR2_PACKAGE_DBUS),y)
WPA_SUPPLICANT_DEPENDENCIES += host-pkgconf dbus
WPA_SUPPLICANT_MAKE_ENV = \
PKG_CONFIG_SYSROOT_DIR="$(STAGING_DIR)" \
PKG_CONFIG_PATH="$(STAGING_DIR)/usr/lib/pkgconfig"I copied the last line here. Okay, I see now the difference:wpa_supplicant sets it locally to the make environment and I set it globally.
Quoted 3 lines
*) $(STAGING_DIR)/usr/lib/pkgconfig is already the default search path
for our pkg-config, so there should be no need to make this tuning. Which problem have you seen?
Without this mpd configuration check does not find libnfs although it is build successfully.
checking for NFS... no
configure: error: NFS input plugin: libnfs not found
Maybe I should do this?:
MPD_MAKE_ENV = PKG_CONFIG_PATH="$(STAGING_DIR)/usr/lib/pkgconfig"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20141016/81225d83/attachment.html>
PATCH v2 6/8 package/mpd: enable support for libnfs
Quoted 4 lines · J?rg Krause
Dear Thomas Petazzoni,
Quoted 1 line · Thomas Petazzoni
Dear J?rg Krause,
[snip]
Quoted 9 lines
Quoted 3 lines
*) $(STAGING_DIR)/usr/lib/pkgconfig is already the default search path
for our pkg-config, so there should be no need to make this tuning. Which problem have you seen?Without this mpd configuration check does not find libnfs although it is build successfully.
checking for NFS... no
configure: error: NFS input plugin: libnfs not found
Actually, we set PKG_CONFIG_LIBDIR to this directory, and PKG_CONFIG_PATH takes
precedence over PKG_CONFIG_LIBDIR. I have no idea why we do it that way... But it means that if the package sets PKG_CONFIG_PATH to /usr/lib/pkg-config, it will override our setting.
Quoted 3 lines
Maybe I should do this?:
MPD_MAKE_ENV = PKG_CONFIG_PATH="$(STAGING_DIR)/usr/lib/pkgconfig"
That looks better, indeed. Except, it should probably be MPD_CONF_ENV.
Regards,
Arnout
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
PATCH v2 6/8 package/mpd: enable support for libnfs
Quoted 12 lines · Arnout Vandecappelle
Quoted 4 lines · J?rg Krause
Dear Thomas Petazzoni,
Quoted 1 line · Thomas Petazzoni
Dear J?rg Krause,
[snip]
Quoted 6 lines
Quoted 3 lines
*) $(STAGING_DIR)/usr/lib/pkgconfig is already the default search path
for our pkg-config, so there should be no need to make this tuning. Which problem have you seen?Without this mpd configuration check does not find libnfs although it is build successfully.
Quoted 6 lines
Quoted 2 lines
checking for NFS... no
configure: error: NFS input plugin: libnfs not foundActually, we set
PKG_CONFIG_LIBDIRto this directory, andPKG_CONFIG_PATHtakes
precedence overPKG_CONFIG_LIBDIR. I have no idea why we do it that way... But it means that if the package setsPKG_CONFIG_PATHto/usr/lib/pkg-config, it will override our setting.
You're right! The problem is that in version 1.8.0 of libnfs the following is set in libnfs.pc.in:
-Requires.private: @LIBNFS_PC_REQ_PRIVATE@
This is fixed by an upstream patch after the release 1.8.0:
https://github.com/sahlberg/libnfs/commit/d47c989d886e5398143d43d3b6d25fdf7210cb11
Quoted 4 lines
Quoted 2 lines
Maybe I should do this?:
MPD_MAKE_ENV = PKG_CONFIG_PATH="$(STAGING_DIR)/usr/lib/pkgconfig"That looks better, indeed. Except, it should probably be
MPD_CONF_ENV.
Not necessary anymore, bumping to version 1.9.5 solved this issue:
http://git.buildroot.net/buildroot/commit/?id=28b163f3162c91afaed1e5c5c59d10d18cfa7dbc
Best regards
J?rg Krause
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20141018/e2f9e97a/attachment.html>
PATCH v2 7/8 package/mpd: enable support for dsd
In reply to Jörg Krause---
Changes v1 -> v2:
- none
--- package/mpd/Config.in | 6 ++++++ package/mpd/mpd.mk | 6 ++++++ 2 files changed, 12 insertions(+)
package/mpd/Config.in +6 -0
@@ -62,6 +62,12 @@ config BR2_PACKAGE_MPD_AUDIOFILE Enable audiofile input/streaming support. Select this if you want to play back WAV files. +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
package/mpd/mpd.mk +6 -0
@@ -62,6 +62,12 @@ else MPD_CONF_OPTS += --disable-curl endif +ifeq ($(BR2_PACKAGE_MPD_DSD),y) +MPD_CONF_OPTS += --enable-dsd +else +MPD_CONF_OPTS += --disable-dsd +endif + ifeq ($(BR2_PACKAGE_MPD_FAAD2),y) MPD_DEPENDENCIES += faad2 MPD_CONF_OPTS += --enable-aac
Signature · 1 line
2.1.2
PATCH v2 8/8 package/mpd: fix zeroconf support
In reply to Jörg KrauseSupport for zeroconf depends on libdns_sd from avahi. This library is build by avahi if avahi-daemon is enabled and dbus is selected.
Checking for symbol BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY instead of BR2_PACKAGE_AVAHI_DAEMON ensures that dbus has been selected and therefore libdns_sd has been built.
---
Changes v1 -> v2:
- none
--- package/mpd/mpd.mk | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
package/mpd/mpd.mk +3 -1
@@ -13,7 +13,9 @@ MPD_LICENSE = GPLv2+ MPD_LICENSE_FILES = COPYING # Some options need an explicit --disable or --enable -ifeq ($(BR2_PACKAGE_AVAHI_DAEMON),y) + +# Zeroconf support depends on libdns_sd from avahi. +ifeq ($(BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY),y) MPD_DEPENDENCIES += avahi else MPD_CONF_OPTS += --with-zeroconf=no
Signature · 1 line
2.1.2
PATCH v2 8/8 package/mpd: fix zeroconf support
Dear J?rg Krause,
package/mpd/mpd.mk MPD_LICENSE = GPLv2+ · line 21
Quoted 8 lines · J?rg Krause
# Some options need an explicit --disable or --enable
package/mpd/mpd.mk +3
-1-ifeq ($(BR2_PACKAGE_AVAHI_DAEMON),y) + +# Zeroconf support depends on libdns_sd from avahi. +ifeq ($(BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY),y) MPD_DEPENDENCIES += avahi else MPD_CONF_OPTS += --with-zeroconf=no
It doesn't seem really obvious for the user that BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY should be enabled to get avahi support in mpd. So, in such situations, I would suggest to add a Config.in option to explicitly enable the Avahi support in mpd:
config BR2_PACKAGE_MPD_AVAHI_SUPPORT
bool "avahi support"
depends on ... # all the dependencies of avahi select BR2_PACKAGE_AVAHI
select BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY help
Some help text
Best regards,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v2 8/8 package/mpd: fix zeroconf support
Dear Thomas Petazzoni,
Quoted 17 lines · Thomas Petazzoni
Dear J?rg Krause,
package/mpd/mpd.mk MPD_LICENSE = GPLv2+ · line 21
Quoted 8 lines · J?rg Krause
# Some options need an explicit --disable or --enable
package/mpd/mpd.mk +3
-1-ifeq ($(BR2_PACKAGE_AVAHI_DAEMON),y) + +# Zeroconf support depends on libdns_sd from avahi. +ifeq ($(BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY),y) MPD_DEPENDENCIES += avahi else MPD_CONF_OPTS += --with-zeroconf=noIt doesn't seem really obvious for the user that
BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITYshould be enabled to get avahi support in mpd. So, in such situations, I would suggest to add a Config.in option to explicitly enable the Avahi support in mpd:
Quoted 7 lines
config
BR2_PACKAGE_MPD_AVAHI_SUPPORT
bool "avahi support"
depends on ... # all the dependencies of avahi selectBR2_PACKAGE_AVAHI
selectBR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITYhelp
Some help text
Looks good!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20141016/a1d76809/attachment-0001.html>