From 4385fe73b3c474566cb29115df7143e66dfe3026 Mon Sep 17 00:00:00 2001 From: florian Date: Sun, 6 Aug 2006 14:50:20 +0000 Subject: [PATCH] Port peercast to -ng git-svn-id: svn://svn.openwrt.org/openwrt/packages@4491 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- multimedia/peercast/Makefile | 74 ++++++++++++++++++++++++++++++ multimedia/peercast/files/peercast.ini | 81 +++++++++++++++++++++++++++++++++ multimedia/peercast/files/peercast.init | 18 ++++++++ 3 files changed, 173 insertions(+) create mode 100644 multimedia/peercast/Makefile create mode 100644 multimedia/peercast/files/peercast.ini create mode 100644 multimedia/peercast/files/peercast.init diff --git a/multimedia/peercast/Makefile b/multimedia/peercast/Makefile new file mode 100644 index 000000000..0afa39d4a --- /dev/null +++ b/multimedia/peercast/Makefile @@ -0,0 +1,74 @@ +# +# Copyright (C) 2006 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# +# $Id$ + +include $(TOPDIR)/rules.mk + +PKG_NAME:=peercast +PKG_VERSION:=0.1214 +PKG_RELEASE:=1 +PKG_MD5SUM:=4e8449cde7135ad97f788e67e1bd64ee + +PKG_SOURCE_URL:=http://www.cti.ecp.fr/~beauxir5/peercast +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_CAT:=zcat + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) +PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install + +include $(INCLUDE_DIR)/package.mk + +define Package/peercast + SECTION:=multimedia + CATEGORY:=Multimedia + DEPENDS:=+libpthread +uclibcxx + TITLE:=P2P audio and video streaming server + DESCRIPTION:=PeerCast is a fresh new P2P streaming server. It can stream music\\\ + and video from a broad variety of formats. Many audio players can\\\ + listen to peercast streams, as it's been built to remain compatible\\\ + with Nullsoft Shoutcast.\\\ + URL:=http://www.peercast.org/ +endef + +define Package/peercast/conffiles +/etc/peercast.ini +endef + +define Build/Configure +$(call Build/Configure/Default,--enable-shared \ + --disable-static \ + --with-gnu-ld \ + --enable-staticbin, BUILD_CC=$(TARGET_CC) HOSTCC=$(HOSTCC) \ + $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS)" \ + CXXFLAGS="$(TARGET_CFLAGS) -fno-builtin -nostdinc++ -nodefaultlibs" \ + CPPFLAGS="-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include" \ + LDFLAGS="-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib" \ + LIBS="-nodefaultlibs -luClibc++ -lpthread") +endef + +define Build/Compile + rm -rf $(PKG_INSTALL_DIR) + mkdir -p $(PKG_INSTALL_DIR) + $(MAKE) -C $(PKG_BUILD_DIR) \ + DESTDIR="$(PKG_INSTALL_DIR)" \ + all install +endef + +define Package/peercast/install + install -m0755 -d $(1)/usr/sbin + $(CP) $(PKG_INSTALL_DIR)/usr/sbin/peercast $(1)/usr/sbin/ + install -m0755 -d $(1)/usr/share/peercast/html + $(CP) $(PKG_INSTALL_DIR)/usr/share/peercast/html/en $(1)/usr/share/peercast/html/ + install -m0755 -d $(1)/etc + install -m0644 ./files/peercast.ini $(1)/etc/ + install -m0755 -d $(1)/etc/init.d + install -m0755 ./files/peercast.init $(1)/etc/init.d/peercast + ln -sf peercast $(1)/etc/init.d/S60peercast +endef + +$(eval $(call BuildPackage,peercast)) diff --git a/multimedia/peercast/files/peercast.ini b/multimedia/peercast/files/peercast.ini new file mode 100644 index 000000000..b48d3f9f7 --- /dev/null +++ b/multimedia/peercast/files/peercast.ini @@ -0,0 +1,81 @@ + +[Server] +serverPort = 7144 +autoServe = Yes +forceIP = +isRoot = No +maxBitrateOut = 0 +maxRelays = 1 +maxDirect = 0 +maxRelaysPerChannel = 0 +firewallTimeout = 30 +forceNormal = No +rootMsg = +authType = cookie +cookiesExpire = session +htmlPath = html/en +minPGNUIncoming = 10 +maxPGNUIncoming = 20 +maxServIn = 50 +chanLog = +networkID = 00000000000000000000000000000000 + +[Broadcast] +broadcastMsgInterval = 10 +broadcastMsg = +icyMetaInterval = 8192 +broadcastID = 898145B5C0427118B595AF7D9E110000 +hostUpdateInterval = 180 +maxControlConnections = 3 +rootHost = yp.peercast.org + +[Client] +refreshHTML = 5 +relayBroadcast = 30 +minBroadcastTTL = 1 +maxBroadcastTTL = 7 +pushTries = 5 +pushTimeout = 60 +maxPushHops = 8 +autoQuery = 0 +queryTTL = 7 + +[Privacy] +password = hackme +maxUptime = 0 + +[Filter] +ip = 255.255.255.255 +private = No +ban = No +network = Yes +direct = Yes +[End] + +[Notify] +PeerCast = Yes +Broadcasters = Yes +TrackInfo = Yes +[End] + +[Server1] +allowHTML = Yes +allowBroadcast = Yes +allowNetwork = Yes +allowDirect = Yes +[End] + +[Server2] +allowHTML = No +allowBroadcast = Yes +allowNetwork = No +allowDirect = No +[End] + +[Debug] +logDebug = No +logErrors = No +logNetwork = No +logChannel = No +pauseLog = No +idleSleepTime = 10 diff --git a/multimedia/peercast/files/peercast.init b/multimedia/peercast/files/peercast.init new file mode 100644 index 000000000..c61c31438 --- /dev/null +++ b/multimedia/peercast/files/peercast.init @@ -0,0 +1,18 @@ +#!/bin/sh + +PID_F=/var/run/peercast.pid + +case $1 in + start) + peercast -d -i /etc/peercast.ini -l /var/log/peercast.log -p $PID_F + ;; + stop) + [ -f $PID_F ] && kill $(cat $PID_F) >/dev/null 2>&1 + ;; + *) + echo "usage: $0 (start|stop)" + exit 1 +esac + +exit $? + -- 2.11.0