Bug 182983

Summary: New port: audio/icecast-kh Streaming audio server
Product: Ports & Packages Reporter: Anes Mukhametov <anes>
Component: Individual Port(s)Assignee: alexey
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
icecast-kh.shar
none
icecast-kh.shar none

Description Anes Mukhametov 2013-10-15 00:00:00 UTC
	New port audio/icecast-kh.
	This is a fork of icecast2 project (audio/icecast2, streaming audio server).
	Extended with many features and stable.
 		
 	This PR outdates ports/176445 and ports/162381.
Comment 1 alexey freebsd_committer freebsd_triage 2013-11-11 08:58:54 UTC
Responsible Changed
From-To: freebsd-ports-bugs->alexey

I'll take it.
Comment 2 dfilter service freebsd_committer freebsd_triage 2013-11-24 12:05:42 UTC
Author: alexey
Date: Sun Nov 24 12:05:33 2013
New Revision: 334719
URL: http://svnweb.freebsd.org/changeset/ports/334719

Log:
  audio/icecast-kh: a fork of icecast2 project stable and extended with many features.
  
  WWW: https://github.com/karlheyes/icecast-kh/
  
  PR:		ports/182983
  Submitted by:	Anes Mukhametov <anes@anes.su>
  Approved by:	wg (mentor)

Added:
  head/audio/icecast-kh/
  head/audio/icecast-kh/Makefile   (contents, props changed)
  head/audio/icecast-kh/distinfo   (contents, props changed)
  head/audio/icecast-kh/files/
  head/audio/icecast-kh/files/icecast.in   (contents, props changed)
  head/audio/icecast-kh/files/mv-patch-src-stats.c   (contents, props changed)
  head/audio/icecast-kh/files/patch-Makefile.in   (contents, props changed)
  head/audio/icecast-kh/files/patch-configure   (contents, props changed)
  head/audio/icecast-kh/files/pkg-message.in   (contents, props changed)
  head/audio/icecast-kh/pkg-descr   (contents, props changed)
  head/audio/icecast-kh/pkg-plist   (contents, props changed)
Modified:
  head/audio/Makefile

Modified: head/audio/Makefile
==============================================================================
--- head/audio/Makefile	Sun Nov 24 11:49:07 2013	(r334718)
+++ head/audio/Makefile	Sun Nov 24 12:05:33 2013	(r334719)
@@ -311,6 +311,7 @@
     SUBDIR += hs-OpenAL
     SUBDIR += hs-libmpd
     SUBDIR += hydrogen
+    SUBDIR += icecast-kh
     SUBDIR += icecast2
     SUBDIR += icegenerator
     SUBDIR += ices

