View | Details | Raw Unified | Return to bug 230721 | Differences between
and this patch

Collapse All | Expand All

(-)Makefile (-40 / +16 lines)
Lines 2-12 Link Here
2
# $FreeBSD$
2
# $FreeBSD$
3
3
4
PORTNAME=	ncmpc
4
PORTNAME=	ncmpc
5
PORTVERSION=	0.29
5
PORTVERSION=	0.30
6
CATEGORIES=	audio
6
CATEGORIES=	audio
7
MASTER_SITES=	http://www.musicpd.org/download/ncmpc/0/
7
MASTER_SITES=	http://www.musicpd.org/download/ncmpc/0/
8
8
9
MAINTAINER=	henrik@affekt.org
9
MAINTAINER=	laurent@nuxi.ca
10
COMMENT=	Ncurses client for the musicpd
10
COMMENT=	Ncurses client for the musicpd
11
11
12
LICENSE=	GPLv2+
12
LICENSE=	GPLv2+
Lines 14-63 Link Here
14
14
15
LIB_DEPENDS=	libmpdclient.so:audio/libmpdclient
15
LIB_DEPENDS=	libmpdclient.so:audio/libmpdclient
16
16
17
USES=		iconv localbase meson ncurses pkgconfig tar:xz
17
USES=		iconv localbase meson ncurses pkgconfig tar:xz compiler:c++14-lang
18
USE_GNOME=	glib20
18
USE_GNOME=	glib20
19
19
20
OPTIONS_DEFINE=	NLS LYRICS
20
OPTIONS_DEFINE=		NLS LYRICS MANPAGES DOCS
21
OPTIONS_DEFAULT=	LYRICS
21
OPTIONS_DEFAULT=	LYRICS MANPAGES
22
LYRICS_DESC=	Compile with lyrics screen
22
OPTIONS_SUB=		yes
23
23
24
PLIST_FILES=	bin/ncmpc \
24
LYRICS_DESC=		Compile with lyrics screen
25
		man/man1/ncmpc.1.gz \
25
LYRICS_MESON_TRUE=	lyrics_screen
26
		${EXAMPLESDIR}/config \
27
		${EXAMPLESDIR}/keys \
28
		${EXAMPLESDIR}/ncmpc.lirc
29
26
30
NLS_USES=		gettext
27
NLS_USES=		gettext
31
NLS_MESON_TRUE=	nls
28
NLS_MESON_TRUE=		nls
32
29
33
LANGUAGES=cs da de eo es fi fr gl he hu it ko nb nl pl pt_BR ru sk sv uk zh_CN
30
MANPAGES_USES=		python
34
.for language in ${LANGUAGES}
31
MANPAGES_MESON_TRUE=	manual
35
NLS_PLIST_FILES+=share/locale/${language}/LC_MESSAGES/ncmpc.mo
32
MANPAGES_BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}sphinx>0:textproc/py-sphinx@${PY_FLAVOR}
36
.endfor
33
MANPAGES_MAKE_ENV=	PYTHON=${PYTHON_CMD} \
34
			SPHINX=sphinx-build-${PYTHON_VER}
37
35
38
LYRICS_MESON_TRUE=	lyrics_screen
36
DOCS_IMPLIES=		MANPAGES
39
LYRICS_PLIST_FILES=	lib/ncmpc/lyrics/10-hd.sh \
37
DOCS_MESON_TRUE=	html_manual
40
		lib/ncmpc/lyrics/20-lyricwiki.rb
41
38
42
do-install:
43
	${INSTALL_PROGRAM} ${WRKSRC}/_build/ncmpc ${STAGEDIR}${PREFIX}/bin
