add peercast package (thanks to Romain Beauxis)
authorNicolas Thill <nico@openwrt.org>
Wed, 14 Dec 2005 22:34:56 +0000 (22:34 +0000)
committerNicolas Thill <nico@openwrt.org>
Wed, 14 Dec 2005 22:34:56 +0000 (22:34 +0000)
SVN-Revision: 2672

openwrt/package/peercast/Config.in [new file with mode: 0644]
openwrt/package/peercast/Makefile [new file with mode: 0644]
openwrt/package/peercast/files/peercast.ini [new file with mode: 0644]
openwrt/package/peercast/files/peercast.init [new file with mode: 0644]
openwrt/package/peercast/ipkg/peercast.conffiles [new file with mode: 0644]
openwrt/package/peercast/ipkg/peercast.control [new file with mode: 0644]

diff --git a/openwrt/package/peercast/Config.in b/openwrt/package/peercast/Config.in
new file mode 100644 (file)
index 0000000..b26f977
--- /dev/null
@@ -0,0 +1,14 @@
+config BR2_PACKAGE_PEERCAST
+       prompt "peercast........................... P2P audio and video streaming server"
+       tristate
+       default m if CONFIG_DEVEL
+       select BR2_PACKAGE_LIBPTHREAD
+       select BR2_PACKAGE_UCLIBCXX
+       help
+         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.
+         
+         http://www.peercast.org/
+
diff --git a/openwrt/package/peercast/Makefile b/openwrt/package/peercast/Makefile
new file mode 100644 (file)
index 0000000..575a404
--- /dev/null
@@ -0,0 +1,76 @@
+# $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 $(TOPDIR)/package/rules.mk
+
+$(eval $(call PKG_template,PEERCAST,peercast,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
+
+$(PKG_BUILD_DIR)/.configured:
+       (cd $(PKG_BUILD_DIR); rm -rf config.{cache,status} ; \
+               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" \
+               ./configure \
+                       --target=$(GNU_TARGET_NAME) \
+                       --host=$(GNU_TARGET_NAME) \
+                       --build=$(GNU_HOST_NAME) \
+                       --program-prefix="" \
+                       --program-suffix="" \
+                       --prefix=/usr \
+                       --exec-prefix=/usr \
+                       --bindir=/usr/bin \
+                       --datadir=/usr/share \
+                       --includedir=/usr/include \
+                       --infodir=/usr/share/info \
+                       --libdir=/usr/lib \
+                       --libexecdir=/usr/lib \
+                       --localstatedir=/var \
+                       --mandir=/usr/share/man \
+                       --sbindir=/usr/sbin \
+                       --sysconfdir=/etc \
+                       $(DISABLE_LARGEFILE) \
+                       $(DISABLE_NLS) \
+                       --enable-shared \
+                       --disable-static \
+                       --with-gnu-ld \
+                       --enable-staticbin \
+       );
+       touch $@
+
+$(PKG_BUILD_DIR)/.built:
+       rm -rf $(PKG_INSTALL_DIR)
+       mkdir -p $(PKG_INSTALL_DIR)
+       $(MAKE) -C $(PKG_BUILD_DIR) \
+               DESTDIR="$(PKG_INSTALL_DIR)" \
+               all install
+       touch $@
+
+$(IPKG_PEERCAST):
+       install -m0755 -d $(IDIR_PEERCAST)/usr/sbin
+       cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/peercast $(IDIR_PEERCAST)/usr/sbin/
+       install -m0755 -d $(IDIR_PEERCAST)/usr/share/peercast/html
+       cp -fpR $(PKG_INSTALL_DIR)/usr/share/peercast/html/en $(IDIR_PEERCAST)/usr/share/peercast/html/
+       install -m0755 -d $(IDIR_PEERCAST)/etc
+       install -m0644 ./files/peercast.ini $(IDIR_PEERCAST)/etc/
+       install -m0755 -d $(IDIR_PEERCAST)/etc/init.d
+       install -m0755 ./files/peercast.init $(IDIR_PEERCAST)/etc/init.d/peercast
+       ln -sf peercast $(IDIR_PEERCAST)/etc/init.d/S60peercast
+       $(RSTRIP) $(IDIR_PEERCAST)
+       $(IPKG_BUILD) $(IDIR_PEERCAST) $(PACKAGE_DIR)
diff --git a/openwrt/package/peercast/files/peercast.ini b/openwrt/package/peercast/files/peercast.ini
new file mode 100644 (file)
index 0000000..b48d3f9
--- /dev/null
@@ -0,0 +1,81 @@
+\r
+[Server]\r
+serverPort = 7144\r
+autoServe = Yes\r
+forceIP = \r
+isRoot = No\r
+maxBitrateOut = 0\r
+maxRelays = 1\r
+maxDirect = 0\r
+maxRelaysPerChannel = 0\r
+firewallTimeout = 30\r
+forceNormal = No\r
+rootMsg = \r
+authType = cookie\r
+cookiesExpire = session\r
+htmlPath = html/en\r
+minPGNUIncoming = 10\r
+maxPGNUIncoming = 20\r
+maxServIn = 50\r
+chanLog = \r
+networkID = 00000000000000000000000000000000\r
+\r
+[Broadcast]\r
+broadcastMsgInterval = 10\r
+broadcastMsg = \r
+icyMetaInterval = 8192\r
+broadcastID = 898145B5C0427118B595AF7D9E110000\r
+hostUpdateInterval = 180\r
+maxControlConnections = 3\r
+rootHost = yp.peercast.org\r
+\r
+[Client]\r
+refreshHTML = 5\r
+relayBroadcast = 30\r
+minBroadcastTTL = 1\r
+maxBroadcastTTL = 7\r
+pushTries = 5\r
+pushTimeout = 60\r
+maxPushHops = 8\r
+autoQuery = 0\r
+queryTTL = 7\r
+\r
+[Privacy]\r
+password = hackme\r
+maxUptime = 0\r
+\r
+[Filter]\r
+ip = 255.255.255.255\r
+private = No\r
+ban = No\r
+network = Yes\r
+direct = Yes\r
+[End]\r
+\r
+[Notify]\r
+PeerCast = Yes\r
+Broadcasters = Yes\r
+TrackInfo = Yes\r
+[End]\r
+\r
+[Server1]\r
+allowHTML = Yes\r
+allowBroadcast = Yes\r
+allowNetwork = Yes\r
+allowDirect = Yes\r
+[End]\r
+\r
+[Server2]\r
+allowHTML = No\r
+allowBroadcast = Yes\r
+allowNetwork = No\r
+allowDirect = No\r
+[End]\r
+\r
+[Debug]\r
+logDebug = No\r
+logErrors = No\r
+logNetwork = No\r
+logChannel = No\r
+pauseLog = No\r
+idleSleepTime = 10\r
diff --git a/openwrt/package/peercast/files/peercast.init b/openwrt/package/peercast/files/peercast.init
new file mode 100644 (file)
index 0000000..c61c314
--- /dev/null
@@ -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 $?
+
diff --git a/openwrt/package/peercast/ipkg/peercast.conffiles b/openwrt/package/peercast/ipkg/peercast.conffiles
new file mode 100644 (file)
index 0000000..0c55449
--- /dev/null
@@ -0,0 +1 @@
+/etc/peercast.ini
diff --git a/openwrt/package/peercast/ipkg/peercast.control b/openwrt/package/peercast/ipkg/peercast.control
new file mode 100644 (file)
index 0000000..a09a246
--- /dev/null
@@ -0,0 +1,6 @@
+Package: peercast
+Priority: optional
+Section: net
+Description: P2P audio and video streaming server
+Depends: libpthread, uclibc++
+