Added: head/audio/icecast-kh/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/icecast-kh/Makefile	Sun Nov 24 12:05:33 2013	(r334719)
@@ -0,0 +1,75 @@
+# Created by: Anes Mukhametov <anes@anes.su>
+# $FreeBSD$
+
+PORTNAME=	icecast
+PORTVERSION=	${ICVERSION}.k${KH}
+CATEGORIES=	audio net ipv6
+PKGNAMESUFFIX=	-kh
+DISTNAME=	${PORTNAME}-${ICVERSION}-kh${KH}
+
+MAINTAINER=	anes@anes.su
+COMMENT=	Streaming mp3/ogg-vorbis audio server, KH branch
+
+LICENSE=	GPLv2
+
+LIB_DEPENDS=	libogg.so:${PORTSDIR}/audio/libogg \
+		libtheora.so:${PORTSDIR}/multimedia/libtheora \
+		libvorbis.so:${PORTSDIR}/audio/libvorbis \
+		libxml2.so:${PORTSDIR}/textproc/libxml2 \
+		libxslt.so:${PORTSDIR}/textproc/libxslt
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	karlheyes
+GH_PROJECT=	icecast-kh
+GH_TAGNAME=	icecast-${ICVERSION}-kh${KH}
+GH_COMMIT=	fc206e8
+
+USES=		gmake pkgconfig
+GNU_CONFIGURE=	yes
+USE_RC_SUBR=	${PORTNAME}
+SUB_FILES=	pkg-message
+CONFIGURE_ENV=	OGG_PREFIX=${LOCALBASE}
+CFLAGS+=	-I${LOCALBASE}/include
+LDFLAGS+=	-L${LOCALBASE}/lib
+
+ICVERSION=	2.3.3
+KH=		9
+
+OPTIONS_DEFINE=		CURL DOCS KATE SPEEX SSL_PORT
+OPTIONS_DEFAULT=	CURL KATE SPEEX
+CURL_DESC=		Support Directory server interaction (YP) via curl
+KATE_DESC=		Support Kate/Skeleton codec within Ogg streams
+SPEEX_DESC=		Support Speex codec within Ogg streams
+SSL_PORT_DESC=		Use OpenSSL from ports instead of one in the base
+
+CONFLICTS_INSTALL=	icecast-[0-9]* icecast2-[0-9]*
+
+.include <bsd.port.options.mk>
+
+.if ${PORT_OPTIONS:MCURL}
+BUILD_DEPENDS+=	curl>=7.10:${PORTSDIR}/ftp/curl
+CONFIGURE_ARGS+=	--with-curl=${LOCALBASE}
+.else
+CONFIGURE_ARGS+=	--without-curl
+.endif
+
+.if ${PORT_OPTIONS:MKATE}
+LIB_DEPENDS+=	libkate.so:${PORTSDIR}/multimedia/libkate
+.else
+CONFIGURE_ARGS+=	--without-kate
+.endif
+
+.if ${PORT_OPTIONS:MSPEEX}
+BUILD_DEPENDS+=	speex>=1:${PORTSDIR}/audio/speex
+CONFIGURE_ARGS+=	--with-speex=${LOCALBASE}
+.else
+CONFIGURE_ARGS+=	--without-speex
+.endif
+
+.if ${PORT_OPTIONS:MSSL_PORT}
+WITH_OPENSSL_PORT=	yes
+.else
+WITH_OPENSSL_BASE=	yes
+.endif
+
+.include <bsd.port.mk>

Added: head/audio/icecast-kh/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/icecast-kh/distinfo	Sun Nov 24 12:05:33 2013	(r334719)
@@ -0,0 +1,2 @@
+SHA256 (icecast-2.3.3-kh9.tar.gz) = f07bf04bb8fecad4cd213d679d86aa223c68b69e61d1393671af018ce62f4428
+SIZE (icecast-2.3.3-kh9.tar.gz) = 918945

Added: head/audio/icecast-kh/files/icecast.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/icecast-kh/files/icecast.in	Sun Nov 24 12:05:33 2013	(r334719)
@@ -0,0 +1,41 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+# PROVIDE: icecast
+# REQUIRE: DAEMON
+# BEFORE:  LOGIN
+# KEYWORD: shutdown
+
+# Add the following line to /etc/rc.conf to enable `icecast'.
+#
+#icecast_enable="YES"
+#
+# To specify a non-default configuration file, set icecast_config
+# in /etc/rc.conf: 
+#
+#icecast_config="%%PREFIX%%/etc/icecast.xml"
+#
+# Make sure the <changeowner> section in your configuration file is
+# not commented out - icecast refuses to run as root.
+#
+
+. /etc/rc.subr
+
+name="icecast"
+rcvar=icecast_enable
+
+command="%%PREFIX%%/bin/icecast"
+command_args="-b 1>/dev/null"
+extra_commands="reload"
+
+# read configuration and set defaults
+load_rc_config "$name"
+: ${icecast_enable="NO"}
+: ${icecast_config="%%PREFIX%%/etc/${name}.xml"}
+: ${icecast_flags="-c ${icecast_config}"}
+
+required_files="${icecast_config}"
+
+run_rc_command "$1"

Added: head/audio/icecast-kh/files/mv-patch-src-stats.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/icecast-kh/files/mv-patch-src-stats.c	Sun Nov 24 12:05:33 2013	(r334719)
@@ -0,0 +1,14 @@
+--- src/stats.c.orig	2008-05-01 10:22:40.000000000 +0800
++++ src/stats.c	2012-04-24 02:22:44.574821557 +0800
+@@ -973,7 +973,11 @@
+                 if (event->source)
+                 {
+                     if (show_mount && strcmp (event->source, show_mount) != 0)
++                    {
++                        xmlFree (name);
++                        xmlFree (value);
+                         break;
++                    }
+                     srcnode = _find_xml_node(event->source, &src_nodes, node);
+                 }
+                 else

