diff options
Diffstat (limited to 'package/multimedia/mpd')
| -rw-r--r-- | package/multimedia/mpd/Config.in | 138 | ||||
| -rw-r--r-- | package/multimedia/mpd/S95mpd | 30 | ||||
| -rw-r--r-- | package/multimedia/mpd/mpd.conf | 32 | ||||
| -rw-r--r-- | package/multimedia/mpd/mpd.mk | 109 | 
4 files changed, 309 insertions, 0 deletions
diff --git a/package/multimedia/mpd/Config.in b/package/multimedia/mpd/Config.in new file mode 100644 index 000000000..3906a5f93 --- /dev/null +++ b/package/multimedia/mpd/Config.in @@ -0,0 +1,138 @@ +menuconfig BR2_PACKAGE_MPD +	bool "mpd" +	depends on BR2_INSTALL_LIBSTDCPP +	depends on BR2_USE_WCHAR +	select BR2_PACKAGE_LIBGLIB2 +	select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE +	help +	  MPD is a flexible, powerful, server-side application +	  for playing music. Through plugins and libraries +	  it can play a variety of sound files while being +	  controlled by its network protocol. + +	  http://www.musicpd.org + +if BR2_PACKAGE_MPD + +config BR2_PACKAGE_MPD_ALSA +	bool "alsa" +	default y +	select BR2_PACKAGE_ALSA_LIB +	help +	  Enable alsa output support. + +config BR2_PACKAGE_MPD_AO +	bool "ao" +	select BR2_PACKAGE_LIBAO +	help +	  Enable libao output support. + +config BR2_PACKAGE_MPD_BZIP2 +	bool "bzip2" +	select BR2_PACKAGE_BZIP2 +	help +	  Enable bzip2 archive support. + +config BR2_PACKAGE_MPD_CURL +	bool "curl" +	select BR2_PACKAGE_LIBCURL +	help +	  Enable curl streaming (http) support. + +config BR2_PACKAGE_MPD_FAAD2 +	bool "faad2" +	select BR2_PACKAGE_FAAD2 +	help +	  Enable faad2 input support. +	  Select this if you want to play back MP4/AAC files. + +config BR2_PACKAGE_MPD_FLAC +	bool "flac" +	select BR2_PACKAGE_FLAC +	help +	  Enable flac input/streaming support. +	  Select this if you want to play back FLAC files. + +config BR2_PACKAGE_MPD_LIBSAMPLERATE +	bool "libsamplerate" +	select BR2_PACKAGE_LIBSAMPLERATE +	help +	  Enable libsamplerate input support. +	  Select this for software sample rate conversion. + +config BR2_PACKAGE_MPD_LIBSNDFILE +	bool "libsndfile" +	select BR2_PACKAGE_LIBSNDFILE +	help +	  Enable libsndfile input/streaming support. +	  Select this if you want to play back WAV files. + +config BR2_PACKAGE_MPD_MAD +	bool "mad" +	default y +	select BR2_PACKAGE_LIBID3TAG +	select BR2_PACKAGE_LIBMAD +	help +	  Enable mad input support. +	  Select this if you want to play back MP3 files. + +config BR2_PACKAGE_MPD_MPG123 +	bool "mpg123" +	select BR2_PACKAGE_LIBID3TAG +	select BR2_PACKAGE_MPG123 +	help +	  Enable mpg123 input support. +	  Select this if you want to play back MP3 files. + +config BR2_PACKAGE_MPD_MUSEPACK +	bool "musepack" +	select BR2_PACKAGE_LIBCUE +	select BR2_PACKAGE_LIBREPLAYGAIN +	select BR2_PACKAGE_MUSEPACK +	help +	  Enable musepack input support. +	  Select this if you want to play back MPC files. + +config BR2_PACKAGE_MPD_SQLITE +	bool "sqlite" +	select BR2_PACKAGE_SQLITE +	help +	  Enable sqlite database support. +	  If you don't use sqlite it will use an ASCII database. + +config BR2_PACKAGE_MPD_TCP +	bool "tcp sockets" +	default y +	help +	  Enable mpd to listen on tcp sockets. + +	  You want this on if mpd and the client(s) work +	  on different machines (the usual scenario). + +config BR2_PACKAGE_MPD_TREMOR +	bool "tremor" +	select BR2_PACKAGE_LIBOGG +	select BR2_PACKAGE_TREMOR +	help +	  Enable vorbis input support. +	  Select this if you want to play back OGG files on softfloat targets. + +config BR2_PACKAGE_MPD_VORBIS +	bool "vorbis" +	select BR2_PACKAGE_LIBOGG +	select BR2_PACKAGE_LIBVORBIS +	help +	  Enable vorbis input/streaming support. +	  Select this if you want to play back OGG files on hardfloat targets. + +config BR2_PACKAGE_MPD_WAVPACK +	bool "wavpack" +	select BR2_PACKAGE_WAVPACK +	help +	  Enable wavpack input support. +	  Select this if you want to play back WV files. + +endif + +comment "mpd requires a toolchain with C++ and WCHAR support" +	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR diff --git a/package/multimedia/mpd/S95mpd b/package/multimedia/mpd/S95mpd new file mode 100644 index 000000000..7c242f432 --- /dev/null +++ b/package/multimedia/mpd/S95mpd @@ -0,0 +1,30 @@ +#!/bin/sh + +start() { +	echo -n "Starting mpd: " +	start-stop-daemon --start --quiet --background --exec /usr/bin/mpd +	echo "OK" +} + +stop() { +	echo -n "Stopping mpd: " +	start-stop-daemon --stop --quiet --pidfile /var/run/mpd.pid +	echo "OK" +} + +case "$1" in +	start) +		start +		;; +	stop) +		stop +		;; +	restart|reload) +		stop +		sleep 1 +		start +		;; +	*) +		echo $"Usage: $0 {start|stop|restart}" +		exit 1 +esac diff --git a/package/multimedia/mpd/mpd.conf b/package/multimedia/mpd/mpd.conf new file mode 100644 index 000000000..1a08ed0ff --- /dev/null +++ b/package/multimedia/mpd/mpd.conf @@ -0,0 +1,32 @@ +# +# Sample configuration file for mpd +# This is a minimal configuration, see the manpage for more options +# + +# Directory where the music is stored +music_directory		"/var/lib/mpd/music" + +# Directory where user-made playlists are stored (RW) +playlist_directory	"/mnt/mpd/playlists" + +# Database file (RW) +db_file			"/var/lib/mpd/database" + +# Log file (RW) +log_file		"/var/log/mpd.log" + +# Process ID file (RW) +pid_file		"/var/run/mpd.pid" + +# State file (RW) +state_file		"/var/lib/mpd/state" + +# User id to run the daemon as +#user			"nobody" + +# TCP socket binding +bind_to_address		"any" +#bind_to_address	"localhost" + +# Unix socket to listen on +bind_to_address		"/var/lib/mpd/socket" diff --git a/package/multimedia/mpd/mpd.mk b/package/multimedia/mpd/mpd.mk new file mode 100644 index 000000000..c60ccc69d --- /dev/null +++ b/package/multimedia/mpd/mpd.mk @@ -0,0 +1,109 @@ +############################################################# +# +# mpd +# +############################################################# + +MPD_VERSION = 0.16.1 +MPD_SITE = http://$(BR2_SOURCEFORGE_MIRROR).dl.sourceforge.net/sourceforge/musicpd +MPD_DEPENDENCIES = host-pkg-config libglib2 + +# Some options need an explicit --disable or --enable + +ifeq ($(BR2_PACKAGE_MPD_ALSA),y) +MPD_DEPENDENCIES += alsa-lib +else +MPD_CONF_OPT += --disable-alsa +endif + +ifeq ($(BR2_PACKAGE_MPD_AO),y) +MPD_DEPENDENCIES += libao +else +MPD_CONF_OPT += --disable-ao +endif + +ifeq ($(BR2_PACKAGE_MPD_BZIP2),y) +MPD_DEPENDENCIES += bzip2 +MPD_CONF_OPT += --enable-bzip2 +endif + +ifeq ($(BR2_PACKAGE_MPD_FAAD2),y) +MPD_DEPENDENCIES += faad2 +else +MPD_CONF_OPT += --disable-faad2 +endif + +ifeq ($(BR2_PACKAGE_MPD_FLAC),y) +MPD_DEPENDENCIES += flac +else +MPD_CONF_OPT += --without-flac +endif + +ifeq ($(BR2_PACKAGE_MPD_CURL),y) +MPD_DEPENDENCIES += libcurl +else +MPD_CONF_OPT += --disable-curl +endif + +ifeq ($(BR2_PACKAGE_MPD_LIBSAMPLERATE),y) +MPD_DEPENDENCIES += libsamplerate +else +MPD_CONF_OPT += --disable-lsr +endif + +ifeq ($(BR2_PACKAGE_MPD_LIBSNDFILE),y) +MPD_DEPENDENCIES += libsndfile +else +MPD_CONF_OPT += --disable-sndfile +endif + +ifeq ($(BR2_PACKAGE_MPD_VORBIS),y) +MPD_DEPENDENCIES += libvorbis +else +MPD_CONF_OPT += --disable-vorbis +endif + +ifeq ($(BR2_PACKAGE_MPD_MPG123),y) +MPD_DEPENDENCIES += libid3tag mpg123 +else +MPD_CONF_OPT += --disable-mpg123 +endif + +ifeq ($(BR2_PACKAGE_MPD_MUSEPACK),y) +MPD_DEPENDENCIES += musepack +else +MPD_CONF_OPT += --disable-mpc +endif + +ifeq ($(BR2_PACKAGE_MPD_SQLITE),y) +MPD_DEPENDENCIES += sqlite +else +MPD_CONF_OPT += --disable-sqlite +endif + +ifneq ($(BR2_PACKAGE_MPD_TCP),y) +MPD_CONF_OPT += --disable-tcp +endif + +ifeq ($(BR2_PACKAGE_MPD_TREMOR),y) +MPD_DEPENDENCIES += tremor +MPD_CONF_OPT += --with-tremor +endif + +ifeq ($(BR2_PACKAGE_MPD_WAVPACK),y) +MPD_DEPENDENCIES += wavpack +else +MPD_CONF_OPT += --disable-wavpack +endif + +define MPD_INSTALL_EXTRA_FILES +	[ ! -f $(TARGET_DIR)/etc/mpd.conf ] && \ +		$(INSTALL) -D package/multimedia/mpd/mpd.conf \ +			$(TARGET_DIR)/etc/mpd.conf +	$(INSTALL) -m 0755 -D package/multimedia/mpd/S95mpd \ +		$(TARGET_DIR)/etc/init.d/S95mpd +endef + +MPD_POST_INSTALL_TARGET_HOOKS += MPD_INSTALL_EXTRA_FILES + +$(eval $(call AUTOTARGETS,package/multimedia,mpd))  | 
