2
1
Эх сурвалжийг харах

package/mpd: update to version 0.23.y

This version adds support for openmpt, pipewire and snapcast, which are
disabled for now.

It also adds support for a choice between pupnp and npupnp for the UPnP
database. Therefore, the UPNP option is converted into three-value
choice in Config.in. Legacy handling of the BR2_PACKAGE_MPD_UPNP makes
sure that upnp remains selected.

Signed-off-by: Andreas Ziegler <br015@umbiko.net>
[Arnout: fix legacy handling; fix snapcast option]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Andreas Ziegler 3 жил өмнө
parent
commit
e5a74af215

+ 10 - 0
Config.in.legacy

@@ -153,6 +153,16 @@ config BR2_PACKAGE_LIBMEDIAART_BACKEND_NONE
 	  'none' backend has been removed from libmediaart since version
 	  'none' backend has been removed from libmediaart since version
 	  1.9.5.
 	  1.9.5.
 
 
+config BR2_PACKAGE_MPD_UPNP
+	bool "MPD UPnP configuration changed"
+	select BR2_LEGACY
+	help
+	  From version 0.23, MPD supports npupnp in addition to pupnp to
+	  provide database access to a UPnP media server. To preserve
+	  the existing functionality, the pupnp option has been selected
+	  in the MPD UPnP configuration.
+# Note: BR2_PACKAGE_MPD_UPNP is still referenced from package/mpd/Config.in
+
 comment "Legacy options removed in 2021.11"
 comment "Legacy options removed in 2021.11"
 
 
 config BR2_OPENJDK_VERSION_LTS
 config BR2_OPENJDK_VERSION_LTS

+ 2 - 2
package/mpd/0001-src-event-meson.build-add-atomic-dependency-for-spar.patch

@@ -20,7 +20,7 @@ diff --git a/src/event/meson.build b/src/event/meson.build
 index bc13bbcd2..88370c03a 100644
 index bc13bbcd2..88370c03a 100644
 --- a/src/event/meson.build
 --- a/src/event/meson.build
 +++ b/src/event/meson.build
 +++ b/src/event/meson.build
-@@ -21,9 +21,13 @@ event = static_library(
+@@ -47,9 +47,13 @@ event = declare_dependency(
    ],
    ],
  )
  )
  
  