Added: head/audio/icecast-kh/files/patch-Makefile.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/icecast-kh/files/patch-Makefile.in	Sun Nov 24 12:05:33 2013	(r334719)
@@ -0,0 +1,12 @@
+--- conf/Makefile.in.orig	2008-05-30 08:58:57.000000000 +0900
++++ conf/Makefile.in	2010-05-14 17:36:16.000000000 +0900
+@@ -407,8 +407,7 @@
+
+ install-data-hook:
+ 	$(mkinstalldirs) $(DESTDIR)$(sysconfdir)
+-	test -f $(DESTDIR)$(sysconfdir)/icecast.xml || \
+-	$(INSTALL_DATA) icecast.xml.dist $(DESTDIR)$(sysconfdir)/icecast.xml
++	$(INSTALL_DATA) icecast.xml.dist $(DESTDIR)$(sysconfdir)/icecast.xml.sample
+ 
+ icecast.xml.dist: $(srcdir)/icecast.xml.in
+ 	$(edit) $(srcdir)/icecast.xml.in > icecast.xml.dist

Added: head/audio/icecast-kh/files/patch-configure
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/icecast-kh/files/patch-configure	Sun Nov 24 12:05:33 2013	(r334719)
@@ -0,0 +1,35 @@
+--- configure.orig	2012-09-12 09:17:21.000000000 +0700
++++ configure	2013-02-24 02:48:14.000000000 +0700
+@@ -793,6 +793,7 @@
+ with_speex
+ with_curl
+ with_curl_config
++with_kate
+ enable_yp
+ with_openssl
+ '
+@@ -17610,6 +17611,16 @@
+ 
+ fi
+ 
++# Check whether --with-kate was given.
++if test "${with_kate+set}" = set; then :
++  withval=$with_kate; kate_prefix="$withval"
++fi
++
++if test "x$kate_prefix" = "xno"
++then
++  { $as_echo "$as_me:${as_lineno-$LINENO}: result: libkate support disabled by request" >&5
++$as_echo "libkate support disabled by request" >&6; }
++else
+ 
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for kate_decode_init in -lkate" >&5
+ $as_echo_n "checking for kate_decode_init in -lkate... " >&6; }
+@@ -17707,6 +17718,7 @@
+ fi
+ #ICECAST_OPTIONAL="$ICECAST_OPTIONAL format_kate.o"
+ 
++fi
+ 
+ 
+ 

Added: head/audio/icecast-kh/files/pkg-message.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/icecast-kh/files/pkg-message.in	Sun Nov 24 12:05:33 2013	(r334719)
@@ -0,0 +1,18 @@
+To start icecast at system boot, copy  
+%%PREFIX%%/etc/icecast.xml.sample to %%PREFIX%%/etc/icecast.xml, customize
+to your environment as desired and add:
+
+icecast_enable="YES"
+
+to /etc/rc.conf. See the icecast -h command for optional additional
+flags. To specify an alternative config file for example add:
+
+icecast_flags="-c /path/to/your/configuration.xml"
+
+**********************************************************************
+**  Make sure the <changeowner> section in your configuration file  **
+**     is NOT commented out. Icecast will refuse to run as root.    **
+**                                                                  ** 
+** Also make sure that the user you choose is able to write to your **
+**  configured log directory, otherwise icecast will refuse to run. **
+**********************************************************************

Added: head/audio/icecast-kh/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/icecast-kh/pkg-descr	Sun Nov 24 12:05:33 2013	(r334719)
@@ -0,0 +1,8 @@
+Icecast-kh is a fork of icecast, a streaming mp3/ogg-vorbis audio server.
+
+Icecast provides nearly all the functionality of the Shoutcast server.
+It will accept encoding streams from encoders like winamp, shout and ices.
+It can also add itself to a directory server such as our own
+icecast.linuxpower.org or Nullsoft's yp.shoutcast.com.
+
+WWW: https://github.com/karlheyes/icecast-kh/

