pkgsrc/audio/musicpd/Makefile

63 lines
1.5 KiB
Makefile
Raw Normal View History

2014-06-09 16:18:04 +02:00
# $NetBSD: Makefile,v 1.83 2014/06/09 14:18:05 ryoon Exp $
DISTNAME= mpd-0.18.11
2004-10-05 15:12:40 +02:00
PKGNAME= ${DISTNAME:S/mpd/musicpd/}
2014-06-09 16:18:04 +02:00
PKGREVISION= 1
CATEGORIES= audio
Update to 0.18.10. Add support for many more optional dependencies. ver 0.18.10 (2014/04/10) * decoder - ffmpeg: fix seeking bug - ffmpeg: handle unknown stream start time - gme: fix memory leak - sndfile: work around libsndfile bug on partial read * don't interrupt playback when current song gets deleted ver 0.18.9 (2014/03/02) * protocol - "findadd" requires the "add" permission * output - alsa: improved workaround for noise after manual song change * decoder - vorbis: fix linker failure when libvorbis/libogg are static * encoder - vorbis: fix another linker failure * output - pipe: fix hanging child process due to blocked signals * fix build failure due to missing signal.h include ver 0.18.8 (2014/02/07) * decoder - ffmpeg: support libav v10_alpha1 * encoder - vorbis: fix linker failure * output - roar: documentation * more robust Icy-Metadata parser * fix Solaris build failure ver 0.18.7 (2014/01/13) * playlist - pls: fix crash after parser error - soundcloud: fix build failure with libyajl 2.0.1 * decoder - faad: fix memory leak - mpcdec: reject libmpcdec SV7 in configure script * daemon: don't initialize supplementary groups when already running as the configured user ver 0.18.6 (2013/12/24) * input - cdio_paranoia: support libcdio-paranoia 0.90 * tags - riff: recognize upper-case "ID3" chunk name * decoder - ffmpeg: use relative timestamps * output - openal: fix build failure on Mac OS X - osx: fix build failure * mixer - alsa: fix build failure with uClibc * fix replay gain during cross-fade * accept files without metadata ver 0.18.5 (2013/11/23) * configuration - fix crash when db_file is configured without music_directory - fix crash on "stats" without db_file/music_directory * database - proxy: auto-reload statistics - proxy: provide "db_update" in "stats" response * input - curl: work around stream resume bug (fixed in libcurl 7.32.0) * decoder - fluidsynth: auto-detect by default * clip 24 bit data from libsamplerate * fix ia64, mipsel and other little-endian architectures * fix build failures due to missing includes * fix build failure with static libmpdclient ver 0.18.4 (2013/11/13) * decoder - dsdiff: fix byte order bug * fix build failures due to missing includes * libc++ compatibility ver 0.18.3 (2013/11/08) * fix stuck MPD after song change (0.18.2 regression) ver 0.18.2 (2013/11/07) * protocol: - "close" flushes the output buffer * input: - cdio_paranoia: add setting "default_byte_order" - curl: fix bug with redirected streams * playlist: - pls: fix reversed song order * decoder: - audiofile: require libaudiofile 0.3 due to API breakage - dsf: enable DSD128 * enable buffering when starting playback (regression fix) * fix build failures due to missing includes * fix big-endian support ver 0.18.1 (2013/11/04) * protocol: - always ignore whitespace at the end of the line * networking: - log UNIX domain path names instead of "localhost" - open listener sockets in the order they were configured - don't abort if IPv6 is not available * output: - alsa: avoid endless loop in Raspberry Pi workaround * filter: - autoconvert: fix "volume_normalization" with mp3 files * add missing files to source tarball ver 0.18 (2013/10/31) * configuration: - allow tilde paths for socket - default filesystem charset is UTF-8 instead of ISO-8859-1 - increase default buffer size to 4 MB * protocol: - new command "readcomments" lists arbitrary file tags - new command "toggleoutput" - "find"/"search" with "any" does not match file name - "search" and "find" with base URI (keyword "base") - search for album artist falls back to the artist tag - re-add the "volume" command * input: - curl: enable https - soup: plugin removed * playlist: - lastfm: remove defunct Last.fm support * decoder: - adplug: new decoder plugin using libadplug - dsf: don't play junk at the end of the "data" chunk - ffmpeg: drop support for pre-0.8 ffmpeg - flac: require libFLAC 1.2 or newer - flac: support FLAC files inside archives - opus: new decoder plugin for the Opus codec - vorbis: skip 16 bit quantisation, provide float samples - mikmod: add "loop" configuration parameter - modplug: add "loop_count" configuration parameter - mp4ff: obsolete plugin removed * encoder: - opus: new encoder plugin for the Opus codec - vorbis: accept floating point input samples * output: - new option "tags" may be used to disable sending tags to output - alsa: workaround for noise after manual song change - ffado: remove broken plugin - httpd: support HEAD requests - mvp: remove obsolete plugin - osx: disabled by default because it's unmaintained and unsupported * improved decoder/output error reporting * eliminate timer wakeup on idle MPD * fix unresponsive MPD while waiting for stream * port of the source code to C++11 ver 0.17.6 (2013/10/14) * mixer: - alsa: fix busy loop when USB sound device gets unplugged * decoder: - modplug: fix build with Debian package 1:0.8.8.4-4 * stored playlists: - fix loading playlists with references to local files - obey filesystem_charset for URLs
2014-04-18 14:46:57 +02:00
MASTER_SITES= http://www.musicpd.org/download/mpd/0.18/
Update to 0.17.4, provided by Takeshi Nakayama in PR 47844. While here, add comments to patch-aa, patch-ad from cvs logs. Changes: ver 0.17.4 (2013/04/08) * protocol: - allow to omit END in ranges (START:END) - don't emit IDLE_PLAYER before audio format is known * decoder: - ffmpeg: support float planar audio (ffmpeg 1.1) - ffmpeg: fix AVFrame allocation * player: - implement missing "idle" events on output errors * clock: fix build failure ver 0.17.3 (2013/01/06) * output: - osx: fix pops during playback - recorder: fix I/O error check - shout: fix memory leak in error handler - recorder, shout: support Ogg packets that span more than one page * decoder: - ffmpeg: ignore negative time stamps - ffmpeg: support planar audio * playlist: - cue: fix memory leak - cue: fix CUE files with only one track ver 0.17.2 (2012/09/30) * protocol: - fix crash in local file check * decoder: - fluidsynth: remove throttle (requires libfluidsynth 1.1) - fluidsynth: stop playback at end of file - fluidsynth: check MIDI file format while scanning - fluidsynth: add sample rate setting - wavpack: support all APEv2 tags * output: - httpd: use monotonic clock, avoid hiccups after system clock adjustment - httpd: fix throttling bug after resuming playback * playlist: - cue: map "PERFORMER" to "artist" or "album artist" * mapper: fix non-UTF8 music directory name * mapper: fix potential crash in file permission check * playlist: fix use-after-free bug * playlist: fix memory leak * state_file: save song priorities * player: disable cross-fading in "single" mode * update: fix unsafe readlink() usage * configure.ac: - don't auto-detect the vorbis encoder when Tremor is enabled ver 0.17.1 (2012/07/31) * protocol: - require appropriate permissions for searchadd{,pl} * tags: - aiff: support the AIFC format - ape: check for ID3 if no usable APE tag was found * playlist: - cue: support file types "MP3", "AIFF" * output: - fix noisy playback with conversion and software volume ver 0.17 (2012/06/27) * protocol: - support client-to-client communication - "update" and "rescan" need only "CONTROL" permission - new command "seekcur" for simpler seeking within current song - new command "config" dumps location of music directory - add range parameter to command "load" - print extra "playlist" object for embedded CUE sheets - new commands "searchadd", "searchaddpl" * input: - cdio_paranoia: new input plugin to play audio CDs - curl: enable CURLOPT_NETRC - curl: non-blocking I/O - soup: new input plugin based on libsoup * tags: - RVA2: support separate album/track replay gain * decoder: - mpg123: implement seeking - ffmpeg: drop support for pre-0.5 ffmpeg - ffmpeg: support WebM - oggflac: delete this obsolete plugin - dsdiff: new decoder plugin * output: - alsa: support DSD-over-USB (dCS suggested standard) - httpd: support for streaming to a DLNA client - openal: improve buffer cancellation - osx: allow user to specify other audio devices - osx: implement 32 bit playback - shout: add possibility to set url - roar: new output plugin for RoarAudio - winmm: fail if wrong device specified instead of using default device * mixer: - alsa: listen for external volume changes * playlist: - allow references to songs outside the music directory - new CUE parser, without libcue - soundcloud: new plugin for accessing soundcloud.com * state_file: add option "restore_paused" * cue: show CUE track numbers * allow port specification in "bind_to_address" settings * support floating point samples * systemd socket activation * improve --version output * WIN32: fix renaming of stored playlists with non-ASCII names ver 0.16.8 (2012/04/04) * fix for libsamplerate assertion failure * decoder: - vorbis (and others): fix seeking at startup - ffmpeg: read the "year" tag * encoder: - vorbis: generate end-of-stream packet before tag - vorbis: generate end-of-stream packet when playback ends * output: - jack: check for connection failure before starting playback - jack: workaround for libjack1 crash bug - osx: fix stuttering due to buffering bug * fix endless loop in text file reader * update: skip symlinks in path that is to be updated ver 0.16.7 (2012/02/04) * input: - ffmpeg: support libavformat 0.7 * decoder: - ffmpeg: support libavformat 0.8, libavcodec 0.9 - ffmpeg: support all MPD tags * output: - httpd: fix excessive buffering - openal: force 16 bit playback, as 8 bit doesn't work - osx: remove sleep call from render callback - osx: clear render buffer when there's not enough data * fix moving after current song
2013-05-26 20:37:39 +02:00
#MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=musicpd/}
Update to 0.18.10. Add support for many more optional dependencies. ver 0.18.10 (2014/04/10) * decoder - ffmpeg: fix seeking bug - ffmpeg: handle unknown stream start time - gme: fix memory leak - sndfile: work around libsndfile bug on partial read * don't interrupt playback when current song gets deleted ver 0.18.9 (2014/03/02) * protocol - "findadd" requires the "add" permission * output - alsa: improved workaround for noise after manual song change * decoder - vorbis: fix linker failure when libvorbis/libogg are static * encoder - vorbis: fix another linker failure * output - pipe: fix hanging child process due to blocked signals * fix build failure due to missing signal.h include ver 0.18.8 (2014/02/07) * decoder - ffmpeg: support libav v10_alpha1 * encoder - vorbis: fix linker failure * output - roar: documentation * more robust Icy-Metadata parser * fix Solaris build failure ver 0.18.7 (2014/01/13) * playlist - pls: fix crash after parser error - soundcloud: fix build failure with libyajl 2.0.1 * decoder - faad: fix memory leak - mpcdec: reject libmpcdec SV7 in configure script * daemon: don't initialize supplementary groups when already running as the configured user ver 0.18.6 (2013/12/24) * input - cdio_paranoia: support libcdio-paranoia 0.90 * tags - riff: recognize upper-case "ID3" chunk name * decoder - ffmpeg: use relative timestamps * output - openal: fix build failure on Mac OS X - osx: fix build failure * mixer - alsa: fix build failure with uClibc * fix replay gain during cross-fade * accept files without metadata ver 0.18.5 (2013/11/23) * configuration - fix crash when db_file is configured without music_directory - fix crash on "stats" without db_file/music_directory * database - proxy: auto-reload statistics - proxy: provide "db_update" in "stats" response * input - curl: work around stream resume bug (fixed in libcurl 7.32.0) * decoder - fluidsynth: auto-detect by default * clip 24 bit data from libsamplerate * fix ia64, mipsel and other little-endian architectures * fix build failures due to missing includes * fix build failure with static libmpdclient ver 0.18.4 (2013/11/13) * decoder - dsdiff: fix byte order bug * fix build failures due to missing includes * libc++ compatibility ver 0.18.3 (2013/11/08) * fix stuck MPD after song change (0.18.2 regression) ver 0.18.2 (2013/11/07) * protocol: - "close" flushes the output buffer * input: - cdio_paranoia: add setting "default_byte_order" - curl: fix bug with redirected streams * playlist: - pls: fix reversed song order * decoder: - audiofile: require libaudiofile 0.3 due to API breakage - dsf: enable DSD128 * enable buffering when starting playback (regression fix) * fix build failures due to missing includes * fix big-endian support ver 0.18.1 (2013/11/04) * protocol: - always ignore whitespace at the end of the line * networking: - log UNIX domain path names instead of "localhost" - open listener sockets in the order they were configured - don't abort if IPv6 is not available * output: - alsa: avoid endless loop in Raspberry Pi workaround * filter: - autoconvert: fix "volume_normalization" with mp3 files * add missing files to source tarball ver 0.18 (2013/10/31) * configuration: - allow tilde paths for socket - default filesystem charset is UTF-8 instead of ISO-8859-1 - increase default buffer size to 4 MB * protocol: - new command "readcomments" lists arbitrary file tags - new command "toggleoutput" - "find"/"search" with "any" does not match file name - "search" and "find" with base URI (keyword "base") - search for album artist falls back to the artist tag - re-add the "volume" command * input: - curl: enable https - soup: plugin removed * playlist: - lastfm: remove defunct Last.fm support * decoder: - adplug: new decoder plugin using libadplug - dsf: don't play junk at the end of the "data" chunk - ffmpeg: drop support for pre-0.8 ffmpeg - flac: require libFLAC 1.2 or newer - flac: support FLAC files inside archives - opus: new decoder plugin for the Opus codec - vorbis: skip 16 bit quantisation, provide float samples - mikmod: add "loop" configuration parameter - modplug: add "loop_count" configuration parameter - mp4ff: obsolete plugin removed * encoder: - opus: new encoder plugin for the Opus codec - vorbis: accept floating point input samples * output: - new option "tags" may be used to disable sending tags to output - alsa: workaround for noise after manual song change - ffado: remove broken plugin - httpd: support HEAD requests - mvp: remove obsolete plugin - osx: disabled by default because it's unmaintained and unsupported * improved decoder/output error reporting * eliminate timer wakeup on idle MPD * fix unresponsive MPD while waiting for stream * port of the source code to C++11 ver 0.17.6 (2013/10/14) * mixer: - alsa: fix busy loop when USB sound device gets unplugged * decoder: - modplug: fix build with Debian package 1:0.8.8.4-4 * stored playlists: - fix loading playlists with references to local files - obey filesystem_charset for URLs
2014-04-18 14:46:57 +02:00
EXTRACT_SUFX= .tar.xz
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= http://musicpd.org/
COMMENT= Remote controllable audio player
2011-02-27 11:43:18 +01:00
LICENSE= gnu-gpl-v2
Update to 0.16, add libsidplay option. ver 0.16 (2010/12/11) * protocol: - send song modification time to client - added "update" idle event - removed the deprecated "volume" command - added the "findadd" command - range support for "delete" - "previous" really plays the previous song - "addid" with negative position is deprecated - "load" supports remote playlists (extm3u, pls, asx, xspf, lastfm://) - allow changing replay gain mode on-the-fly - omitting the range end is possible - "update" checks if the path is malformed * archive: - iso: renamed plugin to "iso9660" - zip: renamed plugin to "zzip" * input: - lastfm: obsolete plugin removed - ffmpeg: new input plugin using libavformat's "avio" library * tags: - added tags "ArtistSort", "AlbumArtistSort" - id3: revised "performer" tag support - id3: support multiple values - ape: MusicBrainz tags - ape: support multiple values * decoders: - don't try a plugin twice (MIME type & suffix) - don't fall back to "mad" unless no plugin matches - ffmpeg: support multiple tags - ffmpeg: convert metadata to generic format - ffmpeg: implement the libavutil log callback - sndfile: new decoder plugin based on libsndfile - flac: moved CUE sheet support to a playlist plugin - flac: support streams without STREAMINFO block - mikmod: sample rate is configurable - mpg123: new decoder plugin based on libmpg123 - sidplay: support sub-tunes - sidplay: implemented songlength database - sidplay: support seeking - sidplay: play monaural SID tunes in mono - sidplay: play mus, str, prg, x00 files - wavpack: activate 32 bit support - wavpack: allow more than 2 channels - mp4ff: rename plugin "mp4" to "mp4ff" * encoders: - twolame: new encoder plugin based on libtwolame - flac: new encoder plugin based on libFLAC - wave: new encoder plugin for PCM WAV format * output: - recorder: new output plugin for recording radio streams - alsa: don't recover on CANCEL - alsa: fill period buffer with silence before draining - openal: new output plugin - pulse: announce "media.role=music" - pulse: renamed context to "Music Player Daemon" - pulse: connect to server on MPD startup, implement pause - jack: require libjack 0.100 - jack: don't disconnect during pause - jack: connect to server on MPD startup - jack: added options "client_name", "server_name" - jack: clear ring buffers before activating - jack: renamed option "ports" to "destination_ports" - jack: support more than two audio channels - httpd: bind port when output is enabled - httpd: added name/genre/website configuration - httpd: implement "pause" - httpd: bind_to_address support (including IPv6) - oss: 24 bit support via OSS4 - win32: new output plugin for Windows Wave - shout, httpd: more responsive to control commands - wildcards allowed in audio_format configuration - consistently lock audio output objects * player: - drain audio outputs at the end of the playlist * mixers: - removed support for legacy mixer configuration - reimplemented software volume as mixer+filter plugin - per-device software/hardware mixer setting * commands: - added new "status" line with more precise "elapsed time" * update: - automatically update the database with Linux inotify - support .mpdignore files in the music directory - sort songs by album name first, then disc/track number - rescan after metadata_to_use change * normalize: upgraded to AudioCompress 2.0 - automatically convert to 16 bit samples * replay gain: - reimplemented as a filter plugin - fall back to track gain if album gain is unavailable - optionally use hardware mixer to apply replay gain - added mode "auto" - parse replay gain from APE tags * log unused/unknown block parameters * removed the deprecated "error_file" option * save state when stopped * renamed option "--stdout" to "--stderr" * removed options --create-db and --no-create-db * state_file: save only if something has changed * database: eliminated maximum line length * log: redirect stdout/stderr to /dev/null if syslog is used * set the close-on-exec flag on all file descriptors * pcm_volume, pcm_mix: implemented 32 bit support * support packed 24 bit samples * CUE sheet support * support for MixRamp tags * obey $(sysconfdir) for default mpd.conf location * build with large file support by default * added test suite ("make check") * require GLib 2.12 * added libwrap support * make single mode 'sticky'
2011-02-27 11:42:13 +01:00
CONFLICTS= mpd-[0-9]*
GNU_CONFIGURE= yes
USE_LIBTOOL= yes
USE_TOOLS+= pkg-config
USE_LANGUAGES= c c++
# See ${WRKSRC}/src/Compiler.h: mpd requires gcc>=4.6
GCC_REQD= 4.6
# MacOS X audio output is no longer enabled by default.
.include "../../mk/bsd.prefs.mk"
.if ${OPSYS} == "Darwin"
CONFIGURE_ARGS+= --enable-osx
.endif
2012-01-11 20:51:26 +01:00
CPPFLAGS.SunOS+= -std=gnu99 -D_XOPEN_SOURCE=600 -D__EXTENSIONS__
.include "options.mk"
EGDIR= ${PREFIX}/share/examples/mpd
RCD_SCRIPTS= mpd
FILES_SUBST+= DEVOSSAUDIO=${DEVOSSAUDIO:Q}
LDFLAGS+= ${LIBOSSAUDIO}
SUBST_CLASSES+= config paths
SUBST_STAGE.config= pre-configure
SUBST_FILES.config= src/cmdline.c
SUBST_SED.config= -e s,/etc/mpd.conf,${PKG_SYSCONFDIR}/mpd.conf,
SUBST_STAGE.paths= post-patch
SUBST_FILES.paths= mpd.conf
SUBST_SED.paths= -e 's,@DEVOSSAUDIO@,${DEVOSSAUDIO},'
INSTALLATION_DIRS= ${EGDIR}
post-extract:
${CP} ${FILESDIR}/mpd.conf ${WRKSRC}/mpd.conf
post-install:
${INSTALL_DATA} ${WRKSRC}/mpd.conf ${DESTDIR}${EGDIR}
.include "../../devel/glib2/buildlink3.mk"
.include "../../audio/libmad/buildlink3.mk"
.include "../../mk/oss.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"