From 62e90dde42e48aa03fdad32162804ff3e70d32c0 Mon Sep 17 00:00:00 2001 From: jow Date: Sun, 5 Feb 2012 16:37:34 +0000 Subject: [PATCH] [packages_10.03.2] mpd: merge r28524, r29080 git-svn-id: svn://svn.openwrt.org/openwrt/branches/packages_10.03.2@30283 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- sound/mpd/Makefile | 189 +++++++++++++++++++++++++++++++++++++---------- sound/mpd/files/mpd.init | 16 ++-- 2 files changed, 157 insertions(+), 48 deletions(-) diff --git a/sound/mpd/Makefile b/sound/mpd/Makefile index 7873bb7..19f9b06 100644 --- a/sound/mpd/Makefile +++ b/sound/mpd/Makefile @@ -8,75 +8,127 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mpd -PKG_VERSION:=0.16.1 -PKG_RELEASE:=1 +PKG_VERSION:=0.16.5 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=@SF/musicpd -PKG_MD5SUM:=4d07459125ab0154c5b4fe364331498a +PKG_MD5SUM:=f7564cff12035f6a1112cce770655df7 -PKG_INSTALL:=1 +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) PKG_BUILD_PARALLEL:=1 +PKG_CONFIG_DEPENDS:= \ + CONFIG_IPV6 \ + +PKG_INSTALL:=1 + include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/nls.mk -define Package/mpd +define Package/mpd/Default SECTION:=sound CATEGORY:=Sound TITLE:=Music Player Daemon URL:=http://www.musicpd.org/ -# libvorbis and therewith libogg are needed for shout support - DEPENDS:= \ + DEPENDS:= +glib2 +libcurl +libpthread \ + +libflac +BUILD_PATENTED:libmad +libvorbisidec +endef + +define Package/mpd/Default/description + Music Player Daemon (MPD) is a flexible, powerful, server-side + application for playing music. It is typically controlled over a + network using one of it's many clients including mpc (console), + gmpc (gnome), phpmp (php), etc... +endef + + +define Package/mpd-full +$(call Package/mpd/Default) + TITLE+= (full) + DEPENDS+= \ +AUDIO_SUPPORT:alsa-lib \ - +libaudiofile \ - +BUILD_PATENTED:libfaad2 +BUILD_PATENTED:libmad \ - +glib2 +libcurl +libflac +libmms +libpthread +libshout \ - +libvorbis +libvorbisidec +libid3tag + +libaudiofile +BUILD_PATENTED:libfaad2 +libffmpeg +libid3tag \ + +libmms +libogg +libshout +libsndfile +libvorbis + PROVIDES:=mpd + VARIANT:=full endef -define Package/mpd/description - MPD is a music player supporting flac, mp3 and ogg files. It is - typically controlled over a network using one of it's many clients - including mpc(console), gmpc(gnome), phpmp(php), etc... +define Package/mpd-full/description +$(call Package/mpd/Default/description) + . + This package contains a full-blown Music Player Daemon. endef -define Package/mpd/conffiles +define Package/mpd-full/conffiles /etc/avahi/services/mpd.service /etc/mpd.conf endef -# oggflac is not compatible with tremor + +define Package/mpd-mini +$(call Package/mpd/Default) + TITLE+= (mini) + PROVIDES:=mpd + VARIANT:=mini +endef + +define Package/mpd-mini/description +$(call Package/mpd/Default/description) + . + This package contains a minimal Music Player Daemon, with support for + only Flac, MP3 & OGG media types & only file: & http: protocols. +endef + +define Package/mpd-mini/conffiles +/etc/mpd.conf +endef + + CONFIGURE_ARGS += \ - $(call autoconf_bool,CONFIG_BUILD_PATENTED,mad) \ - $(call autoconf_bool,CONFIG_AUDIO_SUPPORT,alsa) \ - --enable-audiofile \ - --disable-mpc \ - $(call autoconf_bool,CONFIG_BUILD_PATENTED,aac) \ - --disable-lsr \ + $(call autoconf_bool,CONFIG_IPV6,ipv6) \ + --disable-debug \ + --disable-documentation \ + --disable-gprof \ + --disable-test \ + --disable-werror \ + \ --disable-ao \ - --disable-mvp \ - --disable-lame-encoder \ - --disable-ffmpeg \ - --enable-flac \ - --enable-vorbis \ - --disable-oggflac \ + --disable-bzip2 \ --disable-cue \ + --disable-ffado \ + --disable-fluidsynth \ + --disable-gme \ + --disable-inotify \ + --disable-iso9660 \ --disable-jack \ + --disable-lame-encoder \ + --disable-libwrap \ + --disable-lsr \ + --disable-mikmod \ --disable-modplug \ + --disable-mpc \ + --disable-mpg123 \ + --disable-mvp \ + --disable-openal \ --disable-pulse \ --disable-sidplay \ + --disable-solaris-output \ --disable-sqlite \ - --enable-shout \ - --enable-id3 \ - --enable-lastfm \ - --enable-mms \ - --enable-curl \ - --disable-oss \ + --disable-twolame-encoder \ + --disable-wave-encoder \ + --disable-wavpack \ + --disable-wildmidi \ + --disable-zzip \ --with-zeroconf=no \ - --disable-test \ - --with-tremor=yes \ - --with-faad="$(STAGING_DIR)/usr" \ + \ + --enable-curl \ + --enable-flac \ + --enable-httpd-output \ + $(call autoconf_bool,CONFIG_BUILD_PATENTED,mad) \ + $(call autoconf_bool,CONFIG_AUDIO_SUPPORT,oss) \ + --enable-tcp \ + --enable-un \ CONFIGURE_VARS += \ FLAC_CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include/FLAC" \ @@ -90,15 +142,70 @@ TARGET_LDFLAGS += -Wl,-rpath-link=$(STAGING_DIR)/usr/lib # use gcc instead of g++ to avoid unnecessary linking against libstdc++ TARGET_CXX:=$(TARGET_CC) +ifeq ($(BUILD_VARIANT),full) + + CONFIGURE_ARGS += \ + $(call autoconf_bool,CONFIG_BUILD_PATENTED,aac) \ + $(call autoconf_bool,CONFIG_AUDIO_SUPPORT,alsa) \ + --enable-audiofile \ + --enable-fifo \ + --enable-ffmpeg \ + --enable-id3 \ + --enable-lastfm \ + --enable-mms \ + --enable-oggflac \ + --enable-pipe-output \ + --enable-recorder-output \ + --enable-shout \ + --enable-sndfile \ + --enable-vorbis \ + --enable-vorbis-encoder \ + --with-faad="$(STAGING_DIR)/usr" \ + --with-tremor=no \ + +endif + +ifeq ($(BUILD_VARIANT),mini) + + # oggflac is not compatible with tremor + CONFIGURE_ARGS += \ + --disable-aac \ + --disable-alsa \ + --disable-audiofile \ + --disable-fifo \ + --disable-ffmpeg \ + --disable-id3 \ + --disable-lastfm \ + --disable-mms \ + --disable-oggflac \ + --disable-pipe-output \ + --disable-recorder-output \ + --disable-shout \ + --disable-sndfile \ + --disable-vorbis \ + --disable-vorbis-encoder \ + --with-tremor=yes \ + +endif + define Package/mpd/install + $(INSTALL_DIR) $(1)/usr/bin + $(CP) $(PKG_INSTALL_DIR)/usr/bin/mpd $(1)/usr/bin/ $(INSTALL_DIR) $(1)/etc $(CP) $(PKG_BUILD_DIR)/doc/mpdconf.example $(1)/etc/mpd.conf - $(INSTALL_DIR) $(1)/usr/bin - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/mpd $(1)/usr/bin/ $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./files/mpd.init $(1)/etc/init.d/mpd +endef + +define Package/mpd-full/install +$(call Package/mpd/install,$1) $(INSTALL_DIR) $(1)/etc/avahi/services $(INSTALL_DATA) ./files/mpd.service $(1)/etc/avahi/services/ endef -$(eval $(call BuildPackage,mpd)) +define Package/mpd-mini/install +$(call Package/mpd/install,$1) +endef + +$(eval $(call BuildPackage,mpd-full)) +$(eval $(call BuildPackage,mpd-mini)) diff --git a/sound/mpd/files/mpd.init b/sound/mpd/files/mpd.init index 68dd361..707564b 100644 --- a/sound/mpd/files/mpd.init +++ b/sound/mpd/files/mpd.init @@ -1,26 +1,28 @@ #!/bin/sh /etc/rc.common -# Copyright (C) 2007-2010 OpenWrt.org +# Copyright (C) 2007-2011 OpenWrt.org + START=93 start() { #create mpd directories pld=`grep ^playlist_directory /etc/mpd.conf | cut -d "\"" -f 2 | sed "s/~/\/root/g"` if [ ! -d $pld ]; then - mkdir -p $pld + mkdir -m 0755 -p $pld fi + # Set the initial volume to something manageable - amixer set PCM 40 + [ -x /usr/bin/amixer ] && /usr/bin/amixer set PCM 40 - #start mpd if [ -x /bin/nice ]; then # This has real-time constraints, so let's at least tell the OS # that this should have higher priority to avoid skipping # when doing other things in the background. - nice="nice -n -10" + nice -n -10 fi - $nice /usr/bin/mpd + + service_start /usr/bin/mpd } stop() { - killall mpd + service_stop /usr/bin/mpd } -- 2.11.0