Browse Source

mpd: Update to 0.19.11, fix gcc5 builds

Add a patch from the Alpine Linux project to fix a musl build issue with gcc 5:

Signed-off-by: Ted Hess <thess@kitschensync.net>
lilik-openwrt-22.03
Ted Hess 9 years ago
parent
commit
e8bd00dd39
4 changed files with 55 additions and 5 deletions
  1. +3
    -3
      sound/mpd/Makefile
  2. +50
    -0
      sound/mpd/patches/100-musl_gcc5_fixes.patch
  3. +1
    -1
      sound/mpd/patches/210-support_raw_pcm_streams.patch
  4. +1
    -1
      sound/mpd/patches/220-handle_slow_server_stream_startup.patch

+ 3
- 3
sound/mpd/Makefile View File

@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=mpd
PKG_VERSION:=0.19.10
PKG_RELEASE:=2
PKG_VERSION:=0.19.11
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=http://www.musicpd.org/download/mpd/0.19/
PKG_MD5SUM:=da4bc3e47afd0faf9e7a67168e012102
PKG_MD5SUM:=78935f6c464b67e19b4dc65bdb80319e
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
PKG_LICENSE:=GPL-2.0


+ 50
- 0
sound/mpd/patches/100-musl_gcc5_fixes.patch View File

@ -0,0 +1,50 @@
Add a patch from the Alpine Linux project to fix a musl build issue with gcc 5:
Problem has been reported upstream and closed with WONTFIX:
http://bugs.musicpd.org/view.php?id=4387
http://bugs.musicpd.org/view.php?id=4110
however...
POSIX does not permit using PTHREAD_COND_INITIALIZER except for static
initialization, and certainly does not permit using it as a value
POSIX does not specify the type of the object (it's opaque) so if
there are any types for which their code would be invalid C++, then their
code is invalid
Volatile in the type is necessary. without that, LTO can break the code.
--- a/src/notify.hxx
+++ b/src/notify.hxx
@@ -28,7 +28,7 @@ struct notify {
Cond cond;
bool pending;
-#if !defined(WIN32) && !defined(__NetBSD__) && !defined(__BIONIC__)
+#if defined(__GLIBC__)
constexpr
#endif
notify():pending(false) {}
--- a/src/thread/PosixCond.hxx
+++ b/src/thread/PosixCond.hxx
@@ -41,7 +41,7 @@ class PosixCond {
pthread_cond_t cond;
public:
-#if defined(__NetBSD__) || defined(__BIONIC__)
+#if !defined(__GLIBC__)
/* NetBSD's PTHREAD_COND_INITIALIZER is not compatible with
"constexpr" */
PosixCond() {
--- a/src/thread/PosixMutex.hxx
+++ b/src/thread/PosixMutex.hxx
@@ -41,7 +41,7 @@ class PosixMutex {
pthread_mutex_t mutex;
public:
-#if defined(__NetBSD__) || defined(__BIONIC__)
+#if !defined(__GLIBC__)
/* NetBSD's PTHREAD_MUTEX_INITIALIZER is not compatible with
"constexpr" */
PosixMutex() {

+ 1
- 1
sound/mpd/patches/210-support_raw_pcm_streams.patch View File

@ -1,6 +1,6 @@
--- a/src/decoder/plugins/FfmpegDecoderPlugin.cxx
+++ b/src/decoder/plugins/FfmpegDecoderPlugin.cxx
@@ -765,6 +765,7 @@ static const char *const ffmpeg_mime_typ
@@ -774,6 +774,7 @@ static const char *const ffmpeg_mime_typ
"audio/qcelp",
"audio/vorbis",
"audio/vorbis+ogg",


+ 1
- 1
sound/mpd/patches/220-handle_slow_server_stream_startup.patch View File

@ -1,6 +1,6 @@
--- a/src/decoder/plugins/FfmpegDecoderPlugin.cxx
+++ b/src/decoder/plugins/FfmpegDecoderPlugin.cxx
@@ -458,6 +458,13 @@ ffmpeg_probe(Decoder *decoder, InputStre
@@ -467,6 +467,13 @@ ffmpeg_probe(Decoder *decoder, InputStre
unsigned char buffer[BUFFER_SIZE];
size_t nbytes = decoder_read(decoder, is, buffer, BUFFER_SIZE);


Loading…
Cancel
Save