aboutsummaryrefslogtreecommitdiff
path: root/package/ncmpc
diff options
context:
space:
mode:
Diffstat (limited to 'package/ncmpc')
-rw-r--r--package/ncmpc/0002-Global-Bindings-add-KeyBindings-constructor-to-simplify-initializers.patch217
-rw-r--r--package/ncmpc/0002-meson.build-add-atomic-dependency-for-sparc.patch43
-rw-r--r--package/ncmpc/Config.in7
-rw-r--r--package/ncmpc/ncmpc.hash2
-rw-r--r--package/ncmpc/ncmpc.mk17
5 files changed, 60 insertions, 226 deletions
diff --git a/package/ncmpc/0002-Global-Bindings-add-KeyBindings-constructor-to-simplify-initializers.patch b/package/ncmpc/0002-Global-Bindings-add-KeyBindings-constructor-to-simplify-initializers.patch
deleted file mode 100644
index 217fa9b55b..0000000000
--- a/package/ncmpc/0002-Global-Bindings-add-KeyBindings-constructor-to-simplify-initializers.patch
+++ /dev/null
@@ -1,217 +0,0 @@
-From da27fcc39e187671b5e4373848f701a3d910446c Mon Sep 17 00:00:00 2001
-From: Max Kellermann <max@musicpd.org>
-Date: Wed, 26 Sep 2018 09:51:09 +0200
-Subject: [PATCH] {Global,}Bindings: add KeyBindings constructor to simplify
- initializers
-
-As a side effect, this works around a build failure with GCC 4.9.
-
-Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-[Retrieved from
-https://github.com/MusicPlayerDaemon/ncmpc/commit/da27fcc39e187671b5e4373848f701a3d910446c
-and updated for 0.31 (remove NEWS update)]
----
- src/Bindings.hxx | 3 +
- src/GlobalBindings.cxx | 142 ++++++++++++++++++++---------------------
- 3 files changed, 75 insertions(+), 71 deletions(-)
-
-diff --git a/src/Bindings.hxx b/src/Bindings.hxx
-index 342d951..0c630dc 100644
---- a/src/Bindings.hxx
-+++ b/src/Bindings.hxx
-@@ -42,6 +42,9 @@ struct KeyBinding {
- bool modified = false;
- #endif
-
-+ constexpr KeyBinding(int a, int b=0, int c=0) noexcept
-+ :keys{{a, b, c}} {}
-+
- gcc_pure
- bool HasKey(int key) const {
- return std::find(keys.begin(), keys.end(), key) != keys.end();
-diff --git a/src/GlobalBindings.cxx b/src/GlobalBindings.cxx
-index b565848..8049ed2 100644
---- a/src/GlobalBindings.cxx
-+++ b/src/GlobalBindings.cxx
-@@ -51,110 +51,110 @@
-
- static KeyBindings global_key_bindings{{{
- #ifdef ENABLE_KEYDEF_SCREEN
-- { {'K', 0, 0 } },
-+ {'K'},
- #endif
-- { { 'q', 'Q', C('C') } },
-+ {'q', 'Q', C('C')},
-
- /* movement */
-- { { UP, 'k', 0 } },
-- { { DWN, 'j', 0 } },
-- { { 'H', 0, 0 } },
-- { { 'M', 0, 0 } },
-- { { 'L', 0, 0 } },
-- { { HOME, C('A'), 0 } },
-- { { END, C('E'), 0 } },
-- { { PGUP, 0, 0 } },
-- { { PGDN, 0, 0 } },
-- { { 'v', 0, 0 } },
-- { { C('N'), 0, 0 } },
-- { { C('B'), 0, 0 } },
-- { { 'N', 0, 0 } },
-- { { 'B', 0, 0 } },
-- { { 'l', 0, 0 } },
-+ {UP, 'k'},
-+ {DWN, 'j'},
-+ {'H'},
-+ {'M'},
-+ {'L'},
-+ {HOME, C('A')},
-+ {END, C('E')},
-+ {PGUP},
-+ {PGDN},
-+ {'v', 0},
-+ {C('N'), 0},
-+ {C('B'), 0},
-+ {'N', 0},
-+ {'B', 0},
-+ {'l'},
-
- /* basic screens */
-- { { '1', F1, 'h' } },
-- { { '2', F2, 0 } },
-- { { '3', F3, 0 } },
-+ {'1', F1, 'h'},
-+ {'2', F2},
-+ {'3', F3},
-
- /* player commands */
-- { { RET, 0, 0 } },
-- { { 'P', 0, 0 } },
-- { { 's', BS, 0 } },
-- { { 'o', 0, 0 } },
-- { { '>', 0, 0 } },
-- { { '<', 0, 0 } },
-- { { 'f', 0, 0 } },
-- { { 'b', 0, 0 } },
-- { { '+', RGHT, 0 } },
-- { { '-', LEFT, 0 } },
-- { { ' ', 0, 0 } },
-- { { 't', 0, 0 } },
-- { { DEL, 'd', 0 } },
-- { { 'Z', 0, 0 } },
-- { { 'c', 0, 0 } },
-- { { 'r', 0, 0 } },
-- { { 'z', 0, 0 } },
-- { { 'y', 0, 0 } },
-- { { 'C', 0, 0 } },
-- { { 'x', 0, 0 } },
-- { { C('U'), 0, 0 } },
-- { { 'S', 0, 0 } },
-- { { 'a', 0, 0 } },
--
-- { { '!', 0, 0 } },
-- { { '"', 0, 0 } },
--
-- { { 'G', 0, 0 } },
-+ {RET},
-+ {'P'},
-+ {'s', BS},
-+ {'o'},
-+ {'>'},
-+ {'<'},
-+ {'f'},
-+ {'b'},
-+ {'+', RGHT},
-+ {'-', LEFT},
-+ {' '},
-+ {'t'},
-+ {DEL, 'd'},
-+ {'Z'},
-+ {'c'},
-+ {'r'},
-+ {'z'},
-+ {'y'},
-+ {'C'},
-+ {'x'},
-+ {C('U')},
-+ {'S'},
-+ {'a'},
-+
-+ {'!'},
-+ {'"'},
-+
-+ {'G'},
-
- /* lists */
-- { { C('K'), 0, 0 } },
-- { { C('J'), 0, 0 } },
-- { { C('L'), 0, 0 } },
-+ {C('K')},
-+ {C('J')},
-+ {C('L')},
-
-
- /* ncmpc options */
-- { { 'w', 0, 0 } },
-- { { 'U', 0, 0 } },
-+ {'w'},
-+ {'U'},
-
- /* change screen */
-- { { TAB, 0, 0 } },
-- { { STAB, 0, 0 } },
-- { { '`', 0, 0 } },
-+ {TAB},
-+ {STAB},
-+ {'`'},
-
-
- /* find */
-- { { '/', 0, 0 } },
-- { { 'n', 0, 0 } },
-- { { '?', 0, 0 } },
-- { { 'p', 0, 0 } },
-- { { '.', 0, 0 } },
-+ {'/'},
-+ {'n'},
-+ {'?'},
-+ {'p'},
-+ {'.'},
-
-
- /* extra screens */
- #ifdef ENABLE_ARTIST_SCREEN
-- { {'4', F4, 0 } },
-+ {'4', F4},
- #endif
- #ifdef ENABLE_SEARCH_SCREEN
-- { {'5', F5, 0 } },
-- { {'m', 0, 0 } },
-+ {'5', F5},
-+ {'m'},
- #endif
- #ifdef ENABLE_SONG_SCREEN
-- { { 'i', 0, 0 } },
-+ {'i'},
- #endif
- #ifdef ENABLE_LYRICS_SCREEN
-- { {'7', F7, 0 } },
-- { {ESC, 0, 0 } },
-- { {'u', 0, 0 } },
-- { {'e', 0, 0 } },
-+ {'7', F7},
-+ {ESC},
-+ {'u'},
-+ {'e'},
- #endif
-
- #ifdef ENABLE_OUTPUTS_SCREEN
-- { {'8', F8, 0 } },
-+ {'8', F8},
- #endif
-
- #ifdef ENABLE_CHAT_SCREEN
-- { {'9', F9, 0} },
-+ {'9', F9},
- #endif
- }}};
-
diff --git a/package/ncmpc/0002-meson.build-add-atomic-dependency-for-sparc.patch b/package/ncmpc/0002-meson.build-add-atomic-dependency-for-sparc.patch
new file mode 100644
index 0000000000..fd24589760
--- /dev/null
+++ b/package/ncmpc/0002-meson.build-add-atomic-dependency-for-sparc.patch
@@ -0,0 +1,43 @@
+From d2bd33ec18c146b27fb5aff7dd0089faa195ef9b Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Mon, 11 Feb 2019 21:42:01 +0100
+Subject: [PATCH] meson.build: add atomic dependency for sparc
+
+Linking with libatomic is needed on sparc otherwise build fails on:
+ncmpc@exe/src_Main.cxx.o: In function `std::__atomic_base<long>::operator++()':
+/home/buildroot/autobuild/instance-1/output/host/opt/ext-toolchain/sparc-buildroot-linux-uclibc/include/c++/6.4.0/bits/atomic_base.h:296: undefined reference to `__atomic_fetch_add_4'
+
+Fixes:
+ - http://autobuild.buildroot.org/results/7ac1a07e4f72633d3ec92b79dc5d8c062490abdc
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+[Upstream status: https://github.com/MusicPlayerDaemon/ncmpc/pull/45]
+---
+ meson.build | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/meson.build b/meson.build
+index 2e6defc..b393e39 100644
+--- a/meson.build
++++ b/meson.build
+@@ -174,6 +174,9 @@ else
+ pcre_dep = declare_dependency()
+ endif
+
++# Needed on sparc
++atomic_dep = cc.find_library('atomic', required: false)
++
+ inc = include_directories(
+ 'src',
+
+@@ -352,6 +355,7 @@ ncmpc = executable('ncmpc',
+ sources,
+ include_directories: inc,
+ dependencies: [
++ atomic_dep,
+ thread_dep,
+ boost_dep,
+ pcre_dep,
+--
+2.14.1
+
diff --git a/package/ncmpc/Config.in b/package/ncmpc/Config.in
index d22ea368b4..00639b924a 100644
--- a/package/ncmpc/Config.in
+++ b/package/ncmpc/Config.in
@@ -2,10 +2,11 @@ config BR2_PACKAGE_NCMPC
bool "ncmpc"
depends on BR2_USE_MMU # fork()
depends on BR2_INSTALL_LIBSTDCPP
- depends on BR2_USE_WCHAR # libglib2 -> gettext
- depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2
+ depends on BR2_USE_WCHAR # boost
+ depends on BR2_TOOLCHAIN_HAS_THREADS # boost
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++14
- select BR2_PACKAGE_LIBGLIB2
+ select BR2_PACKAGE_BOOST
+ select BR2_PACKAGE_BOOST_SYSTEM
select BR2_PACKAGE_LIBMPDCLIENT
select BR2_PACKAGE_NCURSES
help
diff --git a/package/ncmpc/ncmpc.hash b/package/ncmpc/ncmpc.hash
index afa5260be7..368bc642d1 100644
--- a/package/ncmpc/ncmpc.hash
+++ b/package/ncmpc/ncmpc.hash
@@ -1,5 +1,5 @@
# Locally calculated after checking pgp signature
-sha256 8d3416c5b99ec21527b506f75bd7e536ddff60e61695b05989e791a751611bcc ncmpc-0.31.tar.xz
+sha256 94e04a34854015aa013b43ec15b578f4541d077cf7ae5bf7c0944475673fd7a5 ncmpc-0.33.tar.xz
# Hash for license file:
sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING
diff --git a/package/ncmpc/ncmpc.mk b/package/ncmpc/ncmpc.mk
index 787f58201a..2e52be27d5 100644
--- a/package/ncmpc/ncmpc.mk
+++ b/package/ncmpc/ncmpc.mk
@@ -5,22 +5,29 @@
################################################################################
NCMPC_VERSION_MAJOR = 0
-NCMPC_VERSION = $(NCMPC_VERSION_MAJOR).31
+NCMPC_VERSION = $(NCMPC_VERSION_MAJOR).33
NCMPC_SOURCE = ncmpc-$(NCMPC_VERSION).tar.xz
NCMPC_SITE = http://www.musicpd.org/download/ncmpc/$(NCMPC_VERSION_MAJOR)
-NCMPC_DEPENDENCIES = host-pkgconf libglib2 libmpdclient ncurses
+NCMPC_DEPENDENCIES = boost host-pkgconf libmpdclient ncurses
NCMPC_LICENSE = GPL-2.0+
NCMPC_LICENSE_FILES = COPYING
NCMPC_CONF_OPTS = \
-Dcurses=ncurses \
- -Ddocumentation=false
+ -Ddocumentation=disabled
ifeq ($(BR2_PACKAGE_LIRC_TOOLS),y)
NCMPC_DEPENDENCIES += lirc-tools
-NCMPC_CONF_OPTS += -Dlirc=true
+NCMPC_CONF_OPTS += -Dlirc=enabled
else
-NCMPC_CONF_OPTS += -Dlirc=false
+NCMPC_CONF_OPTS += -Dlirc=disabled
+endif
+
+ifeq ($(BR2_PACKAGE_PCRE),y)
+NCMPC_DEPENDENCIES += pcre
+NCMPC_CONF_OPTS += -Dregex=enabled
+else
+NCMPC_CONF_OPTS += -Dregex=disabled
endif
$(eval $(meson-package))