diff options
Diffstat (limited to 'openwrt/rhctl')
-rw-r--r-- | openwrt/rhctl/Makefile | 73 | ||||
-rwxr-xr-x | openwrt/rhctl/files/rhctlsh | 6 | ||||
-rw-r--r-- | openwrt/rhctl/files/switchctl.conf | 6 | ||||
-rwxr-xr-x | openwrt/rhctl/files/switchctl.init | 26 |
4 files changed, 111 insertions, 0 deletions
diff --git a/openwrt/rhctl/Makefile b/openwrt/rhctl/Makefile new file mode 100644 index 0000000..051a0ca --- /dev/null +++ b/openwrt/rhctl/Makefile @@ -0,0 +1,73 @@ +# +# Copyright (C) 2008 Christian Pointner, +# <equinox@helsinki.at> +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# +# This Makefile builds rhctl Package for OpenWRT +# +# $Id: $ + +include $(TOPDIR)/rules.mk + +PKG_NAME:=rhctl +PKG_VERSION:=0.1 +PKG_RELEASE:=1 + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://localhost/ +PKG_MD5SUM:=72255c3437630155453616ba18d8fb25 + +PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install + +include $(INCLUDE_DIR)/package.mk + +define Package/rhctl + SECTION:=utils + CATEGORY:=Utilities + TITLE:=radio helsinki control tools + URL:=http://www.helsinki.at + MAINTAINER:=Christian Pointner <equinox@helsinki.at> + DEPENDS:=+socat +endef + +define Package/rhctl/conffiles +/etc/rhctl/switchctl.conf +endef + +define Package/rhctl/description +rhctl is a collection of daemons and tools intended to control the + main audio switch of Radio Helsinki. +endef + +define Build/Configure + (cd $(PKG_BUILD_DIR); \ + touch include.mk; \ + ) +endef + +define Build/Compile + rm -rf $(PKG_INSTALL_DIR) + mkdir -p $(PKG_INSTALL_DIR) + + $(MAKE) -C $(PKG_BUILD_DIR) \ + $(TARGET_CONFIGURE_OPTS) \ + TARGET=Linux \ + CFLAGS="$(TARGET_CFLAGS)" \ + LDFLAGS="$(TARGET_LDFLAGS) -ldl" + $(STRIP) $(PKG_BUILD_DIR)/switchctl +endef + +define Package/rhctl/install + $(INSTALL_DIR) $(1)/etc/rhctl + $(INSTALL_DATA) ./files/switchctl.conf $(1)/etc/rhctl/ + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/switchctl $(1)/usr/bin/ + $(INSTALL_BIN) ./files/rhctlsh $(1)/usr/bin/ + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_BIN) ./files/switchctl.init $(1)/etc/init.d/switchctl +endef + +$(eval $(call BuildPackage,rhctl)) diff --git a/openwrt/rhctl/files/rhctlsh b/openwrt/rhctl/files/rhctlsh new file mode 100755 index 0000000..47d5873 --- /dev/null +++ b/openwrt/rhctl/files/rhctlsh @@ -0,0 +1,6 @@ +#!/bin/sh + +RUN_D=/var/run/rhctl +SOCK=$RUN_D/switchctl.sock + +/usr/bin/socat UNIX-CONNECT:$SOCK STDIO diff --git a/openwrt/rhctl/files/switchctl.conf b/openwrt/rhctl/files/switchctl.conf new file mode 100644 index 0000000..0364e0d --- /dev/null +++ b/openwrt/rhctl/files/switchctl.conf @@ -0,0 +1,6 @@ +master_main 01 +master_music 02 +standby_main 03 +standby_music 04 +studio 05 +ext_studio 06 diff --git a/openwrt/rhctl/files/switchctl.init b/openwrt/rhctl/files/switchctl.init new file mode 100755 index 0000000..c463f40 --- /dev/null +++ b/openwrt/rhctl/files/switchctl.init @@ -0,0 +1,26 @@ +#!/bin/sh /etc/rc.common +START=50 + +BIN=switchctl +DAEMON=/usr/bin/$BIN +DESC=$BIN +RUN_D=/var/run/rhctl +PIDFILE=$RUN_D/$BIN.pid + +start() { + echo -n "Starting $DESC:" + mkdir -p $RUN_D + $DAEMON --write-pid $PIDFILE + echo "." +} + +stop() { + echo -n "Stopping $DESC:" + if [ -f $PIDFILE ]; then + kill `cat $PIDFILE` > /dev/null 2>&1 + rm -f $PIDFILE > /dev/null 2>&1 + else + echo -n "not running" + fi + echo "." +} |