@@ -20,6 +20,16 @@ menuconfig BR2_PACKAGE_MPD
if BR2_PACKAGE_MPD
+# mpd internal feature dependencies
+
+config BR2_PACKAGE_MPD_EXPAT
+ bool
+ select BR2_PACKAGE_EXPAT
+
+config BR2_PACKAGE_MPD_YAJL
+ bool
+ select BR2_PACKAGE_YAJL
+
comment "Archive plugins"
config BR2_PACKAGE_MPD_BZIP2
@@ -48,14 +58,14 @@ config BR2_PACKAGE_MPD_QOBUZ
depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS
select BR2_PACKAGE_MPD_CURL
select BR2_PACKAGE_LIBGCRYPT
- select BR2_PACKAGE_YAJL
+ select BR2_PACKAGE_MPD_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
+ select BR2_PACKAGE_MPD_YAJL
help
Enable soundcloud.com playlist support.
@@ -399,9 +409,9 @@ choice
config BR2_PACKAGE_MPD_UPNP_PUPNP
bool "pupnp"
- select BR2_PACKAGE_EXPAT
select BR2_PACKAGE_LIBUPNP
select BR2_PACKAGE_MPD_CURL
+ select BR2_PACKAGE_MPD_EXPAT
help
Provides UPnP database access through libupnp
(the legacy Portable SDK for UPnP devices).
@@ -412,6 +422,7 @@ config BR2_PACKAGE_MPD_UPNP_NPUPNP
bool "npupnp"
select BR2_PACKAGE_LIBNPUPNP
select BR2_PACKAGE_MPD_CURL
+ select BR2_PACKAGE_MPD_EXPAT
help
Provides UPnP database access through libnpupnp
(a C++ reimplementation of the Portable UPnP library).
@@ -78,6 +78,13 @@ else
MPD_CONF_OPTS += -Ddsd=false
endif
+ifeq ($(BR2_PACKAGE_MPD_EXPAT),y)
+MPD_DEPENDENCIES += expat
+MPD_CONF_OPTS += -Dexpat=enabled
+else
+MPD_CONF_OPTS += -Dexpat=disabled
+endif
+
ifeq ($(BR2_PACKAGE_MPD_FAAD2),y)
MPD_DEPENDENCIES += faad2
MPD_CONF_OPTS += -Dfaad=enabled
@@ -252,7 +259,7 @@ MPD_CONF_OPTS += -Dpulse=disabled
endif
ifeq ($(BR2_PACKAGE_MPD_QOBUZ),y)
-MPD_DEPENDENCIES += libgcrypt yajl
+MPD_DEPENDENCIES += libgcrypt
MPD_CONF_OPTS += -Dqobuz=enabled
else
MPD_CONF_OPTS += -Dqobuz=disabled
@@ -273,7 +280,6 @@ MPD_CONF_OPTS += -Dsidplay=disabled
endif
ifeq ($(BR2_PACKAGE_MPD_SOUNDCLOUD),y)
-MPD_DEPENDENCIES += yajl
MPD_CONF_OPTS += -Dsoundcloud=enabled
else
MPD_CONF_OPTS += -Dsoundcloud=disabled
@@ -306,13 +312,10 @@ MPD_CONF_OPTS += -Dtwolame=disabled
endif
ifeq ($(BR2_PACKAGE_MPD_UPNP_PUPNP),y)
-MPD_DEPENDENCIES += \
- expat \
- libupnp
+MPD_DEPENDENCIES += libupnp
MPD_CONF_OPTS += -Dupnp=pupnp
else ifeq ($(BR2_PACKAGE_MPD_UPNP_NPUPNP),y)
-MPD_DEPENDENCIES += \
- libnpupnp
+MPD_DEPENDENCIES += libnpupnp
MPD_CONF_OPTS += -Dupnp=npupnp
else ifeq ($(BR2_PACKAGE_MPD_UPNP_DISABLED),y)
MPD_CONF_OPTS += -Dupnp=disabled
@@ -333,6 +336,13 @@ else
MPD_CONF_OPTS += -Dwavpack=disabled
endif
+ifeq ($(BR2_PACKAGE_MPD_YAJL),y)
+MPD_DEPENDENCIES += yajl
+MPD_CONF_OPTS += -Dyajl=enabled
+else
+MPD_CONF_OPTS += -Dyajl=disabled
+endif
+
ifeq ($(BR2_PACKAGE_MPD_ZZIP),y)
MPD_DEPENDENCIES += zziplib
MPD_CONF_OPTS += -Dzzip=enabled
Make inclusion of expat and yajl libraries in the mpd build dependent on user selection, not presence of the libraries in the target filesystem. Signed-off-by: Andreas Ziegler <br015@umbiko.net> --- Changes v1 -> v2: - based on a discussion w/ Arnout Vandecapelle, Yann Morin package/mpd/Config.in | 17 ++++++++++++++--- package/mpd/mpd.mk | 24 +++++++++++++++++------- 2 files changed, 31 insertions(+), 10 deletions(-)