Update to latest version and switch to procd.

Signed-off-by: Álvaro Fernández Rojas <nolt...@gmail.com>
---
diff --git a/multimedia/shairport/Makefile b/multimedia/shairport/Makefile
index b722dd4..c66a9da 100644
--- a/multimedia/shairport/Makefile
+++ b/multimedia/shairport/Makefile
@@ -8,13 +8,13 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=shairport
-PKG_VERSION:=2013-10-26
+PKG_VERSION:=2014-05-08
 PKG_RELEASE:=$(PKG_SOURCE_VERSION)
 
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_URL:=git://github.com/abrasive/shairport.git
 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
-PKG_SOURCE_VERSION:=b2c7bf111c1446739af9411d8a35acd9b6581b06
+PKG_SOURCE_VERSION:=078b21043cdcef6ffad7452db27f036770b23b0c
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
 
 include $(INCLUDE_DIR)/package.mk
@@ -51,7 +51,7 @@ define Package/shairport/install
        $(INSTALL_DIR) $(1)/etc/init.d/
        $(INSTALL_BIN) files/shairport.init $(1)/etc/init.d/shairport
        $(INSTALL_DIR) $(1)/etc/config
-       $(INSTALL_DATA) files/shairport.config $(1)/etc/config/shairport
+       $(INSTALL_CONF) files/shairport.config $(1)/etc/config/shairport
 endef
 
 $(eval $(call BuildPackage,shairport))
diff --git a/multimedia/shairport/files/shairport.config 
b/multimedia/shairport/files/shairport.config
index 83ba692..74e67cb 100644
--- a/multimedia/shairport/files/shairport.config
+++ b/multimedia/shairport/files/shairport.config
@@ -1,3 +1,11 @@
 config shairport
-       option name     'AirPort'
-       option buffer   '256'
+       option name 'AirPort'
+       option password ''
+       option port '5002'
+       option buffer '256'
+       option log '/var/log/shairport'
+       option cmd_start ''
+       option cmd_stop ''
+       option cmd_wait '0'
+       option audio_output ''
+       option mdns ''
diff --git a/multimedia/shairport/files/shairport.init 
b/multimedia/shairport/files/shairport.init
index f05f7d6..2136bc2 100644
--- a/multimedia/shairport/files/shairport.init
+++ b/multimedia/shairport/files/shairport.init
@@ -1,34 +1,53 @@
 #!/bin/sh /etc/rc.common
-START=80
+# Copyright (C) 2013-2014 OpenWrt.org
 
-DAEMON="/usr/sbin/shairport"
+START=50
+USE_PROCD=1
 
 config_shairport() {
        local cfg="$1"
-       local args=""
 
-       config_get name "$cfg" name
-       config_get port "$cfg" port
-       config_get buffer "$cfg" buffer
-
-       [ -z $name ] && name="AirPort"
-       args="$args -a $name"
-
-       [ ! -z "$port" ] && args="$args -p $port"
-
-       [ -z $buffer ] && buffer="256"
-       args="$args -b $buffer"
-
-       args="$args -d"
-
-       service_start $DAEMON $args
+       local cfg_name
+       local cfg_password
+       local cfg_port
+       local cfg_buffer
+       local cfg_log
+       local cfg_cmd_start
+       local cfg_cmd_stop
+       local cfg_cmd_wait
+       local cfg_audio_output
+       local cfg_mdns
+
+       config_get cfg_name $cfg 'name' 'AirPort'
+       config_get cfg_password $cfg 'password' ''
+       config_get cfg_port $cfg 'port' '5002'
+       config_get cfg_buffer $cfg 'buffer' '256'
+       config_get cfg_log $cfg 'log' '/var/log/shairport'
+       config_get cfg_cmd_start $cfg 'cmd_start' ''
+       config_get cfg_cmd_stop $cfg 'cmd_stop' ''
+       config_get_bool cfg_cmd_wait $cfg 'cmd_wait' '0'
+       config_get cfg_audio_output $cfg 'audio_output' ''
+       config_get cfg_mdns $cfg 'mdns' ''
+
+       procd_open_instance
+
+       procd_set_param command /usr/sbin/shairport
+       procd_append_param command -a "$cfg_name"
+       [ ! -z "$cfg_password" ] && procd_append_param command -k 
"$cfg_password"
+       procd_append_param command -p $cfg_port
+       procd_append_param command -b $cfg_buffer
+       procd_append_param command -l $cfg_log
+       [ ! -z "$cfg_cmd_start" ] && procd_append_param command -B 
"$cfg_cmd_start"
+       [ ! -z "$cfg_cmd_stop" ] && procd_append_param command -E 
"$cfg_cmd_stop"
+       [ "$cfg_cmd_wait" -eq 1 ] && procd_append_param command -w
+       [ ! -z "$cfg_audio_output" ] && procd_append_param command -o 
"$cfg_audio_output"
+       [ ! -z "$cfg_mdns" ] && procd_append_param command -m "$cfg_mdns"
+
+       procd_set_param respawn
+       procd_close_instance
 }
 
-start() {
+start_service() {
        config_load shairport
        config_foreach config_shairport shairport
 }
-
-stop() {
-       service_stop $DAEMON
-}
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to