Added: head/audio/icecast-kh/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/audio/icecast-kh/pkg-plist	Sun Nov 24 12:05:33 2013	(r334719)
@@ -0,0 +1,58 @@
+bin/icecast
+etc/icecast.xml.sample
+%%PORTDOCS%%%%DOCSDIR%%/AUTHORS
+%%PORTDOCS%%%%DOCSDIR%%/COPYING
+%%PORTDOCS%%%%DOCSDIR%%/NEWS
+%%PORTDOCS%%%%DOCSDIR%%/README
+%%PORTDOCS%%%%DOCSDIR%%/TODO
+%%PORTDOCS%%%%DOCSDIR%%/icecast2_admin.html
+%%PORTDOCS%%%%DOCSDIR%%/icecast2_basicsetup.html
+%%PORTDOCS%%%%DOCSDIR%%/icecast2_config_file.html
+%%PORTDOCS%%%%DOCSDIR%%/icecast2_faq.html
+%%PORTDOCS%%%%DOCSDIR%%/icecast2_glossary.html
+%%PORTDOCS%%%%DOCSDIR%%/icecast2_introduction.html
+%%PORTDOCS%%%%DOCSDIR%%/icecast2_listenerauth.html
+%%PORTDOCS%%%%DOCSDIR%%/icecast2_relay.html
+%%PORTDOCS%%%%DOCSDIR%%/icecast2_stats.html
+%%PORTDOCS%%%%DOCSDIR%%/icecast2_win32.html
+%%PORTDOCS%%%%DOCSDIR%%/icecast2_yp.html
+%%PORTDOCS%%%%DOCSDIR%%/index.html
+%%DATADIR%%/admin/listclients.xsl
+%%DATADIR%%/admin/listmounts.xsl
+%%DATADIR%%/admin/logs.xsl
+%%DATADIR%%/admin/manageauth.xsl
+%%DATADIR%%/admin/managerelays.xsl
+%%DATADIR%%/admin/moveclients.xsl
+%%DATADIR%%/admin/response.xsl
+%%DATADIR%%/admin/showlog.xsl
+%%DATADIR%%/admin/stats.xsl
+%%DATADIR%%/admin/updatemetadata.xsl
+%%DATADIR%%/admin/viewxml.xsl
+%%DATADIR%%/admin/xspf.xsl
+%%DATADIR%%/doc/icecast.xml.dist
+%%DATADIR%%/doc/icecast_minimal.xml.dist
+%%DATADIR%%/doc/icecast_shoutcast_compat.xml.dist
+%%DATADIR%%/web/7.xsl
+%%DATADIR%%/web/admin.html
+%%DATADIR%%/web/adminbar.html
+%%DATADIR%%/web/auth.xsl
+%%DATADIR%%/web/favicon.ico
+%%DATADIR%%/web/images/corner_bottomleft.jpg
+%%DATADIR%%/web/images/corner_bottomright.jpg
+%%DATADIR%%/web/images/corner_topleft.jpg
+%%DATADIR%%/web/images/corner_topright.jpg
+%%DATADIR%%/web/images/icecast.png
+%%DATADIR%%/web/images/key.png
+%%DATADIR%%/web/images/tunein.png
+%%DATADIR%%/web/index.html
+%%DATADIR%%/web/server_version.xsl
+%%DATADIR%%/web/status.xsl
+%%DATADIR%%/web/status2.xsl
+%%DATADIR%%/web/statusbar.html
+%%DATADIR%%/web/style.css
+@dirrmtry %%DATADIR%%/web/images
+@dirrmtry %%DATADIR%%/web
+@dirrmtry %%DATADIR%%/doc
+@dirrmtry %%DATADIR%%/admin
+@dirrmtry %%DATADIR%%
+%%PORTDOCS%%@dirrm %%DOCSDIR%%
_______________________________________________
svn-ports-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-ports-all
To unsubscribe, send any mail to "svn-ports-all-unsubscribe@freebsd.org"
Comment 3 alexey freebsd_committer freebsd_triage 2013-11-24 12:41:18 UTC
State Changed
From-To: open->closed

New port added, with minor changes. Thanks!