summaryrefslogtreecommitdiff
path: root/audio
diff options
context:
space:
mode:
authornia <nia@pkgsrc.org>2019-09-14 12:19:40 +0000
committernia <nia@pkgsrc.org>2019-09-14 12:19:40 +0000
commit3788ae06a3bb82932e2fb67b2ccec4b261861bed (patch)
tree790bfb8ca98a70025336ff87e60bb88c0bedb603 /audio
parent6ddc05f54a4406b77ca4c827059b37b3fae23645 (diff)
downloadpkgsrc-3788ae06a3bb82932e2fb67b2ccec4b261861bed.tar.gz
ncmpc: Update to 0.34
ncmpc 0.34 - (2019-04-10) * show total duration of range selection in status bar * fix high CPU usage in key bindings check * fix high CPU usage during text input * fix background color "none" * adapt to Boost 1.70.0 API changes * fixed manual install dir ncmpc 0.33 - (2018-10-22) * artist page: rename to "library" * library page: make tag list configurable * fix color configuration parser bug * fix build failure when libpcre is not found * remove support for liblircclient (only liblirc) * build: require Meson 0.47 * build: use Meson option type `feature` * build: remove obsolete option `tcp` * build: add option to disable regular expression support ncmpc 0.32 - (2018-10-05) * fix crash bug on queue page * fix crash bug on lyrics page * fix off-by-one buffer overflow bug * fix manpage installation directory * fix build breakages with some ncurses builds * work around GCC 4.9 build failure * remove doxygen support * new dependency: Boost * remove dependency on GLib ncmpc 0.31 - (2018-09-19) * fix "No such song" in search screen * fix progressbar when colors are disabled * enable colors by default * allow configuring per-style background colors * keep current song in xterm title when MPD is paused * load configuration from $XDG_CONFIG_HOME/ncmpc/config * always show the screen list at the top * fix memory leak * require MPD 0.19 ncmpc 0.30 - (2018-04-04) * fix crash after pressing ^W in search screen * fix crash bug in chat screen * fix completion list * new color "progressbar-background" * switch the code base to C++14 * build manual with Sphinx ncmpc 0.29 - (2017-11-05) * fix crash after losing MPD connection * fix crash after DNS lookup error * add Meson option "lyrics_plugin_dir" * fallback libncurses detection without pkg-config ncmpc 0.28 - (2017-09-21) * fix crash on lyrics screen * fix memory leak * hide the MPD password from the queue screen title * implement password for asynchronous connect * build with Meson instead of autotools ncmpc 0.27 - (2017-03-25) * work around connect failure if /var/run/mpd/socket does not exist * remove the status bar clock (option "display-time") * fix assertion failure after connect failure * several Windows build fixes ncmpc 0.26 - (2017-03-20) * require libmpdclient 2.9 * adapt to lirc 0.9.4 * lyricswiki: update regex * screen_song: show "f" and "dsd" formats * connect asynchronously * fix flickering in color mode * fix gcc 7 warnings
Diffstat (limited to 'audio')
-rw-r--r--audio/ncmpc/DESCR5
-rw-r--r--audio/ncmpc/Makefile56
-rw-r--r--audio/ncmpc/PLIST5
-rw-r--r--audio/ncmpc/distinfo15
-rw-r--r--audio/ncmpc/options.mk8
-rw-r--r--audio/ncmpc/patches/patch-ae17
-rw-r--r--audio/ncmpc/patches/patch-doc_meson.build12
-rw-r--r--audio/ncmpc/patches/patch-meson.build19
-rw-r--r--audio/ncmpc/patches/patch-src_charset.cxx35
-rw-r--r--audio/ncmpc/patches/patch-src_ncu.cxx18
10 files changed, 144 insertions, 46 deletions
diff --git a/audio/ncmpc/DESCR b/audio/ncmpc/DESCR
index 27ced55ff6e..71e44a7e544 100644
--- a/audio/ncmpc/DESCR
+++ b/audio/ncmpc/DESCR
@@ -1,2 +1,3 @@
-ncmpc is a curses client for MPD, the Music Player Daemon with an
-interface is inspired by cplay.
+ncmpc is a fully featured MPD client, which runs in a terminal (using curses).
+Its goal is to provide a keyboard oriented and consistent interface to MPD,
+without wasting resources.
diff --git a/audio/ncmpc/Makefile b/audio/ncmpc/Makefile
index c0f70f9adfd..cb0d7770be0 100644
--- a/audio/ncmpc/Makefile
+++ b/audio/ncmpc/Makefile
@@ -1,23 +1,47 @@
-# $NetBSD: Makefile,v 1.30 2016/08/20 05:31:09 mef Exp $
+# $NetBSD: Makefile,v 1.31 2019/09/14 12:19:40 nia Exp $
-DISTNAME= ncmpc-0.25
-CATEGORIES= audio
-#MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=musicpd/}
-MASTER_SITES= http://www.musicpd.org/download/ncmpc/0/
-EXTRACT_SUFX= .tar.xz
+DISTNAME= ncmpc-0.34
+CATEGORIES= audio
+MASTER_SITES= https://musicpd.org/download/ncmpc/0/
+EXTRACT_SUFX= .tar.xz
-MAINTAINER= pkgsrc-users@NetBSD.org
-HOMEPAGE= http://mpd.wikia.com/wiki/Client:Ncmpc
-COMMENT= Curses client for Music Player Daemon
-LICENSE= gnu-gpl-v2
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= https://musicpd.org/clients/ncmpc/
+COMMENT= Fully featured musicpd client using curses
+LICENSE= gnu-gpl-v2
-.include "options.mk"
+USE_TOOLS+= pkg-config xgettext
+USE_LANGUAGES= c c++14
+FAKE_NCURSES= yes
+
+TOOL_DEPENDS+= ${PYPKGPREFIX}-sphinx-[0-9]*:../../textproc/py-sphinx
+
+MESON_ARGS+= -Dlirc=disabled
+MESON_ARGS+= -Dhtml_manual=false
+
+# C++14
+GCC_REQD+= 4.9
-GNU_CONFIGURE= yes
-USE_PKGLOCALEDIR= yes
-USE_LIBTOOL= yes
-USE_TOOLS+= pkg-config msgfmt
+# make stderr readable
+CXXFLAGS+= -Wno-noexcept-type
+CXXFLAGS+= -Wno-undef
+LDFLAGS+= ${BUILDLINK_LDADD.curses}
+
+LDFLAGS.SunOS+= -lintl
+LDFLAGS.NetBSD+= -lintl
+
+SUBST_CLASSES+= py
+SUBST_STAGE.py= pre-configure
+SUBST_MESSAGE.py= Set Python version variables.
+SUBST_FILES.py+= doc/meson.build
+SUBST_VARS.py+= PYVERSSUFFIX
+
+.include "options.mk"
+.include "../../devel/py-meson/build.mk"
.include "../../audio/libmpdclient/buildlink3.mk"
-.include "../../devel/glib2/buildlink3.mk"
+.include "../../devel/boost-headers/buildlink3.mk"
+.include "../../devel/pcre/buildlink3.mk"
+.include "../../lang/python/tool.mk"
+.include "../../mk/pthread.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
diff --git a/audio/ncmpc/PLIST b/audio/ncmpc/PLIST
index c7d4159e856..1d1d9b2ed7c 100644
--- a/audio/ncmpc/PLIST
+++ b/audio/ncmpc/PLIST
@@ -1,9 +1,10 @@
-@comment $NetBSD: PLIST,v 1.11 2013/10/01 17:50:57 drochner Exp $
+@comment $NetBSD: PLIST,v 1.12 2019/09/14 12:19:40 nia Exp $
bin/ncmpc
man/man1/ncmpc.1
share/doc/ncmpc/AUTHORS
+share/doc/ncmpc/COPYING
share/doc/ncmpc/NEWS
-share/doc/ncmpc/README
+share/doc/ncmpc/README.rst
share/doc/ncmpc/config.sample
share/doc/ncmpc/keys.sample
share/doc/ncmpc/ncmpc.lirc
diff --git a/audio/ncmpc/distinfo b/audio/ncmpc/distinfo
index 6726b564ce6..502c8db3d65 100644
--- a/audio/ncmpc/distinfo
+++ b/audio/ncmpc/distinfo
@@ -1,7 +1,10 @@
-$NetBSD: distinfo,v 1.16 2016/08/20 05:31:09 mef Exp $
+$NetBSD: distinfo,v 1.17 2019/09/14 12:19:40 nia Exp $
-SHA1 (ncmpc-0.25.tar.xz) = 7b4bc74c76b2e2947689af4157b45b01a9329df0
-RMD160 (ncmpc-0.25.tar.xz) = b46432e599064a05f4b41bd309cd3a3464400153
-SHA512 (ncmpc-0.25.tar.xz) = 8c871db367a70ec3b68c1337d6ec26b8ca4982cd11f674abd17bf6c5df429d366a7b531f8668d4665688b5ae9a4f5f2ba92bb1a36cf491bf8dd3f8874699b0b3
-Size (ncmpc-0.25.tar.xz) = 298128 bytes
-SHA1 (patch-ae) = 5fdc9b477dd89ecda0cbbca37ec19905473a4b08
+SHA1 (ncmpc-0.34.tar.xz) = 60face4603f727f40a09672b2782ea04795c71db
+RMD160 (ncmpc-0.34.tar.xz) = 7b6d4fe1937dd1d1929032cd2b49f7e08dd3bde7
+SHA512 (ncmpc-0.34.tar.xz) = e206cc2d61799a97edf1182de4cee1c0fa447bd1fac136dc48670cb624a7efc903c693b0c541fbc00fcb94e055c83be1ca6370386c99131a1b571f47b67c35f4
+Size (ncmpc-0.34.tar.xz) = 227892 bytes
+SHA1 (patch-doc_meson.build) = c19102b6f7f069a2a147b66e6ed4b4585332ac8e
+SHA1 (patch-meson.build) = b16babee9f8e5799a600bf029b3bb606e32a265a
+SHA1 (patch-src_charset.cxx) = 0925365535ca35de73e94c1fa3737c8c71eee101
+SHA1 (patch-src_ncu.cxx) = 0a4516a7c5a9819977873a78d5078a22f0414356
diff --git a/audio/ncmpc/options.mk b/audio/ncmpc/options.mk
index 14f6fd50d44..1245cacad84 100644
--- a/audio/ncmpc/options.mk
+++ b/audio/ncmpc/options.mk
@@ -1,4 +1,4 @@
-# $NetBSD: options.mk,v 1.3 2017/01/04 16:54:33 roy Exp $
+# $NetBSD: options.mk,v 1.4 2019/09/14 12:19:40 nia Exp $
PKG_OPTIONS_VAR= PKG_OPTIONS.ncmpc
PKG_SUPPORTED_OPTIONS= wide-curses
@@ -10,6 +10,8 @@ PKG_SUGGESTED_OPTIONS= wide-curses
###
### Wide curses support; otherwise, default to using narrow curses.
###
-.if empty(PKG_OPTIONS:Mwide-curses)
-CONFIGURE_ARGS+= --disable-wide
+.if !empty(PKG_OPTIONS:Mwide-curses)
+MESON_ARGS+= -Dcurses=ncursesw
+.else
+MESON_ARGS+= -Dcurses=ncurses
.endif
diff --git a/audio/ncmpc/patches/patch-ae b/audio/ncmpc/patches/patch-ae
deleted file mode 100644
index 2fdd854c808..00000000000
--- a/audio/ncmpc/patches/patch-ae
+++ /dev/null
@@ -1,17 +0,0 @@
-$NetBSD: patch-ae,v 1.2 2014/11/21 13:47:47 mef Exp $
-
-(from the commit log)
-date: 2010-02-25 03:08:12 +0900; author: drochner; state: Exp;
--Set the keyboard mode to raw() explicitely. ncurses seems to do
- this in some magical way, didn't find a hint in documentation.
-
---- src/ncu.c.orig 2009-09-24 14:05:30.000000000 +0000
-+++ src/ncu.c
-@@ -58,6 +58,7 @@ ncu_init(void)
-
- /* enable extra keys */
- keypad(stdscr, TRUE);
-+ raw();
-
- /* initialize mouse support */
- #ifdef HAVE_GETMOUSE
diff --git a/audio/ncmpc/patches/patch-doc_meson.build b/audio/ncmpc/patches/patch-doc_meson.build
new file mode 100644
index 00000000000..fad57475a5a
--- /dev/null
+++ b/audio/ncmpc/patches/patch-doc_meson.build
@@ -0,0 +1,12 @@
+$NetBSD: patch-doc_meson.build,v 1.1 2019/09/14 12:19:40 nia Exp $
+
+Work around our weird sphinx binary name.
+
+--- doc/meson.build.orig 2019-04-10 09:08:34.000000000 +0000
++++ doc/meson.build
+@@ -1,4 +1,4 @@
+-sphinx = find_program('sphinx-build', required: get_option('documentation'))
++sphinx = find_program('sphinx-build@PYVERSSUFFIX@', required: get_option('documentation'))
+ if not sphinx.found()
+ subdir_done()
+ endif
diff --git a/audio/ncmpc/patches/patch-meson.build b/audio/ncmpc/patches/patch-meson.build
new file mode 100644
index 00000000000..7d5c99dcac4
--- /dev/null
+++ b/audio/ncmpc/patches/patch-meson.build
@@ -0,0 +1,19 @@
+$NetBSD: patch-meson.build,v 1.1 2019/09/14 12:19:40 nia Exp $
+
+NetBSD with FAKE_NCURSES does not currently create pkgconfig files.
+Work around this for now.
+
+--- meson.build.orig 2019-04-10 09:08:34.000000000 +0000
++++ meson.build
+@@ -56,9 +56,9 @@ conf.set('ENABLE_MULTIBYTE', get_option(
+
+ curses = get_option('curses')
+ if curses == 'ncursesw'
+- curses_dep = dependency('ncursesw')
++ curses_dep = dependency('ncursesw', required: false)
+ elif curses == 'ncurses'
+- curses_dep = dependency('ncurses')
++ curses_dep = dependency('ncurses', required: false)
+ else
+ curses_dep = dependency('ncursesw', required: false)
+ if curses_dep.found()
diff --git a/audio/ncmpc/patches/patch-src_charset.cxx b/audio/ncmpc/patches/patch-src_charset.cxx
new file mode 100644
index 00000000000..4e118bd728d
--- /dev/null
+++ b/audio/ncmpc/patches/patch-src_charset.cxx
@@ -0,0 +1,35 @@
+$NetBSD: patch-src_charset.cxx,v 1.1 2019/09/14 12:19:40 nia Exp $
+
+Don't strip constness for the iconv input on SunOS and NetBSD,
+which continue to have the input as const.
+
+--- src/charset.cxx.orig 2019-04-10 09:08:34.000000000 +0000
++++ src/charset.cxx
+@@ -64,9 +64,13 @@ Iconv(iconv_t i,
+ --dest_size; /* reserve once byte for the null terminator */
+
+ while (src_length > 0) {
++#if !defined(__NetBSD__) && !defined(__sun)
+ size_t err = iconv(i,
+ const_cast<char **>(&src), &src_length,
+ &dest, &dest_size);
++#else
++ size_t err = iconv(i, &src, &src_length, &dest, &dest_size);
++#endif
+ if (err == (size_t)-1) {
+ switch (errno) {
+ case EILSEQ:
+@@ -130,9 +134,13 @@ Iconv(iconv_t i,
+ char buffer[1024], *outbuf = buffer;
+ size_t outbytesleft = sizeof(buffer);
+
++#if !defined(__NetBSD__) && !defined(__sun)
+ size_t err = iconv(i,
+ const_cast<char **>(&src), &src_length,
+ &outbuf, &outbytesleft);
++#else
++ size_t err = iconv(i, &src, &src_length, &outbuf, &outbytesleft);
++#endif
+ dest.append(buffer, outbuf);
+ if (err == (size_t)-1) {
+ switch (errno) {
diff --git a/audio/ncmpc/patches/patch-src_ncu.cxx b/audio/ncmpc/patches/patch-src_ncu.cxx
new file mode 100644
index 00000000000..e02b11d6a9c
--- /dev/null
+++ b/audio/ncmpc/patches/patch-src_ncu.cxx
@@ -0,0 +1,18 @@
+$NetBSD: patch-src_ncu.cxx,v 1.1 2019/09/14 12:19:40 nia Exp $
+
+(from the commit log)
+date: 2010-02-25 03:08:12 +0900; author: drochner; state: Exp;
+ Set the keyboard mode to raw() explicitely. ncurses seems to do
+ this in some magical way, didn't find a hint in documentation.
+
+--- src/ncu.cxx.orig 2019-04-10 09:08:34.000000000 +0000
++++ src/ncu.cxx
+@@ -55,6 +55,8 @@ ncu_init()
+ /* enable extra keys */
+ keypad(stdscr, true);
+
++ raw();
++
+ /* initialize mouse support */
+ #ifdef HAVE_GETMOUSE
+ if (options.enable_mouse)