diff --git a/libs/libshout/Makefile b/libs/libshout/Makefile index aeff8531d..d491e32b8 100644 --- a/libs/libshout/Makefile +++ b/libs/libshout/Makefile @@ -1,6 +1,4 @@ # -# Copyright (C) 2008-2015 OpenWrt.org -# # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. # @@ -8,17 +6,19 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libshout -PKG_VERSION:=2.3.1 -PKG_RELEASE:=3 +PKG_VERSION:=2.4.1 +PKG_RELEASE:=1 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://downloads.us.xiph.org/releases/libshout/ -PKG_MD5SUM:=11765b2592e7ea623ccd93d3f8df172c +PKG_MD5SUM:=89cebf8cb0197f639cde69c95177fe47 +PKG_HASH:=f3acb8dec26f2dbf6df778888e0e429a4ce9378a9d461b02a7ccbf2991bbf24d PKG_LICENSE:=LGPL-2.0+ PKG_LICENSE_FILES:=COPYING -PKG_MAINTAINER:=Nicolas Thill +PKG_MAINTAINER:=Nicolas Thill , \ + Ted Hess PKG_FIXUP:=autoreconf PKG_INSTALL:=1 @@ -29,24 +29,31 @@ define Package/libshout/default SECTION:=libs CATEGORY:=Libraries TITLE:=Shoutcast client library - URL:=http://www.icecast.org/download.php - DEPENDS:= +libvorbis +libvorbisidec +libpthread + URL:=http://www.icecast.org + DEPENDS:= +libvorbisidec +libpthread endef define Package/libshout $(call Package/libshout/default) - TITLE+= (no speex & theora) - VARIANT:=nospeex + TITLE+= (no theora) + DEPENDS+= +libopenssl + VARIANT:=notheora +endef + +define Package/libshout-nossl + $(call Package/libshout/default) + TITLE+= (no ssl/theora) + VARIANT:=nossl endef define Package/libshout-full $(call Package/libshout/default) - TITLE+= (all codecs) - DEPENDS+= +libspeex +libtheora + TITLE+=(full) + DEPENDS+= +libtheora +libopenssl VARIANT:=full endef -define Package/libshout/description +define Package/libshout/description/default libshout allows applications to easily communicate and broadcast to an Icecast streaming media server. It handles the socket connections, metadata communication, and data streaming for the calling application, @@ -54,19 +61,36 @@ define Package/libshout/description details. endef -Package/libshout-full/description=Package/libshout/description +define Package/libshout/description + $(call Package/libshout/description/default) + . + This package does not have Theora support. +endef + +define Package/libshout-nossl/description + $(call Package/libshout/description/default) + . + This package does not have OpenSSL or Theora support. +endef + +Package/libshout-full/description=$(Package/libshout/description/default) CONFIGURE_ARGS += \ --enable-shared \ - --enable-static + --enable-static \ + --disable-speex -ifeq ($(BUILD_VARIANT),nospeex) - CONFIGURE_ARGS += --disable-theora --disable-speex +ifeq ($(BUILD_VARIANT),notheora) + CONFIGURE_ARGS += --disable-theora +endif + +ifeq ($(BUILD_VARIANT),nossl) + CONFIGURE_ARGS += --disable-theora --with-openssl="no" endif CONFIGURE_VARS += \ VORBIS_CFLAGS="-I$(STAGING_DIR)/usr/include/tremor/" \ - VORBIS_LIBS="$(TARGET_LDFLAGS) -lvorbis -lvorbisidec" \ + VORBIS_LIBS="$(TARGET_LDFLAGS) -lvorbisidec" \ TARGET_CFLAGS += $(FPIC) -Wl,-rpath-link="$(STAGING_DIR)/usr/lib" @@ -86,7 +110,10 @@ define Package/libshout/install $(INSTALL_DIR) $(1)/usr/lib $(CP) $(PKG_INSTALL_DIR)/usr/lib/libshout.so.* $(1)/usr/lib/ endef + Package/libshout-full/install=$(Package/libshout/install) +Package/libshout-nossl/install=$(Package/libshout/install) $(eval $(call BuildPackage,libshout)) +$(eval $(call BuildPackage,libshout-nossl)) $(eval $(call BuildPackage,libshout-full)) diff --git a/libs/libshout/patches/100-add_with-openssl_option.patch b/libs/libshout/patches/100-add_with-openssl_option.patch new file mode 100644 index 000000000..7319e294a --- /dev/null +++ b/libs/libshout/patches/100-add_with-openssl_option.patch @@ -0,0 +1,27 @@ +--- a/m4/xiph_openssl.m4 ++++ b/m4/xiph_openssl.m4 +@@ -29,14 +29,16 @@ else + fi + fi + +-# Now try linking to openssl +-xt_save_CFLAGS="$CFLAGS" +-xt_save_LIBS="$LIBS" +-CFLAGS="$CFLAGS $OPENSSL_CFLAGS" +-LIBS="$OPENSSL_LIBS $LIBS" +-AC_TRY_LINK([#include ], [void *a = SSL_new], [openssl_ok='yes']) +-CFLAGS="$xt_save_CFLAGS" +-LIBS="$xt_save_LIBS" ++if test "x$openssl_prefix" != "xno"; then ++ # Now try linking to openssl ++ xt_save_CFLAGS="$CFLAGS" ++ xt_save_LIBS="$LIBS" ++ CFLAGS="$CFLAGS $OPENSSL_CFLAGS" ++ LIBS="$OPENSSL_LIBS $LIBS" ++ AC_TRY_LINK([#include ], [void *a = SSL_new], [openssl_ok='yes']) ++ CFLAGS="$xt_save_CFLAGS" ++ LIBS="$xt_save_LIBS" ++fi + + if test "$openssl_ok" = "yes"; then + AC_DEFINE(HAVE_OPENSSL, 1, [Define if you have libopenssl.]) diff --git a/libs/libshout/patches/120-vorbis-c.patch b/libs/libshout/patches/120-vorbis-c.patch index a9e41f93a..be7ca7a1f 100644 --- a/libs/libshout/patches/120-vorbis-c.patch +++ b/libs/libshout/patches/120-vorbis-c.patch @@ -1,5 +1,5 @@ ---- a/src/vorbis.c -+++ b/src/vorbis.c +--- a/src/codec_vorbis.c ++++ b/src/codec_vorbis.c @@ -28,7 +28,7 @@ #endif #include @@ -8,4 +8,4 @@ +#include #include "shout_private.h" - #include "shout_ogg.h" + #include "format_ogg.h" diff --git a/libs/libshout/patches/140-no_example_doc_win32.patch b/libs/libshout/patches/140-no_example_doc_win32.patch index 9e8b5a357..4f0932808 100644 --- a/libs/libshout/patches/140-no_example_doc_win32.patch +++ b/libs/libshout/patches/140-no_example_doc_win32.patch @@ -1,17 +1,19 @@ ---- a/Makefile.in -+++ b/Makefile.in -@@ -288,12 +288,12 @@ top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ +--- a/Makefile.am ++++ b/Makefile.am +@@ -3,14 +3,14 @@ AUTOMAKE_OPTIONS = 1.6 foreign ACLOCAL_AMFLAGS = -I m4 --SUBDIRS = include src examples debian doc win32 -+SUBDIRS = include src debian + +-SUBDIRS = include src examples doc win32 ++SUBDIRS = include src + EXTRA_DIST = INSTALL m4/shout.m4 m4/acx_pthread.m4 \ m4/ogg.m4 m4/vorbis.m4 m4/xiph_compiler.m4 m4/xiph_net.m4 \ - m4/xiph_types.m4 + m4/xiph_types.m4 libshout.ckport + docdir = $(datadir)/doc/$(PACKAGE) -doc_DATA = COPYING NEWS README examples/example.c examples/nonblocking.c -+doc_DATA = COPYING NEWS README ++doc_DATA = COPYING README + m4datadir = $(datadir)/aclocal m4data_DATA = m4/shout.m4 - @HAVE_PKGCONFIG_TRUE@pkgconfigdir = $(libdir)/pkgconfig