| @@ -1,140 +1,141 @@ | | | @@ -1,140 +1,141 @@ |
1 | # $NetBSD: Makefile,v 1.259 2022/03/28 10:43:37 tnn Exp $ | | 1 | # $NetBSD: Makefile,v 1.260 2022/04/18 18:13:55 nia Exp $ |
2 | | | 2 | |
3 | DISTNAME= mpd-0.23.6 | | 3 | DISTNAME= mpd-0.23.6 |
4 | PKGNAME= ${DISTNAME:S/mpd/musicpd/} | | 4 | PKGNAME= ${DISTNAME:S/mpd/musicpd/} |
5 | PKGREVISION= 1 | | 5 | PKGREVISION= 1 |
6 | CATEGORIES= audio | | 6 | CATEGORIES= audio |
7 | MASTER_SITES= https://www.musicpd.org/download/mpd/${PKGVERSION_NOREV:R}/ | | 7 | MASTER_SITES= https://www.musicpd.org/download/mpd/${PKGVERSION_NOREV:R}/ |
8 | EXTRACT_SUFX= .tar.xz | | 8 | EXTRACT_SUFX= .tar.xz |
9 | | | 9 | |
10 | MAINTAINER= pkgsrc-users@NetBSD.org | | 10 | MAINTAINER= pkgsrc-users@NetBSD.org |
11 | HOMEPAGE= https://www.musicpd.org/ | | 11 | HOMEPAGE= https://www.musicpd.org/ |
12 | COMMENT= Remote controllable audio player | | 12 | COMMENT= Remote controllable audio player |
13 | LICENSE= gnu-gpl-v2 | | 13 | LICENSE= gnu-gpl-v2 |
14 | | | 14 | |
15 | CONFLICTS= mpd-[0-9]* | | 15 | CONFLICTS= mpd-[0-9]* |
16 | | | 16 | |
17 | USE_TOOLS+= pkg-config | | 17 | USE_TOOLS+= pkg-config |
18 | USE_LANGUAGES= c c++ | | 18 | USE_LANGUAGES= c c++ |
19 | | | 19 | |
20 | # The upstream changelog recommends gcc8, but it compiles fine with 7.5.0 | | 20 | # The upstream changelog recommends gcc8, but it compiles fine with 7.5.0 |
21 | # (NetBSD 9.1) using -std=c++17. | | 21 | # (NetBSD 9.1) using -std=c++17. |
22 | # | | 22 | # |
23 | # Please be cautious of raising this requirement - mpd seems to adopt new C++ | | 23 | # Please be cautious of raising this requirement - mpd seems to adopt new C++ |
24 | # standards quickly. Notably, gcc8 from pkgsrc doesn't have support for | | 24 | # standards quickly. Notably, gcc8 from pkgsrc doesn't have support for |
25 | # NetBSD/earmv7hf. gcc10 should, but fails for other reasons (TODO: | | 25 | # NetBSD/earmv7hf. gcc10 should, but fails for other reasons (TODO: |
26 | # investigate). | | 26 | # investigate). |
27 | GCC_REQD+= 7 | | 27 | GCC_REQD+= 7 |
28 | | | 28 | |
29 | MESON_ARGS+= -Ddocumentation=enabled | | 29 | MESON_ARGS+= -Ddocumentation=enabled |
30 | | | 30 | |
31 | # worrying libraries with limited maintainance: | | 31 | # worrying libraries with limited maintainance: |
32 | # - audiofile, many CVEs, no activity since 2016 | | 32 | # - audiofile, many CVEs, no activity since 2016 |
33 | # using sndfile instead | | 33 | # using sndfile instead |
34 | # - mad, no release since 2004 | | 34 | # - mad, no release since 2004 |
35 | # using mpg123 instead | | 35 | # using mpg123 instead |
36 | MESON_ARGS+= -Dmad=disabled | | 36 | MESON_ARGS+= -Dmad=disabled |
37 | MESON_ARGS+= -Daudiofile=disabled | | 37 | MESON_ARGS+= -Daudiofile=disabled |
38 | | | 38 | |
39 | # not available in pkgsrc? | | 39 | # not available in pkgsrc? |
40 | MESON_ARGS+= -Dnfs=disabled | | 40 | MESON_ARGS+= -Dnfs=disabled |
41 | MESON_ARGS+= -Diso9660=disabled | | 41 | MESON_ARGS+= -Diso9660=disabled |
42 | MESON_ARGS+= -Dsndio=disabled | | 42 | MESON_ARGS+= -Dsndio=disabled |
43 | | | 43 | |
44 | .include "../../mk/bsd.prefs.mk" | | 44 | .include "../../mk/bsd.prefs.mk" |
45 | | | 45 | |
46 | .if ${OPSYS} == "NetBSD" || ${OPSYS} == "SunOS" | | 46 | .if ${OPSYS} == "NetBSD" || ${OPSYS} == "SunOS" |
47 | MESON_ARGS+= -Dsolaris_output=enabled | | 47 | MESON_ARGS+= -Dsolaris_output=enabled |
48 | .endif | | 48 | .endif |
49 | | | 49 | |
50 | MPD_USER?= mpd | | 50 | MPD_USER?= mpd |
51 | MPD_GROUP?= mpd | | 51 | MPD_GROUP?= mpd |
52 | PKG_GROUPS= ${MPD_GROUP} | | 52 | PKG_GROUPS= ${MPD_GROUP} |
53 | PKG_USERS= ${MPD_USER}:${MPD_GROUP} | | 53 | PKG_USERS= ${MPD_USER}:${MPD_GROUP} |
54 | PKG_GROUPS_VARS= MPD_USER | | 54 | PKG_GROUPS_VARS= MPD_USER |
55 | PKG_USERS_VARS= MPD_GROUP | | 55 | PKG_USERS_VARS= MPD_GROUP |
56 | | | 56 | |
57 | .include "../../mk/oss.buildlink3.mk" | | 57 | .include "../../mk/oss.buildlink3.mk" |
58 | | | 58 | |
59 | .if ${OSS_TYPE} == "none" | | 59 | .if ${OSS_TYPE} == "none" |
60 | MESON_ARGS+= -Doss=disabled | | 60 | MESON_ARGS+= -Doss=disabled |
61 | .else | | 61 | .else |
62 | MESON_ARGS+= -Doss=enabled | | 62 | MESON_ARGS+= -Doss=enabled |
63 | LDFLAGS+= ${LIBOSSAUDIO} | | 63 | LDFLAGS+= ${LIBOSSAUDIO} |
64 | SUBST_CLASSES+= oss | | 64 | SUBST_CLASSES+= oss |
65 | SUBST_STAGE.oss= pre-configure | | 65 | SUBST_STAGE.oss= pre-configure |
66 | SUBST_MESSAGE.oss= Correcting the path to the OSS device. | | 66 | SUBST_MESSAGE.oss= Correcting the path to the OSS device. |
67 | SUBST_FILES.oss+= src/output/plugins/OssOutputPlugin.cxx | | 67 | SUBST_FILES.oss+= src/output/plugins/OssOutputPlugin.cxx |
68 | SUBST_SED.oss+= -e "s,/dev/sound/dsp,${DEVOSSAUDIO},g" | | 68 | SUBST_SED.oss+= -e "s,/dev/sound/dsp,${DEVOSSAUDIO},g" |
69 | .endif | | 69 | .endif |
70 | | | 70 | |
71 | EGDIR= ${PREFIX}/share/examples/mpd | | 71 | EGDIR= ${PREFIX}/share/examples/mpd |
72 | CONF_FILES+= ${EGDIR}/mpd.conf ${PKG_SYSCONFDIR}/mpd.conf | | 72 | CONF_FILES+= ${EGDIR}/mpd.conf ${PKG_SYSCONFDIR}/mpd.conf |
73 | CONF_FILES+= ${EGDIR}/logrotate.d/mpd ${PKG_SYSCONFDIR}/logrotate.d/mpd | | 73 | CONF_FILES+= ${EGDIR}/logrotate.d/mpd ${PKG_SYSCONFDIR}/logrotate.d/mpd |
74 | RCD_SCRIPTS= mpd | | 74 | RCD_SCRIPTS= mpd |
75 | | | 75 | |
76 | FILES_SUBST+= MPD_USER=${MPD_USER:Q} | | 76 | FILES_SUBST+= MPD_USER=${MPD_USER:Q} |
77 | FILES_SUBST+= MPD_GROUP=${MPD_GROUP:Q} | | 77 | FILES_SUBST+= MPD_GROUP=${MPD_GROUP:Q} |
78 | FILES_SUBST+= VARBASE=${VARBASE} | | 78 | FILES_SUBST+= VARBASE=${VARBASE} |
79 | | | 79 | |
80 | BUILD_DEFS+= VARBASE | | 80 | BUILD_DEFS+= VARBASE |
81 | | | 81 | |
82 | OWN_DIRS_PERMS+= ${VARBASE}/lib/mpd \ | | 82 | OWN_DIRS_PERMS+= ${VARBASE}/lib/mpd \ |
83 | ${MPD_USER} ${MPD_GROUP} 0755 | | 83 | ${MPD_USER} ${MPD_GROUP} 0755 |
84 | | | 84 | |
85 | OWN_DIRS_PERMS+= ${VARBASE}/lib/mpd/music \ | | 85 | OWN_DIRS_PERMS+= ${VARBASE}/lib/mpd/music \ |
86 | ${MPD_USER} ${MPD_GROUP} 0755 | | 86 | ${MPD_USER} ${MPD_GROUP} 0755 |
87 | | | 87 | |
88 | OWN_DIRS_PERMS+= ${VARBASE}/lib/mpd/playlists \ | | 88 | OWN_DIRS_PERMS+= ${VARBASE}/lib/mpd/playlists \ |
89 | ${MPD_USER} ${MPD_GROUP} 0755 | | 89 | ${MPD_USER} ${MPD_GROUP} 0755 |
90 | | | 90 | |
| | | 91 | LDFLAGS.SunOS+= -lnsl -lsocket |
91 | CPPFLAGS.SunOS+= -std=gnu99 -D_XOPEN_SOURCE=600 -D__EXTENSIONS__ | | 92 | CPPFLAGS.SunOS+= -std=gnu99 -D_XOPEN_SOURCE=600 -D__EXTENSIONS__ |
92 | | | 93 | |
93 | .include "options.mk" | | 94 | .include "options.mk" |
94 | | | 95 | |
95 | SUBST_CLASSES+= conf | | 96 | SUBST_CLASSES+= conf |
96 | SUBST_STAGE.conf= pre-configure | | 97 | SUBST_STAGE.conf= pre-configure |
97 | SUBST_FILES.conf= mpd.conf | | 98 | SUBST_FILES.conf= mpd.conf |
98 | SUBST_MESSAGE.conf= Setting variables in the configuration file. | | 99 | SUBST_MESSAGE.conf= Setting variables in the configuration file. |
99 | SUBST_VARS.conf+= VARBASE | | 100 | SUBST_VARS.conf+= VARBASE |
100 | SUBST_VARS.conf+= MPD_USER | | 101 | SUBST_VARS.conf+= MPD_USER |
101 | | | 102 | |
102 | SUBST_CLASSES+= sphinx | | 103 | SUBST_CLASSES+= sphinx |
103 | SUBST_STAGE.sphinx= pre-configure | | 104 | SUBST_STAGE.sphinx= pre-configure |
104 | SUBST_FILES.sphinx= doc/meson.build | | 105 | SUBST_FILES.sphinx= doc/meson.build |
105 | SUBST_MESSAGE.sphinx= Fixing sphinx binary name. | | 106 | SUBST_MESSAGE.sphinx= Fixing sphinx binary name. |
106 | SUBST_SED.sphinx+= -e "s,sphinx-build,sphinx-build-${PYVERSSUFFIX}," | | 107 | SUBST_SED.sphinx+= -e "s,sphinx-build,sphinx-build-${PYVERSSUFFIX}," |
107 | | | 108 | |
108 | INSTALLATION_DIRS= ${EGDIR} ${EGDIR}/logrotate.d | | 109 | INSTALLATION_DIRS= ${EGDIR} ${EGDIR}/logrotate.d |
109 | | | 110 | |
110 | PYTHON_FOR_BUILD_ONLY= tool | | 111 | PYTHON_FOR_BUILD_ONLY= tool |
111 | | | 112 | |
112 | PYTHON_VERSIONED_DEPENDENCIES= sphinx:tool | | 113 | PYTHON_VERSIONED_DEPENDENCIES= sphinx:tool |
113 | | | 114 | |
114 | post-extract: | | 115 | post-extract: |
115 | ${CP} ${FILESDIR}/mpd.conf ${WRKSRC}/mpd.conf | | 116 | ${CP} ${FILESDIR}/mpd.conf ${WRKSRC}/mpd.conf |
116 | | | 117 | |
117 | post-install: | | 118 | post-install: |
118 | ${INSTALL_DATA} ${WRKSRC}/mpd.conf ${DESTDIR}${EGDIR} | | 119 | ${INSTALL_DATA} ${WRKSRC}/mpd.conf ${DESTDIR}${EGDIR} |
119 | ${INSTALL_DATA} ${WRKSRC}/doc/mpdconf.example ${DESTDIR}${EGDIR} | | 120 | ${INSTALL_DATA} ${WRKSRC}/doc/mpdconf.example ${DESTDIR}${EGDIR} |
120 | ${INSTALL_DATA} ${FILESDIR}/mpd.logrotate ${DESTDIR}${EGDIR}/logrotate.d/mpd | | 121 | ${INSTALL_DATA} ${FILESDIR}/mpd.logrotate ${DESTDIR}${EGDIR}/logrotate.d/mpd |
121 | | | 122 | |
122 | .include "../../devel/meson/build.mk" | | 123 | .include "../../devel/meson/build.mk" |
123 | BUILDLINK_API_DEPENDS.flac+= flac>=1.2 | | 124 | BUILDLINK_API_DEPENDS.flac+= flac>=1.2 |
124 | .include "../../audio/flac/buildlink3.mk" | | 125 | .include "../../audio/flac/buildlink3.mk" |
125 | .include "../../audio/libid3tag/buildlink3.mk" | | 126 | .include "../../audio/libid3tag/buildlink3.mk" |
126 | .include "../../audio/libopus/buildlink3.mk" | | 127 | .include "../../audio/libopus/buildlink3.mk" |
127 | .include "../../audio/libsndfile/buildlink3.mk" | | 128 | .include "../../audio/libsndfile/buildlink3.mk" |
128 | .include "../../audio/mpg123/buildlink3.mk" | | 129 | .include "../../audio/mpg123/buildlink3.mk" |
129 | .include "../../databases/sqlite3/buildlink3.mk" | | 130 | .include "../../databases/sqlite3/buildlink3.mk" |
130 | .include "../../devel/boost-libs/buildlink3.mk" | | 131 | .include "../../devel/boost-libs/buildlink3.mk" |
131 | .include "../../devel/pcre2/buildlink3.mk" | | 132 | .include "../../devel/pcre2/buildlink3.mk" |
132 | .include "../../devel/zlib/buildlink3.mk" | | 133 | .include "../../devel/zlib/buildlink3.mk" |
133 | .include "../../graphics/hicolor-icon-theme/buildlink3.mk" | | 134 | .include "../../graphics/hicolor-icon-theme/buildlink3.mk" |
134 | .include "../../lang/python/versioned_dependencies.mk" | | 135 | .include "../../lang/python/versioned_dependencies.mk" |
135 | .include "../../security/libgcrypt/buildlink3.mk" | | 136 | .include "../../security/libgcrypt/buildlink3.mk" |
136 | .include "../../textproc/expat/buildlink3.mk" | | 137 | .include "../../textproc/expat/buildlink3.mk" |
137 | .include "../../textproc/fmtlib/buildlink3.mk" | | 138 | .include "../../textproc/fmtlib/buildlink3.mk" |
138 | .include "../../textproc/icu/buildlink3.mk" | | 139 | .include "../../textproc/icu/buildlink3.mk" |
139 | .include "../../mk/pthread.buildlink3.mk" | | 140 | .include "../../mk/pthread.buildlink3.mk" |
140 | .include "../../mk/bsd.pkg.mk" | | 141 | .include "../../mk/bsd.pkg.mk" |