aboutsummaryrefslogtreecommitdiffstats
path: root/main/mpd/musl-gcc5-fixes.patch
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2015-06-26 06:39:13 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2015-06-26 06:47:46 +0000
commit3e2a68f112c57131e75ebce56835b635249c430a (patch)
treefbde5eb6f3f0b9575079a1eb907a2a0da6a6c2ad /main/mpd/musl-gcc5-fixes.patch
parentf918d9efb2bb863036f856d7a8b9434a629f78f1 (diff)
downloadaports-3e2a68f112c57131e75ebce56835b635249c430a.tar.bz2
aports-3e2a68f112c57131e75ebce56835b635249c430a.tar.xz
main/mpd: document the musl gcc fix
underlying problem has been reported upstream: http://bugs.musicpd.org/view.php?id=4387 http://bugs.musicpd.org/view.php?id=4110
Diffstat (limited to 'main/mpd/musl-gcc5-fixes.patch')
-rw-r--r--main/mpd/musl-gcc5-fixes.patch21
1 files changed, 18 insertions, 3 deletions
diff --git a/main/mpd/musl-gcc5-fixes.patch b/main/mpd/musl-gcc5-fixes.patch
index aeb28574e6..e80c088a7b 100644
--- a/main/mpd/musl-gcc5-fixes.patch
+++ b/main/mpd/musl-gcc5-fixes.patch
@@ -1,3 +1,18 @@
+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
+
+also 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
+
+also, volatile in the type is necessary. without that, LTO can break the code.
+
--- ./src/notify.hxx.orig
+++ ./src/notify.hxx
@@ -28,7 +28,7 @@
@@ -5,7 +20,7 @@
bool pending;
-#if !defined(WIN32) && !defined(__NetBSD__) && !defined(__BIONIC__)
-+#if !defined(WIN32) && !defined(__NetBSD__) && !defined(__BIONIC__) && defined(__GLIBC__)
++#if defined(__GLIBC__)
constexpr
#endif
notify():pending(false) {}
@@ -16,7 +31,7 @@
public:
-#if defined(__NetBSD__) || defined(__BIONIC__)
-+#if defined(__NetBSD__) || defined(__BIONIC__) || !defined(__GLIBC__)
++#if !defined(__GLIBC__)
/* NetBSD's PTHREAD_COND_INITIALIZER is not compatible with
"constexpr" */
PosixCond() {
@@ -27,7 +42,7 @@
public:
-#if defined(__NetBSD__) || defined(__BIONIC__)
-+#if defined(__NetBSD__) || defined(__BIONIC__) || !defined(__GLIBC__)
++#if !defined(__GLIBC__)
/* NetBSD's PTHREAD_MUTEX_INITIALIZER is not compatible with
"constexpr" */
PosixMutex() {