summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--package/mpd/Config.in26
-rw-r--r--package/mpd/mpd.hash1
-rw-r--r--package/mpd/mpd.mk10
3 files changed, 31 insertions, 6 deletions
diff --git a/package/mpd/Config.in b/package/mpd/Config.in
index 8a28b4f1a..8eabbbc79 100644
--- a/package/mpd/Config.in
+++ b/package/mpd/Config.in
@@ -4,9 +4,10 @@ menuconfig BR2_PACKAGE_MPD
depends on BR2_USE_WCHAR # flac
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_USE_MMU # fork
- depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++14
- depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735
depends on BR2_TOOLCHAIN_HAS_ATOMIC
+ # 0.19.x could be built with GCC 4.6, but for simplicity we require
+ # the same toolchain dependencies for all versions.
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++14
select BR2_PACKAGE_BOOST
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)
@@ -20,6 +21,24 @@ menuconfig BR2_PACKAGE_MPD
if BR2_PACKAGE_MPD
+# Hidden config symbols to select the branch 0.20 by default and fallback
+# to branch 0.19 for toolchains affected by GCC bug PR 64735. This way we
+# keep support for mpd on some architectures, like ARMv5, until GCC 7 is
+# released, which will fix this issue.
+config BR2_PACKAGE_MPD_VERSION_STRING
+ string
+ default "0.20" if !BR2_TOOLCHAIN_HAS_GCC_BUG_64735
+ default "0.19"
+
+config BR2_PACKAGE_MPD_VERSION_0_20
+ bool
+ default y if BR2_PACKAGE_MPD_VERSION_STRING = "0.20"
+
+config BR2_PACKAGE_MPD_VERSION_0_19
+ bool
+ default y if BR2_PACKAGE_MPD_VERSION_STRING = "0.19"
+ select BR2_PACKAGE_LIBGLIB2
+
comment "Archive plugins"
config BR2_PACKAGE_MPD_BZIP2
@@ -320,6 +339,3 @@ comment "mpd needs a toolchain w/ C++, threads, wchar, gcc >= 4.9"
depends on BR2_TOOLCHAIN_HAS_ATOMIC
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \
!BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
-
-comment "mpd needs a toolchain not affected by GCC bug 64735"
- depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
diff --git a/package/mpd/mpd.hash b/package/mpd/mpd.hash
index ee46f3cc5..ecd78e97c 100644
--- a/package/mpd/mpd.hash
+++ b/package/mpd/mpd.hash
@@ -1,2 +1,3 @@
# Locally calculated after checking pgp signature
sha256 712b25351c12616630c580204e1c3dcba3ae2993a56cff1c346c87e334d69728 mpd-0.20.4.tar.xz
+sha256 8305b8bc026f4b6bde28b8dd09bfdddbe5590acf36358eed4d083a396e301730 mpd-0.19.21.tar.xz
diff --git a/package/mpd/mpd.mk b/package/mpd/mpd.mk
index 0efc8685f..8869176d2 100644
--- a/package/mpd/mpd.mk
+++ b/package/mpd/mpd.mk
@@ -4,8 +4,12 @@
#
################################################################################
-MPD_VERSION_MAJOR = 0.20
+MPD_VERSION_MAJOR = $(call qstrip,$(BR2_PACKAGE_MPD_VERSION_STRING))
+ifeq ($(BR2_PACKAGE_MPD_VERSION_0_20),y)
MPD_VERSION = $(MPD_VERSION_MAJOR).4
+else
+MPD_VERSION = $(MPD_VERSION_MAJOR).21
+endif
MPD_SOURCE = mpd-$(MPD_VERSION).tar.xz
MPD_SITE = http://www.musicpd.org/download/mpd/$(MPD_VERSION_MAJOR)
MPD_DEPENDENCIES = host-pkgconf boost
@@ -13,6 +17,10 @@ MPD_LICENSE = GPLv2+
MPD_LICENSE_FILES = COPYING
MPD_AUTORECONF = YES
+ifeq ($(BR2_MPD_VERSION_0_19),y)
+MPD_DEPENDENCIES += libglib2
+endif
+
# Some options need an explicit --disable or --enable
# Zeroconf support depends on libdns_sd from avahi.