#
-# Copyright (C) 2015-2016 Ted Hess
-#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=mpd
-PKG_VERSION:=0.19.19
-PKG_RELEASE:=2
+PKG_VERSION:=0.20.8
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
-PKG_SOURCE_URL:=http://www.musicpd.org/download/mpd/0.19/
-PKG_MD5SUM:=6e4fca9a9c26dad08b61bac9a91802db
+PKG_SOURCE_URL:=http://www.musicpd.org/download/mpd/0.20/
+PKG_HASH:=7d177f29663c4a0997413401e52bbf11d2bb472773bbcf9294f839c4b8751e35
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
PKG_LICENSE:=GPL-2.0
/etc/avahi/services/mpd.service
endef
+TARGET_CFLAGS += -ggdb3
+TARGET_LDFLAGS += -Wl,-rpath-link=$(STAGING_DIR)/usr/lib $(if $(ICONV_FULL),-liconv)
+EXTRA_CXXFLAGS += $(if $(CONFIG_GCC_VERSION_4_8),-std=gnu++11,-std=gnu++14)
+
CONFIGURE_ARGS += \
$(call autoconf_bool,CONFIG_IPV6,ipv6) \
--disable-debug \
$(if $(CONFIG_BUILD_PATENTED),MAD_CFLAGS="$(TARGET_CFLAGS)") \
$(if $(CONFIG_BUILD_PATENTED),MAD_LIBS="$(TARGET_LDFLAGS) -lmad") \
-TARGET_LDFLAGS += -Wl,-rpath-link=$(STAGING_DIR)/usr/lib $(if $(ICONV_FULL),-liconv)
-
ifeq ($(BUILD_VARIANT),full)
CONFIGURE_ARGS += \
--enable-fifo \
--enable-ffmpeg \
--enable-id3 \
- --enable-lastfm \
--enable-mms \
- --enable-oggflac \
+ --enable-flac \
--enable-pipe-output \
--enable-recorder-output \
--disable-shout \
--enable-sndfile \
--enable-vorbis \
--disable-vorbis-encoder \
- --with-faad="$(STAGING_DIR)/usr" \
--with-tremor=yes \
endif
--- a/src/decoder/plugins/FfmpegDecoderPlugin.cxx
+++ b/src/decoder/plugins/FfmpegDecoderPlugin.cxx
-@@ -777,6 +777,7 @@ static const char *const ffmpeg_mime_typ
+@@ -930,6 +930,7 @@ static const char *const ffmpeg_mime_typ
"audio/qcelp",
"audio/vorbis",
"audio/vorbis+ogg",
--- a/src/decoder/plugins/FfmpegDecoderPlugin.cxx
+++ b/src/decoder/plugins/FfmpegDecoderPlugin.cxx
-@@ -465,6 +465,13 @@ ffmpeg_probe(Decoder *decoder, InputStre
+@@ -478,6 +478,13 @@ ffmpeg_probe(DecoderClient *client, Inpu
unsigned char buffer[BUFFER_SIZE];
- size_t nbytes = decoder_read(decoder, is, buffer, BUFFER_SIZE);
+ size_t nbytes = decoder_read(client, is, buffer, BUFFER_SIZE);
+
+ if ((nbytes > 0) && (nbytes < 1024))
+ {
+ // Gobble some more data if header is small
-+ nbytes += decoder_read(decoder, is, buffer + nbytes, BUFFER_SIZE - nbytes);
++ nbytes += decoder_read(client, is, buffer + nbytes, BUFFER_SIZE - nbytes);
+ }
+
- if (nbytes <= PADDING || !is.LockRewind(IgnoreError()))
+ if (nbytes <= PADDING)
return nullptr;