On Tue, May 23, 2017 at 08:16:47PM +0200, Landry Breuil wrote:
> On Tue, May 23, 2017 at 08:01:51PM +0200, Landry Breuil wrote:
> > On Tue, May 23, 2017 at 01:18:17PM -0400, Andre Smagin wrote:
> > > I think this is the relevant discussion about the same issue FreeBSD had:
> > >
> > > https://github.com/MusicPlayerDaemon/MPD/issues/41
> > >
> > > This is the FreeBSD commit to fix it:
> > > https://svnweb.freebsd.org/ports/head/audio/musicpd/files/patch-src_Compiler.h?revision=440334&view=markup
> > >
> > > "Fix library updating
> > > Details:
> > > Apparently, clang optimises exceptions with __attribute__((pure))
> > > more aggressively than gcc, causing mpd to not notice files removed
> > > from the library. This patch causes mpd to be built without the pure
> > > attribute."
> > >
> > >
> > > I am testing with this diff (from FreeBSD) now and at a first glance
> > > it seems to fix the database update problem:
> >
> > Good catch, testing it here too.
>
> Actually, we might aswell update to 0.20.8, which contains the fix
> commmited upstream (ie removing the gcc_pure usage) in
> https://github.com/MusicPlayerDaemon/MPD/commit/788e3b31e1ab8243386339eaf136ede18f015d55
Better with an update that actually compiles. works here, but doesnt
directly fix my own issue... strange. Worked after forcing an update of
the problematic dir via gmpc, and a rescan.
Either way, we should go for the update if there are no regressions.
David ?
? mpd-0.18.10_rev2.diff
? patch-src_Compiler_h
Index: Makefile
===================================================================
RCS file: /cvs/ports/audio/mpd/Makefile,v
retrieving revision 1.103
diff -u -r1.103 Makefile
--- Makefile 12 Mar 2017 10:13:49 -0000 1.103
+++ Makefile 23 May 2017 18:47:19 -0000
@@ -2,7 +2,7 @@
BROKEN-hppa = no atomic ops
COMMENT = Music Player Daemon
-VER = 0.20.6
+VER = 0.20.8
DISTNAME = mpd-${VER}
CATEGORIES = audio
HOMEPAGE = http://www.musicpd.org/
Index: distinfo
===================================================================
RCS file: /cvs/ports/audio/mpd/distinfo,v
retrieving revision 1.44
diff -u -r1.44 distinfo
--- distinfo 12 Mar 2017 10:13:49 -0000 1.44
+++ distinfo 23 May 2017 18:47:19 -0000
@@ -1,2 +1,2 @@
-SHA256 (mpd-0.20.6.tar.gz) = HRTyzRcGcIpRm7yI8wqsgF+HkSOMoIN0r18IJYcfVQI=
-SIZE (mpd-0.20.6.tar.gz) = 1091201
+SHA256 (mpd-0.20.8.tar.gz) = RRlzEbbDAlUoFQTjamrvtHktAqGmM4xVaq1jN0vL73g=
+SIZE (mpd-0.20.8.tar.gz) = 1093412
Index: patches/patch-src_Main_cxx
===================================================================
RCS file: patches/patch-src_Main_cxx
diff -N patches/patch-src_Main_cxx
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_Main_cxx 23 May 2017 18:47:19 -0000
@@ -0,0 +1,16 @@
+$OpenBSD$
+
+Fix logic
+
+Index: src/Main.cxx
+--- src/Main.cxx.orig
++++ src/Main.cxx
+@@ -123,7 +123,7 @@ static constexpr size_t MEGABYTE = 1024 * KILOBYTE;
+ static constexpr size_t DEFAULT_BUFFER_SIZE = 4 * MEGABYTE;
+
+ static
+-#if GCC_OLDER_THAN(5,0)
++#if GCC_OLDER_THAN(5,0) || defined(__clang__)
+ /* gcc 4.x has no "constexpr" for std::max() */
+ const
+ #else