44
	@${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
45
	${INSTALL_DATA} ${WRKSRC}/doc/config.sample ${STAGEDIR}${EXAMPLESDIR}/config
46
	${INSTALL_DATA} ${WRKSRC}/doc/keys.sample ${STAGEDIR}${EXAMPLESDIR}/keys
47
	${INSTALL_DATA} ${WRKSRC}/doc/ncmpc.lirc ${STAGEDIR}${EXAMPLESDIR}
48
	${INSTALL_MAN} ${WRKSRC}/doc/ncmpc.1 ${STAGEDIR}${MAN1PREFIX}/man/man1
49
50
do-install-NLS-on:
51
.for language in ${LANGUAGES}
52
	@${MKDIR} ${STAGEDIR}${PREFIX}/share/locale/${language}/LC_MESSAGES
53
	${INSTALL_DATA} ${WRKSRC}/po/${language}.po \
54
		${STAGEDIR}${PREFIX}/share/locale/${language}/LC_MESSAGES/ncmpc.mo
55
.endfor
56
57
do-install-LYRICS-on:
58
	@${MKDIR} ${STAGEDIR}${PREFIX}/lib/ncmpc/lyrics
59
	(cd ${WRKSRC}/lyrics && ${INSTALL_SCRIPT} \
60
		10-hd.sh 20-lyricwiki.rb \
61
		${STAGEDIR}${PREFIX}/lib/ncmpc/lyrics)
62
63
.include <bsd.port.mk>
39
.include <bsd.port.mk>
(-)distinfo (-3 / +3 lines)
Lines 1-3 Link Here
1
TIMESTAMP = 1515767012
1
TIMESTAMP = 1534510290
2
SHA256 (ncmpc-0.29.tar.xz) = ef68a9b67172383ea80ee46579015109433fa058728812d2b0ebede660d85f12
2
SHA256 (ncmpc-0.30.tar.xz) = e3fe0cb58b8a77f63fb1645c2f974b334f1614efdc834ec698ee7d861f1b12a3
3
SIZE (ncmpc-0.29.tar.xz) = 233876
3
SIZE (ncmpc-0.30.tar.xz) = 245212
(-)files/patch-doc_meson.build (+50 lines)
Line 0 Link Here
1
--- doc/meson.build.orig	2018-04-04 08:23:50 UTC
2
+++ doc/meson.build
3
@@ -1,24 +1,28 @@
4
 sphinx = find_program('sphinx-build', required:false)
5
-if sphinx.found()
6
-  custom_target(
7
-    'HTML documentation',
8
-    output: 'html',
9
-    input: ['index.rst', 'conf.py'],
10
-    command: [sphinx, '-q', '-b', 'html', '-d', '@OUTDIR@/doctrees', meson.current_source_dir(), '@OUTPUT@'],
11
-    build_by_default: true,
12
-    install: true,
13
-    install_dir: join_paths(get_option('datadir'), 'doc', meson.project_name()),
14
-  )
15
+if sphinx.found() and get_option('manual')
16
+  if get_option('html_manual')
17
+    custom_target(
18
+      'HTML documentation',
19
+      output: 'html',
20
+      input: ['index.rst', 'conf.py'],
21
+      command: [sphinx, '-q', '-b', 'html', '-d', '@OUTDIR@/html_doctrees', meson.current_source_dir(), '@OUTPUT@'],
22
+      build_by_default: true,
23
+      install: true,
24
+      install_dir: join_paths(get_option('datadir'), 'doc', meson.project_name()),
25
+    )
26
+  endif
27
 
28
-  custom_target(
29
-    'Manpage documentation',
30
-    output: 'man',
31
-    input: ['index.rst', 'conf.py'],
32
-    command: [sphinx, '-q', '-b', 'man', '-d', '@OUTDIR@/doctrees', meson.current_source_dir(), '@OUTPUT@/man1'],
33
-    build_by_default: true,
34
-    install: true,
35
-    install_dir: get_option('datadir'),
36
-  )
37
+  if get_option('manual')
38
+    custom_target(
39
+      'Manpage documentation',
40
+      output: 'man1',
41
+      input: ['index.rst', 'conf.py'],
42
+      command: [sphinx, '-q', '-b', 'man', '-d', '@OUTDIR@/man_doctrees', meson.current_source_dir(), '@OUTPUT@'],
43
+      build_by_default: true,
44
+      install: true,
45
+      install_dir: get_option('mandir'),
46
+    )
47
+  endif
48
 endif
49
 
50
 if get_option('documentation')
(-)files/patch-meson__options.txt (+14 lines)
Line 0 Link Here
1
--- meson_options.txt.orig	2018-04-04 08:23:50 UTC
2
+++ meson_options.txt
3
@@ -83,3 +83,11 @@ option('chat_screen', type: 'boolean',
4
 option('documentation', type: 'boolean',
5
   value: false,
6
   description: 'Build API documentation')
7
+
8
+option('manual', type: 'boolean',
9
+  value: true,
10
+  description: 'Build the manual')
11
+
12
+option('html_manual', type: 'boolean',
13
+  value: true,
14
+  description: 'Build the HTML manual')
(-)files/patch-src_screen.hxx (+21 lines)
Line 0 Link Here
1
--- src/screen.hxx.orig	2018-04-04 08:23:50 UTC
2
+++ src/screen.hxx
3
@@ -82,8 +82,7 @@ class ScreenManager { (public)
4
 	StatusBar status_bar;
5
 
6
 private:
7
-	using PageMap = std::map<const struct screen_functions *,
8
-				 std::unique_ptr<Page>>;
9
+	using PageMap = std::map<const struct screen_functions *, Page *>;
10
 	PageMap pages;
11
 	PageMap::iterator current_page = pages.begin();
12
 
13
@@ -120,7 +119,7 @@ class ScreenManager { (public)
14
 
15
 	gcc_pure
16
 	bool IsVisible(const Page &page) const {
17
-		return &page == current_page->second.get();
18
+		return &page == current_page->second;
19
 	}
20
 
21
 	void Switch(const struct screen_functions &sf, struct mpdclient &c);
(-)pkg-plist (+60 lines)
Line 0 Link Here
1
bin/ncmpc
2
%%MANPAGES%%man/man1/ncmpc.1.gz
3
%%PORTDOCS%%%%DOCSDIR%%/COPYING
4
%%PORTDOCS%%%%DOCSDIR%%/AUTHORS
5
%%PORTDOCS%%%%DOCSDIR%%/README.rst
6
%%PORTDOCS%%%%DOCSDIR%%/keys.sample
7
%%PORTDOCS%%%%DOCSDIR%%/ncmpc.lirc
8
%%PORTDOCS%%%%DOCSDIR%%/NEWS
9
%%PORTDOCS%%%%DOCSDIR%%/config.sample
10
%%PORTDOCS%%%%DOCSDIR%%/html/searchindex.js
11
%%PORTDOCS%%%%DOCSDIR%%/html/objects.inv
12
%%PORTDOCS%%%%DOCSDIR%%/html/_sources/index.rst.txt
13
%%PORTDOCS%%%%DOCSDIR%%/html/search.html
14
%%PORTDOCS%%%%DOCSDIR%%/html/_static/minus.png
15
%%PORTDOCS%%%%DOCSDIR%%/html/_static/file.png
16
%%PORTDOCS%%%%DOCSDIR%%/html/_static/ajax-loader.gif
17
%%PORTDOCS%%%%DOCSDIR%%/html/_static/underscore.js
18
%%PORTDOCS%%%%DOCSDIR%%/html/_static/basic.css
19
%%PORTDOCS%%%%DOCSDIR%%/html/_static/alabaster.css
20
%%PORTDOCS%%%%DOCSDIR%%/html/_static/searchtools.js
21
%%PORTDOCS%%%%DOCSDIR%%/html/_static/underscore-1.3.1.js
22
%%PORTDOCS%%%%DOCSDIR%%/html/_static/doctools.js
23
%%PORTDOCS%%%%DOCSDIR%%/html/_static/jquery-3.1.0.js
24
%%PORTDOCS%%%%DOCSDIR%%/html/_static/up-pressed.png
25
%%PORTDOCS%%%%DOCSDIR%%/html/_static/websupport.js
26
%%PORTDOCS%%%%DOCSDIR%%/html/_static/down.png
27
%%PORTDOCS%%%%DOCSDIR%%/html/_static/plus.png
28
%%PORTDOCS%%%%DOCSDIR%%/html/_static/pygments.css
29
%%PORTDOCS%%%%DOCSDIR%%/html/_static/down-pressed.png
30
%%PORTDOCS%%%%DOCSDIR%%/html/_static/comment.png
31
%%PORTDOCS%%%%DOCSDIR%%/html/_static/comment-close.png
32
%%PORTDOCS%%%%DOCSDIR%%/html/_static/comment-bright.png
33
%%PORTDOCS%%%%DOCSDIR%%/html/_static/up.png
34
%%PORTDOCS%%%%DOCSDIR%%/html/_static/jquery.js
35
%%PORTDOCS%%%%DOCSDIR%%/html/.buildinfo
36
%%PORTDOCS%%%%DOCSDIR%%/html/genindex.html
37
%%PORTDOCS%%%%DOCSDIR%%/html/index.html
38
%%LYRICS%%lib/ncmpc/lyrics/10-hd.sh
39
%%LYRICS%%lib/ncmpc/lyrics/20-lyricwiki.rb
40
%%NLS%%share/locale/he/LC_MESSAGES/ncmpc.mo
41
%%NLS%%share/locale/cs/LC_MESSAGES/ncmpc.mo
42
%%NLS%%share/locale/nl/LC_MESSAGES/ncmpc.mo
43
%%NLS%%share/locale/fr/LC_MESSAGES/ncmpc.mo
44
%%NLS%%share/locale/nb/LC_MESSAGES/ncmpc.mo
45
%%NLS%%share/locale/gl/LC_MESSAGES/ncmpc.mo
46
%%NLS%%share/locale/hu/LC_MESSAGES/ncmpc.mo
47
%%NLS%%share/locale/zh_CN/LC_MESSAGES/ncmpc.mo
48
%%NLS%%share/locale/pl/LC_MESSAGES/ncmpc.mo
49
%%NLS%%share/locale/es/LC_MESSAGES/ncmpc.mo
50
%%NLS%%share/locale/eo/LC_MESSAGES/ncmpc.mo
51
%%NLS%%share/locale/it/LC_MESSAGES/ncmpc.mo
52
%%NLS%%share/locale/da/LC_MESSAGES/ncmpc.mo
53
%%NLS%%share/locale/sk/LC_MESSAGES/ncmpc.mo
54
%%NLS%%share/locale/uk/LC_MESSAGES/ncmpc.mo
55
%%NLS%%share/locale/de/LC_MESSAGES/ncmpc.mo
56
%%NLS%%share/locale/pt_BR/LC_MESSAGES/ncmpc.mo
57
%%NLS%%share/locale/ru/LC_MESSAGES/ncmpc.mo
58
%%NLS%%share/locale/ko/LC_MESSAGES/ncmpc.mo
59
%%NLS%%share/locale/fi/LC_MESSAGES/ncmpc.mo
60
%%NLS%%share/locale/sv/LC_MESSAGES/ncmpc.mo

Return to bug 230721