2020-02-18 14:21:38 +01:00
|
|
|
# $NetBSD: Makefile,v 1.208 2020/02/18 13:21:38 nia Exp $
|
2004-04-30 12:48:21 +02:00
|
|
|
|
2020-02-18 14:21:38 +01:00
|
|
|
DISTNAME= mpd-0.21.20
|
2019-10-24 23:23:13 +02:00
|
|
|
PKGNAME= ${DISTNAME:S/mpd/musicpd/}
|
|
|
|
CATEGORIES= audio
|
|
|
|
MASTER_SITES= https://www.musicpd.org/download/mpd/0.21/
|
|
|
|
EXTRACT_SUFX= .tar.xz
|
2004-04-30 12:48:21 +02:00
|
|
|
|
2019-10-24 23:23:13 +02:00
|
|
|
MAINTAINER= pkgsrc-users@NetBSD.org
|
|
|
|
HOMEPAGE= https://www.musicpd.org/
|
|
|
|
COMMENT= Remote controllable audio player
|
|
|
|
LICENSE= gnu-gpl-v2
|
2004-04-30 12:48:21 +02:00
|
|
|
|
2019-10-24 23:23:13 +02:00
|
|
|
CONFLICTS= mpd-[0-9]*
|
2018-12-11 11:37:20 +01:00
|
|
|
|
2019-10-24 23:23:13 +02:00
|
|
|
USE_TOOLS+= pkg-config
|
|
|
|
USE_LANGUAGES= c99 c++14
|
2019-12-04 12:00:23 +01:00
|
|
|
|
|
|
|
# c++14
|
|
|
|
GCC_REQD+= 6
|
|
|
|
|
2019-10-24 23:23:13 +02:00
|
|
|
MESON_ARGS+= -Ddocumentation=true
|
2004-04-30 12:48:21 +02:00
|
|
|
|
2019-07-15 15:47:14 +02:00
|
|
|
# worrying libraries with limited maintainance:
|
|
|
|
# - audiofile, many CVEs, no activity since 2016
|
|
|
|
# using sndfile instead
|
|
|
|
# - mad, no release since 2004
|
|
|
|
# using mpg123 instead
|
2019-10-24 23:23:13 +02:00
|
|
|
MESON_ARGS+= -Dmad=disabled
|
|
|
|
MESON_ARGS+= -Daudiofile=disabled
|
2019-07-15 15:47:14 +02:00
|
|
|
|
|
|
|
# not available in pkgsrc?
|
2019-10-24 23:23:13 +02:00
|
|
|
MESON_ARGS+= -Dnfs=disabled
|
|
|
|
MESON_ARGS+= -Diso9660=disabled
|
|
|
|
MESON_ARGS+= -Dsndio=disabled
|
2019-07-15 15:47:14 +02:00
|
|
|
|
2019-12-04 12:00:23 +01:00
|
|
|
.include "../../mk/bsd.prefs.mk"
|
|
|
|
|
|
|
|
.if ${OPSYS} == "NetBSD" || ${OPSYS} == "SunOS"
|
|
|
|
MESON_ARGS+= -Dsolaris_output=enabled
|
|
|
|
.endif
|
|
|
|
|
|
|
|
MPD_USER?= mpd
|
|
|
|
MPD_GROUP?= mpd
|
|
|
|
PKG_GROUPS= ${MPD_GROUP}
|
|
|
|
PKG_USERS= ${MPD_USER}:${MPD_GROUP}
|
|
|
|
PKG_GROUPS_VARS= MPD_USER
|
|
|
|
PKG_USERS_VARS= MPD_GROUP
|
2014-05-16 02:33:47 +02:00
|
|
|
|
2019-10-24 23:23:13 +02:00
|
|
|
.include "../../mk/oss.buildlink3.mk"
|
2012-01-11 20:51:26 +01:00
|
|
|
|
2019-12-04 12:00:23 +01:00
|
|
|
.if ${OSS_TYPE} == "none"
|
|
|
|
MESON_ARGS+= -Doss=disabled
|
|
|
|
.else
|
|
|
|
MESON_ARGS+= -Doss=enabled
|
|
|
|
LDFLAGS+= ${LIBOSSAUDIO}
|
|
|
|
SUBST_CLASSES+= oss
|
|
|
|
SUBST_STAGE.oss= pre-configure
|
|
|
|
SUBST_MESSAGE.oss= Correcting the path to the OSS device.
|
|
|
|
SUBST_FILES.oss+= src/output/plugins/OssOutputPlugin.cxx
|
|
|
|
SUBST_SED.oss+= -e "s,/dev/sound/dsp,${DEVOSSAUDIO},g"
|
|
|
|
.endif
|
2004-04-30 12:48:21 +02:00
|
|
|
|
2019-10-24 23:23:13 +02:00
|
|
|
EGDIR= ${PREFIX}/share/examples/mpd
|
|
|
|
CONF_FILES= ${EGDIR}/mpd.conf ${PKG_SYSCONFDIR}/mpd.conf
|
|
|
|
RCD_SCRIPTS= mpd
|
2004-04-30 12:48:21 +02:00
|
|
|
|
2019-12-04 12:00:23 +01:00
|
|
|
FILES_SUBST+= MPD_USER=${MPD_USER:Q}
|
|
|
|
FILES_SUBST+= MPD_GROUP=${MPD_GROUP:Q}
|
|
|
|
FILES_SUBST+= VARBASE=${VARBASE}
|
|
|
|
|
|
|
|
BUILD_DEFS+= VARBASE
|
|
|
|
|
|
|
|
OWN_DIRS_PERMS+= ${VARBASE}/lib/mpd \
|
|
|
|
${MPD_USER} ${MPD_GROUP} 0755
|
|
|
|
|
|
|
|
OWN_DIRS_PERMS+= ${VARBASE}/lib/mpd/music \
|
|
|
|
${MPD_USER} ${MPD_GROUP} 0755
|
|
|
|
|
|
|
|
OWN_DIRS_PERMS+= ${VARBASE}/lib/mpd/playlists \
|
|
|
|
${MPD_USER} ${MPD_GROUP} 0755
|
|
|
|
|
2019-10-24 23:23:13 +02:00
|
|
|
CPPFLAGS.SunOS+= -std=gnu99 -D_XOPEN_SOURCE=600 -D__EXTENSIONS__
|
|
|
|
|
|
|
|
.include "options.mk"
|
2016-08-20 12:17:09 +02:00
|
|
|
|
2019-12-04 12:00:23 +01:00
|
|
|
SUBST_CLASSES+= conf
|
|
|
|
SUBST_STAGE.conf= pre-configure
|
|
|
|
SUBST_FILES.conf= ${WRKSRC}/mpd.conf
|
|
|
|
SUBST_MESSAGE.conf= Setting variables in the configuration file.
|
|
|
|
SUBST_VARS.conf+= VARBASE
|
|
|
|
SUBST_VARS.conf+= MPD_USER
|
2016-08-20 12:17:09 +02:00
|
|
|
|
2018-12-11 11:37:20 +01:00
|
|
|
SUBST_CLASSES+= sphinx
|
|
|
|
SUBST_STAGE.sphinx= pre-configure
|
|
|
|
SUBST_FILES.sphinx= doc/meson.build
|
|
|
|
SUBST_MESSAGE.sphinx= Fixing sphinx binary name.
|
2019-10-24 23:36:45 +02:00
|
|
|
SUBST_SED.sphinx+= -e "s,sphinx-build,sphinx-build-${PYVERSSUFFIX},"
|
2004-04-30 12:48:21 +02:00
|
|
|
|
2009-09-11 22:58:55 +02:00
|
|
|
INSTALLATION_DIRS= ${EGDIR}
|
|
|
|
|
2019-10-24 23:23:13 +02:00
|
|
|
PYTHON_FOR_BUILD_ONLY= tool
|
|
|
|
|
2019-10-24 23:42:30 +02:00
|
|
|
PYTHON_VERSIONED_DEPENDENCIES= sphinx:tool
|
|
|
|
|
2006-01-04 18:46:15 +01:00
|
|
|
post-extract:
|
2006-05-19 18:18:51 +02:00
|
|
|
${CP} ${FILESDIR}/mpd.conf ${WRKSRC}/mpd.conf
|
2004-04-30 12:48:21 +02:00
|
|
|
|
|
|
|
post-install:
|
2009-03-17 19:16:20 +01:00
|
|
|
${INSTALL_DATA} ${WRKSRC}/mpd.conf ${DESTDIR}${EGDIR}
|
2018-12-11 11:37:20 +01:00
|
|
|
${INSTALL_DATA} ${WRKSRC}/doc/mpdconf.example ${DESTDIR}${EGDIR}
|
2004-04-30 12:48:21 +02:00
|
|
|
|
2019-10-07 11:28:09 +02:00
|
|
|
.include "../../devel/meson/build.mk"
|
2019-07-15 15:47:14 +02:00
|
|
|
BUILDLINK_ABI_DEPENDS.flac+= flac>=1.2
|
|
|
|
.include "../../audio/flac/buildlink3.mk"
|
|
|
|
.include "../../audio/libopus/buildlink3.mk"
|
|
|
|
.include "../../audio/mpg123/buildlink3.mk"
|
|
|
|
.include "../../databases/sqlite3/buildlink3.mk"
|
Update to 0.19.7:
ver 0.19.7 (2014/12/17)
* input
- nfs: fix crash while canceling a failing file open operation
- nfs: fix memory leak on connection failure
- nfs: fix reconnect after mount failure
- nfs: implement mount timeout (60 seconds)
* storage
- nfs: implement I/O timeout (60 seconds)
* playlist
- embcue: fix filename suffix detection
- don't skip non-existent songs in "listplaylist"
* decoder
- ffmpeg: fix time stamp underflow
* fix memory allocator bug on Windows
ver 0.19.6 (2014/12/08)
* decoder
- ffmpeg: support FFmpeg 2.5
* fix build failure with musl
* android
- update libFLAC to 1.3.1
- update FFmpeg to 2.5
ver 0.19.5 (2014/11/26)
* input
- nfs: fix crash on connection failure
* archive
- zzip: fix crash after seeking
* decoder
- dsdiff, dsf, opus: fix deadlock while seeking
- mp4v2: remove because of incompatible license
ver 0.19.4 (2014/11/18)
* protocol
- workaround for buggy clients that send "add /"
* decoder
- ffmpeg: support opus
- opus: add MIME types audio/ogg and application/ogg
* fix crash on failed filename charset conversion
* fix local socket detection from uid=0 (root)
ver 0.19.3 (2014/11/11)
* protocol
- fix "(null)" result string to "list" when AlbumArtist is disabled
* database
- upnp: fix breakage due to malformed URIs
* input
- curl: another fix for redirected streams
* decoder
- audiofile: fix crash while playing streams
- audiofile: fix bit rate calculation
- ffmpeg: support opus
- opus: fix bogus duration on streams
- opus: support chained streams
- opus: improved error logging
* fix distorted audio with soxr resampler
* fix build failure on Mac OS X with non-Apple compilers
ver 0.19.2 (2014/11/02)
* input
- curl: fix redirected streams
* playlist
- don't allow empty playlist name
- m3u: don't ignore unterminated last line
- m3u: recognize the file suffix ".m3u8"
* decoder
- ignore URI query string for plugin detection
- faad: remove workaround for ancient libfaad2 ABI bug
- ffmpeg: recognize MIME type audio/aacp
- mad: fix negative replay gain values
* output
- fix memory leak after filter initialization error
- fall back to PCM if given DSD sample rate is not supported
* fix assertion failure on unsupported PCM conversion
* auto-disable plugins that require GLib when --disable-glib is used
ver 0.19.1 (2014/10/19)
* input
- mms: fix deadlock bug
* playlist
- extm3u: fix Extended M3U detection
- m3u, extm3u, cue: fix truncated lines
* fix build failure on Mac OS X
* add missing file systemd/mpd.socket to tarball
ver 0.19 (2014/10/10)
* protocol
- new commands "addtagid", "cleartagid", "listfiles", "listmounts",
"listneighbors", "mount", "rangeid", "unmount"
- "lsinfo" and "readcomments" allowed for remote files
- "listneighbors" lists file servers on the local network
- "playlistadd" supports file:///
- "idle" with unrecognized event name fails
- "list" on album artist falls back to the artist tag
- "list" and "count" allow grouping
- new "search"/"find" filter "modified-since"
- "seek*" allows fractional position
- close connection after syntax error
* database
- proxy: forward "idle" events
- proxy: forward the "update" command
- proxy: copy "Last-Modified" from remote directories
- simple: compress the database file using gzip
- upnp: new plugin
- cancel the update on shutdown
* storage
- music_directory can point to a remote file server
- nfs: new plugin
- smbclient: new plugin
* playlist
- cue: fix bogus duration of the last track
- cue: restore CUE tracks from state file
- soundcloud: use https instead of http
- soundcloud: add default API key
* archive
- read tags from songs in an archive
* input
- alsa: new input plugin
- curl: options "verify_peer" and "verify_host"
- ffmpeg: update offset after seeking
- ffmpeg: improved error messages
- mms: non-blocking I/O
- nfs: new input plugin
- smbclient: new input plugin
* filter
- volume: improved software volume dithering
* decoder:
- vorbis, flac, opus: honor DESCRIPTION= tag in Xiph-based files as a comment to the song
- audiofile: support scanning remote files
- audiofile: log libaudiofile errors
- dsdiff, dsf: report bit rate
- dsdiff, dsf: implement seeking
- dsf: support DSD512
- dsf: support multi-channel files
- dsf: fix big-endian bugs
- dsf: fix noise at end of malformed file
- mpg123: support ID3v2, ReplayGain and MixRamp
- sndfile: support scanning remote files
- sndfile: support tags "comment", "album", "track", "genre"
- sndfile: native floating point playback
- sndfile: optimized 16 bit playback
- mp4v2: support playback of MP4 files.
* encoder:
- shine: new encoder plugin
* output
- alsa: support native DSD playback
- alsa: rename "DSD over USB" to "DoP"
- osx: fix hang after (un)plugging headphones
* threads:
- the update thread runs at "idle" priority
- the output thread runs at "real-time" priority
- increase kernel timer slack on Linux
- name each thread (for debugging)
* configuration
- allow playlist directory without music directory
- use XDG to auto-detect "music_directory" and "db_file"
* add tags "AlbumSort", "MUSICBRAINZ_RELEASETRACKID"
* disable global Latin-1 fallback for tag values
* new resampler option using libsoxr
* ARM NEON optimizations
* install systemd unit for socket activation
* Android port
2015-01-05 23:19:02 +01:00
|
|
|
.include "../../devel/boost-libs/buildlink3.mk"
|
2019-07-15 15:47:14 +02:00
|
|
|
.include "../../devel/pcre/buildlink3.mk"
|
2018-12-11 11:37:20 +01:00
|
|
|
.include "../../graphics/hicolor-icon-theme/buildlink3.mk"
|
2019-10-21 23:19:35 +02:00
|
|
|
.include "../../lang/python/versioned_dependencies.mk"
|
2019-07-15 15:47:14 +02:00
|
|
|
.include "../../security/libgcrypt/buildlink3.mk"
|
|
|
|
.include "../../textproc/expat/buildlink3.mk"
|
|
|
|
.include "../../textproc/icu/buildlink3.mk"
|
|
|
|
.include "../../mk/pthread.buildlink3.mk"
|
2004-04-30 12:48:21 +02:00
|
|
|
.include "../../mk/bsd.pkg.mk"
|