lede-packages-rs

git clone git://archive.git.mtrnord.blog/MTRNord/lede-packages-rs.git
Log | Files | Refs | README | LICENSE

commit 1b4bfe3d37a941eee7e530cb72a5cb80d24f41ee
parent 1ab5d3643a470a40c81ae18fc55571d8b590e8f6
Author: sbyx <steven@midlink.org>
Date:   Mon, 28 Jul 2014 10:07:52 +0200

Merge pull request #130 from andrenarchy/master

Import and upgrade icecast
Diffstat:
Amultimedia/icecast/Makefile | 94+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Amultimedia/icecast/files/icecast.init | 14++++++++++++++
Amultimedia/icecast/libvorbisidec.mk | 41+++++++++++++++++++++++++++++++++++++++++
Amultimedia/icecast/patches/001-icecast-2.4.0-tremor.patch | 155+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Amultimedia/icecast/patches/010-fix_libcurl_test_crap.patch | 11+++++++++++
5 files changed, 315 insertions(+), 0 deletions(-)

diff --git a/multimedia/icecast/Makefile b/multimedia/icecast/Makefile @@ -0,0 +1,94 @@ +# +# Copyright (C) 2006-2011 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=icecast +PKG_VERSION:=2.4.0 +PKG_RELEASE:=1 +PKG_MAINTAINER:=André Gaul <gaul@web-yard.de> + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://downloads.us.xiph.org/releases/icecast/ +PKG_MD5SUM:=bb00bfc0d6d2dde24974641085602b81 + +PKG_FIXUP:=autoreconf + +include $(INCLUDE_DIR)/package.mk + +TREMOR_BUILD_DIR=$(PKG_BUILD_DIR)/libvorbisidec-1.2.0-dave +TREMOR_DIR=$(TREMOR_BUILD_DIR)/ipkg-install/usr + +define Package/icecast + SECTION:=multimedia + CATEGORY:=Multimedia + DEPENDS:=+libcurl +libxml2 +libxslt +libogg +libopenssl + TITLE:=A streaming media server for Ogg/Vorbis and MP3 audio streams + URL:=http://www.icecast.org/ +endef + +define Package/icecast/description + Icecast is a streaming media server which currently supports Ogg + Vorbis and MP3 audio streams. It can be used to create an Internet + radio station or a privately running jukebox and many things in + between. It is very versatile in that new formats can be added + relatively easily and supports open standards for commuincation and + interaction. +endef + +define Build/Prepare + $(Build/Prepare/Default) + $(SUBMAKE) -f libvorbisidec.mk \ + BUILD_DIR="$(PKG_BUILD_DIR)" \ + V=99 \ + prepare +endef + +define Build/Configure + $(MAKE) -f libvorbisidec.mk \ + BUILD_DIR="$(PKG_BUILD_DIR)" \ + V=99 \ + compile + $(SED) 's,-lvorbis ,$(TREMOR_DIR)/lib/libvorbisidec.a -logg ,g' $(PKG_BUILD_DIR)/configure + $(call Build/Configure/Default, \ + --enable-yp \ + --with-curl="yes" \ + --with-curl-config="$(STAGING_DIR)/usr/bin/curl-config" \ + --with-ogg="$(STAGING_DIR)/usr" \ + --with-speex="no" \ + --with-theora="no" \ + --with-vorbis="$(TREMOR_DIR)" \ + --with-xslt-config="$(STAGING_DIR)/usr/bin/xslt-config" \ + , \ + CPPFLAGS="-I$(TREMOR_DIR)/include -I$(STAGING_DIR)/usr/include/libxml2 $(TARGET_CPPFLAGS)" \ + ) +endef + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + DESTDIR="$(PKG_INSTALL_DIR)" \ + INCLUDES="-I$(PKG_BUILD_DIR)/src -I$(TREMOR_DIR)/include" \ + all install +endef + +define Package/icecast/install + $(INSTALL_DIR) $(1)/etc + $(CP) $(PKG_INSTALL_DIR)/etc/icecast.xml $(1)/etc/ + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_BIN) ./files/icecast.init $(1)/etc/init.d/icecast + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/icecast $(1)/usr/bin/ + $(INSTALL_DIR) $(1)/usr/share/icecast + $(CP) $(PKG_INSTALL_DIR)/usr/share/icecast/admin $(1)/usr/share/icecast/ + $(CP) $(PKG_INSTALL_DIR)/usr/share/icecast/web $(1)/usr/share/icecast/ +endef + +define Package/icecast/conffiles +/etc/icecast.xml +endef + +$(eval $(call BuildPackage,icecast)) diff --git a/multimedia/icecast/files/icecast.init b/multimedia/icecast/files/icecast.init @@ -0,0 +1,14 @@ +#!/bin/sh /etc/rc.common +# Example script +# Copyright (C) 2014 OpenWrt.org + +USE_PROCD=1 +START=99 +STOP=15 + +start_service() { + procd_open_instance + procd_set_param command /usr/bin/icecast -c /etc/icecast.xml + procd_set_param respawn + procd_close_instance +} diff --git a/multimedia/icecast/libvorbisidec.mk b/multimedia/icecast/libvorbisidec.mk @@ -0,0 +1,41 @@ +# +# Copyright (C) 2006 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=icecast-libvorbisidec +PKG_VERSION:=1.2.0-dave +PKG_RELEASE:=1 + +PKG_SOURCE:=libvorbisidec-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://users.tpg.com.au/davico/openwrt/ +PKG_MD5SUM:=cb8e51aab92ef164f8e0e8853f7164fa + +PKG_BUILD_DIR:=$(BUILD_DIR)/libvorbisidec-$(PKG_VERSION) +PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install +PATCH_DIR=./patches-libvorbisidec + +include $(INCLUDE_DIR)/package.mk + +define Build/Configure + $(call Build/Configure/Default, \ + --disable-shared \ + --enable-static \ + ) +endef + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + DESTDIR="$(PKG_INSTALL_DIR)" \ + all install +endef + +define Build/InstallDev + true +endef + +$(eval $(call Build/DefaultTargets)) diff --git a/multimedia/icecast/patches/001-icecast-2.4.0-tremor.patch b/multimedia/icecast/patches/001-icecast-2.4.0-tremor.patch @@ -0,0 +1,155 @@ +--- a/src/format_flac.c ++++ b/src/format_flac.c +@@ -18,7 +18,7 @@ + #endif + + #include <stdlib.h> +-#include <ogg/ogg.h> ++#include <tremor/ogg.h> + #include <string.h> + + typedef struct source_tag source_t; +--- a/src/format_midi.c ++++ b/src/format_midi.c +@@ -18,7 +18,7 @@ + #endif + + #include <stdlib.h> +-#include <ogg/ogg.h> ++#include <tremor/ogg.h> + #include <string.h> + + typedef struct source_tag source_t; +--- a/src/format_ogg.c ++++ b/src/format_ogg.c +@@ -24,7 +24,7 @@ + #include <stdlib.h> + #include <string.h> + +-#include <ogg/ogg.h> ++#include <tremor/ogg.h> + + #include "refbuf.h" + #include "source.h" +--- a/src/format_ogg.h ++++ b/src/format_ogg.h +@@ -18,7 +18,7 @@ + #ifndef __FORMAT_OGG_H__ + #define __FORMAT_OGG_H__ + +-#include <ogg/ogg.h> ++#include <tremor/ogg.h> + #include "refbuf.h" + #include "format.h" + +--- a/src/format_speex.c ++++ b/src/format_speex.c +@@ -18,7 +18,7 @@ + #endif + + #include <stdlib.h> +-#include <ogg/ogg.h> ++#include <tremor/ogg.h> + #include <speex/speex_header.h> + + typedef struct source_tag source_t; +--- a/src/format_theora.c ++++ b/src/format_theora.c +@@ -18,7 +18,7 @@ + #endif + + #include <stdlib.h> +-#include <ogg/ogg.h> ++#include <tremor/ogg.h> + #include <theora/theora.h> + + typedef struct source_tag source_t; +--- a/src/format_vorbis.c ++++ b/src/format_vorbis.c +@@ -18,8 +18,8 @@ + #endif + + #include <stdlib.h> +-#include <ogg/ogg.h> +-#include <vorbis/codec.h> ++#include <tremor/ogg.h> ++#include <tremor/ivorbiscodec.h> + #include <memory.h> + #include <string.h> + +--- a/src/source.c ++++ b/src/source.c +@@ -19,7 +19,7 @@ + #include <stdlib.h> + #include <string.h> + #include <sys/types.h> +-#include <ogg/ogg.h> ++#include <tremor/ogg.h> + #include <errno.h> + + #ifndef _WIN32 +--- a/src/format_kate.c ++++ b/src/format_kate.c +@@ -19,7 +19,7 @@ + + #include <stdlib.h> + #include <string.h> +-#include <ogg/ogg.h> ++#include <tremor/ogg.h> + #ifdef HAVE_KATE + #include <kate/oggkate.h> + #endif +--- a/m4/vorbis.m4 ++++ b/m4/vorbis.m4 +@@ -38,9 +38,9 @@ if test "x$vorbis_prefix" != "x$ogg_pref + ]) + fi + +-VORBIS_LIBS="-lvorbis" +-VORBISFILE_LIBS="-lvorbisfile" +-VORBISENC_LIBS="-lvorbisenc" ++VORBIS_LIBS="-lvorbisidec" ++VORBISFILE_LIBS="-lvorbisidec" ++VORBISENC_LIBS="-lvorbisidec" + + xt_save_LIBS="$LIBS" + xt_save_LDFLAGS="$LDFLAGS" +@@ -58,18 +58,6 @@ AC_TRY_LINK_FUNC(ogg_stream_init, [xt_li + ) + ]) + +-if test "x$xt_lib_vorbis" = "xok"; then +-# +-# Now check if the installed Vorbis is sufficiently new. +-# +-AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ +-#include <vorbis/codec.h> +-#include <vorbis/vorbisenc.h> +- ], [ +-struct ovectl_ratemanage_arg a; +-])],,[xt_lib_vorbis="old version found"]) +-AC_MSG_RESULT([$xt_lib_vorbis]) +-fi + CPPFLAGS="$xt_save_CPPFLAGS" + LIBS="$xt_save_LIBS" + LDFLAGS="$xt_save_LDFLAGS" +--- a/m4/ogg.m4 ++++ b/m4/ogg.m4 +@@ -29,7 +29,7 @@ XIPH_GCC_WARNING([-I$ogg_prefix/include] + ]) + AC_CACHE_CHECK([for libogg], xt_cv_lib_ogg, + [dnl +-OGG_LIBS="-logg" ++OGG_LIBS="-lvorbisidec" + + # + # check if the installed Ogg is sufficiently new. +@@ -42,7 +42,7 @@ LIBS="$LIBS $OGG_LIBS" + LDFLAGS="$LDFLAGS $OGG_LDFLAGS" + AC_TRY_LINK_FUNC(ogg_sync_init, + [ xt_cv_lib_ogg=ok ], +- [ AC_TRY_LINK([#include <ogg/ogg.h>],, ++ [ AC_TRY_LINK([#include <tremor/ogg.h>],, + [ xt_cv_lib_ogg="pre v1.0, needs updating" ], + [ xt_cv_lib_ogg="not found" ]) + ]) diff --git a/multimedia/icecast/patches/010-fix_libcurl_test_crap.patch b/multimedia/icecast/patches/010-fix_libcurl_test_crap.patch @@ -0,0 +1,11 @@ +--- a/m4/xiph_curl.m4 ++++ b/m4/xiph_curl.m4 +@@ -52,7 +52,7 @@ AC_CHECK_HEADERS([curl/curl.h],, curl_ok + AC_MSG_CHECKING(for libcurl) + if test "$curl_ok" = "yes" + then +- AC_RUN_IFELSE(AC_LANG_SOURCE([ ++ AC_COMPILE_IFELSE(AC_LANG_SOURCE([ + #include <curl/curl.h> + int main() + {