You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

94 lines
2.7 KiB

  1. #
  2. # Copyright (C) 2006-2011 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. include $(TOPDIR)/rules.mk
  8. PKG_NAME:=icecast
  9. PKG_VERSION:=2.4.0
  10. PKG_RELEASE:=1
  11. PKG_MAINTAINER:=André Gaul <gaul@web-yard.de>
  12. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
  13. PKG_SOURCE_URL:=http://downloads.us.xiph.org/releases/icecast/
  14. PKG_MD5SUM:=bb00bfc0d6d2dde24974641085602b81
  15. PKG_FIXUP:=autoreconf
  16. include $(INCLUDE_DIR)/package.mk
  17. TREMOR_BUILD_DIR=$(PKG_BUILD_DIR)/libvorbisidec-1.2.0-dave
  18. TREMOR_DIR=$(TREMOR_BUILD_DIR)/ipkg-install/usr
  19. define Package/icecast
  20. SECTION:=multimedia
  21. CATEGORY:=Multimedia
  22. DEPENDS:=+libcurl +libxml2 +libxslt +libogg +libopenssl
  23. TITLE:=A streaming media server for Ogg/Vorbis and MP3 audio streams
  24. URL:=http://www.icecast.org/
  25. endef
  26. define Package/icecast/description
  27. Icecast is a streaming media server which currently supports Ogg
  28. Vorbis and MP3 audio streams. It can be used to create an Internet
  29. radio station or a privately running jukebox and many things in
  30. between. It is very versatile in that new formats can be added
  31. relatively easily and supports open standards for commuincation and
  32. interaction.
  33. endef
  34. define Build/Prepare
  35. $(Build/Prepare/Default)
  36. $(SUBMAKE) -f libvorbisidec.mk \
  37. BUILD_DIR="$(PKG_BUILD_DIR)" \
  38. V=99 \
  39. prepare
  40. endef
  41. define Build/Configure
  42. $(MAKE) -f libvorbisidec.mk \
  43. BUILD_DIR="$(PKG_BUILD_DIR)" \
  44. V=99 \
  45. compile
  46. $(SED) 's,-lvorbis ,$(TREMOR_DIR)/lib/libvorbisidec.a -logg ,g' $(PKG_BUILD_DIR)/configure
  47. $(call Build/Configure/Default, \
  48. --enable-yp \
  49. --with-curl="yes" \
  50. --with-curl-config="$(STAGING_DIR)/usr/bin/curl-config" \
  51. --with-ogg="$(STAGING_DIR)/usr" \
  52. --with-speex="no" \
  53. --with-theora="no" \
  54. --with-vorbis="$(TREMOR_DIR)" \
  55. --with-xslt-config="$(STAGING_DIR)/usr/bin/xslt-config" \
  56. , \
  57. CPPFLAGS="-I$(TREMOR_DIR)/include -I$(STAGING_DIR)/usr/include/libxml2 $(TARGET_CPPFLAGS)" \
  58. )
  59. endef
  60. define Build/Compile
  61. $(MAKE) -C $(PKG_BUILD_DIR) \
  62. DESTDIR="$(PKG_INSTALL_DIR)" \
  63. INCLUDES="-I$(PKG_BUILD_DIR)/src -I$(TREMOR_DIR)/include" \
  64. all install
  65. endef
  66. define Package/icecast/install
  67. $(INSTALL_DIR) $(1)/etc
  68. $(CP) $(PKG_INSTALL_DIR)/etc/icecast.xml $(1)/etc/
  69. $(INSTALL_DIR) $(1)/etc/init.d
  70. $(INSTALL_BIN) ./files/icecast.init $(1)/etc/init.d/icecast
  71. $(INSTALL_DIR) $(1)/usr/bin
  72. $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/icecast $(1)/usr/bin/
  73. $(INSTALL_DIR) $(1)/usr/share/icecast
  74. $(CP) $(PKG_INSTALL_DIR)/usr/share/icecast/admin $(1)/usr/share/icecast/
  75. $(CP) $(PKG_INSTALL_DIR)/usr/share/icecast/web $(1)/usr/share/icecast/
  76. endef
  77. define Package/icecast/conffiles
  78. /etc/icecast.xml
  79. endef
  80. $(eval $(call BuildPackage,icecast))