summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--openwrt/package/peercast/Config.in14
-rw-r--r--openwrt/package/peercast/Makefile76
-rw-r--r--openwrt/package/peercast/files/peercast.ini81
-rw-r--r--openwrt/package/peercast/files/peercast.init18
-rw-r--r--openwrt/package/peercast/ipkg/peercast.conffiles1
-rw-r--r--openwrt/package/peercast/ipkg/peercast.control6
6 files changed, 196 insertions, 0 deletions
diff --git a/openwrt/package/peercast/Config.in b/openwrt/package/peercast/Config.in
new file mode 100644
index 000000000..b26f977cd
--- /dev/null
+++ b/openwrt/package/peercast/Config.in
@@ -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
index 000000000..575a4041a
--- /dev/null
+++ b/openwrt/package/peercast/Makefile
@@ -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
index 000000000..b48d3f9f7
--- /dev/null
+++ b/openwrt/package/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/openwrt/package/peercast/files/peercast.init b/openwrt/package/peercast/files/peercast.init
new file mode 100644
index 000000000..c61c31438
--- /dev/null
+++ b/openwrt/package/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 $?
+
diff --git a/openwrt/package/peercast/ipkg/peercast.conffiles b/openwrt/package/peercast/ipkg/peercast.conffiles
new file mode 100644
index 000000000..0c554494e
--- /dev/null
+++ b/openwrt/package/peercast/ipkg/peercast.conffiles
@@ -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
index 000000000..a09a246fe
--- /dev/null
+++ b/openwrt/package/peercast/ipkg/peercast.control
@@ -0,0 +1,6 @@
+Package: peercast
+Priority: optional
+Section: net
+Description: P2P audio and video streaming server
+Depends: libpthread, uclibc++
+