@@ -32,8 +32,8 @@ index bc13bbcd2..88370c03a 100644
    dependencies: [
    dependencies: [
 +    atomic_dep,
 +    atomic_dep,
      thread_dep,
      thread_dep,
+     net_dep,
      system_dep,
      system_dep,
-     boost_dep,
 -- 
 -- 
 2.20.1
 2.20.1
 
 

+ 37 - 4
package/mpd/Config.in

@@ -8,6 +8,7 @@ menuconfig BR2_PACKAGE_MPD
 	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # C++17
 	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # C++17
 	depends on BR2_HOST_GCC_AT_LEAST_8 # C++17
 	depends on BR2_HOST_GCC_AT_LEAST_8 # C++17
 	select BR2_PACKAGE_BOOST
 	select BR2_PACKAGE_BOOST
+	select BR2_PACKAGE_FMT
 	select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
 	select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
 	help
 	help
 	  MPD is a flexible, powerful, server-side application
 	  MPD is a flexible, powerful, server-side application
@@ -354,7 +355,7 @@ config BR2_PACKAGE_MPD_LIBMPDCLIENT
 
 
 config BR2_PACKAGE_MPD_NEIGHBOR_DISCOVERY_SUPPORT
 config BR2_PACKAGE_MPD_NEIGHBOR_DISCOVERY_SUPPORT
 	bool "neighbor discovery support"
 	bool "neighbor discovery support"
-	depends on BR2_PACKAGE_MPD_LIBSMBCLIENT || BR2_PACKAGE_MPD_UPNP
+	depends on BR2_PACKAGE_MPD_LIBSMBCLIENT || !BR2_PACKAGE_MPD_UPNP_DISABLED
 	help
 	help
 	  Enable support for neighbor discovery.
 	  Enable support for neighbor discovery.
 	  This option can be used in conjunction with the smbclient
 	  This option can be used in conjunction with the smbclient
@@ -373,13 +374,45 @@ config BR2_PACKAGE_MPD_TCP
 	  You want this on if MPD and the client(s) work
 	  You want this on if MPD and the client(s) work
 	  on different machines (the usual scenario).
 	  on different machines (the usual scenario).
 
 
-config BR2_PACKAGE_MPD_UPNP
-	bool "UPnP"
+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_EXPAT
 	select BR2_PACKAGE_LIBUPNP
 	select BR2_PACKAGE_LIBUPNP
 	select BR2_PACKAGE_MPD_CURL
 	select BR2_PACKAGE_MPD_CURL
 	help
 	help
-	  Enable MPD UPnP client support.
+	  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"
 comment "Tag plugins"
 
 

+ 1 - 1
package/mpd/mpd.hash

@@ -1,3 +1,3 @@
 # Locally calculated after checking pgp signature
 # Locally calculated after checking pgp signature
-sha256  143f7f34aaee6e87888f3dd35d49aade6656052651b960ca42b46cbb518ca0a0  mpd-0.22.11.tar.xz
+sha256  b300625701005c6b14649f11dac118d05540529a5385d05b7c3062c0ce08f399  mpd-0.23.3.tar.xz
 sha256  ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6  COPYING
 sha256  ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6  COPYING

+ 14 - 7
package/mpd/mpd.mk

@@ -4,17 +4,20 @@
 #
 #
 ################################################################################
 ################################################################################
 
 
-MPD_VERSION_MAJOR = 0.22
-MPD_VERSION = $(MPD_VERSION_MAJOR).11
+MPD_VERSION_MAJOR = 0.23
+MPD_VERSION = $(MPD_VERSION_MAJOR).3
 MPD_SOURCE = mpd-$(MPD_VERSION).tar.xz
 MPD_SOURCE = mpd-$(MPD_VERSION).tar.xz
 MPD_SITE = http://www.musicpd.org/download/mpd/$(MPD_VERSION_MAJOR)
 MPD_SITE = http://www.musicpd.org/download/mpd/$(MPD_VERSION_MAJOR)
-MPD_DEPENDENCIES = host-pkgconf boost
+MPD_DEPENDENCIES = host-pkgconf boost fmt
 MPD_LICENSE = GPL-2.0+
 MPD_LICENSE = GPL-2.0+
 MPD_LICENSE_FILES = COPYING
 MPD_LICENSE_FILES = COPYING
 MPD_SELINUX_MODULES = mpd
 MPD_SELINUX_MODULES = mpd
 MPD_CONF_OPTS = \
 MPD_CONF_OPTS = \
 	-Daudiofile=disabled \
 	-Daudiofile=disabled \
-	-Ddocumentation=disabled
+	-Ddocumentation=disabled \
+	-Dopenmpt=disabled \
+	-Dpipewire=disabled \
+	-Dsnapcast=false
 
 
 # Zeroconf support depends on libdns_sd from avahi.
 # Zeroconf support depends on libdns_sd from avahi.
 ifeq ($(BR2_PACKAGE_MPD_AVAHI_SUPPORT),y)
 ifeq ($(BR2_PACKAGE_MPD_AVAHI_SUPPORT),y)
@@ -291,12 +294,16 @@ else
 MPD_CONF_OPTS += -Dtwolame=disabled
 MPD_CONF_OPTS += -Dtwolame=disabled
 endif
 endif
 
 
-ifeq ($(BR2_PACKAGE_MPD_UPNP),y)
+ifeq ($(BR2_PACKAGE_MPD_UPNP_PUPNP),y)
 MPD_DEPENDENCIES += \
 MPD_DEPENDENCIES += \
 	expat \
 	expat \
 	libupnp
 	libupnp
-MPD_CONF_OPTS += -Dupnp=enabled
-else
+MPD_CONF_OPTS += -Dupnp=pupnp
+else ifeq ($(BR2_PACKAGE_MPD_UPNP_NPUPNP),y)
+MPD_DEPENDENCIES += \
+	libnpupnp
+MPD_CONF_OPTS += -Dupnp=npupnp
+else ifeq ($(BR2_PACKAGE_MPD_UPNP_DISABLED),y)
 MPD_CONF_OPTS += -Dupnp=disabled
 MPD_CONF_OPTS += -Dupnp=disabled
 endif
 endif