diff options
author | Juergen Lock <nox@FreeBSD.org> | 2011-03-26 19:20:47 +0000 |
---|---|---|
committer | Juergen Lock <nox@FreeBSD.org> | 2011-03-26 19:20:47 +0000 |
commit | 32777e78a4d6211eb29c25c27c96fbdd6bc11c54 (patch) | |
tree | 01d3655c95ac704947161f269ae4d6c58b3fa3ee /multimedia/vdr-plugin-streamdev | |
parent | 396d80a6a16224480543c5a23139b64f461fac37 (diff) | |
download | ports-32777e78a4d6211eb29c25c27c96fbdd6bc11c54.tar.gz ports-32777e78a4d6211eb29c25c27c96fbdd6bc11c54.zip |
Notes
Diffstat (limited to 'multimedia/vdr-plugin-streamdev')
12 files changed, 212 insertions, 0 deletions
diff --git a/multimedia/vdr-plugin-streamdev/Makefile b/multimedia/vdr-plugin-streamdev/Makefile new file mode 100644 index 000000000000..eefd2547a4c2 --- /dev/null +++ b/multimedia/vdr-plugin-streamdev/Makefile @@ -0,0 +1,53 @@ +# New ports collection makefile for: vdr-plugin-streamdev +# Date created: Wed Apr 14 18:11:42 CEST 2010 +# Whom: Juergen Lock <nox@freebsd.org> +# +# $FreeBSD$ +# + +PORTNAME= vdr-plugin-streamdev +PORTVERSION= 0.5.1 +PORTREVISION= 2 +CATEGORIES= multimedia +MASTER_SITES= http://projects.vdr-developer.org/attachments/download/497/:release \ + LOCAL:snapshot +MASTER_SITE_SUBDIR= nox/:snapshot +DISTNAME= ${PORTNAME:S/-plugin-/-/}-${DISTVERSIONPREFIX}${DISTVERSION}${DISTVERSIONSUFFIX} +DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:release + +MAINTAINER= nox@FreeBSD.org +COMMENT= Video Disk Recorder - stream device plugin + +RUN_DEPENDS+= bash:${PORTSDIR}/shells/bash + +EXTRACT_SUFX= .tgz +PORTDOCS= COPYING README +HAVE_CONFIGURE= yes +MAKE_JOBS_SAFE= yes +WRKSRC= ${WRKDIR}/${PLUGIN}-${PORTVERSION} +VDR_PLUGIN_MAKEFILES= ${WRKSRC}/client/Makefile \ + ${WRKSRC}/server/Makefile + +.include "${.CURDIR}/../vdr/Makefile.plugins" + +post-patch: post-patch-plugin + @${LN} -s ../locale ${WRKSRC} + @${REINPLACE_CMD} '1s-^#!/bin/sh-#!${LOCALBASE}/bin/bash-' \ + ${WRKSRC}/${PLUGIN}-server/externremux.sh + +post-install: post-install-pluginlocales + @${MKDIR} ${PREFIX}/etc/vdr/plugins/${PLUGIN}-server + @${INSTALL_SCRIPT} ${WRKSRC}/${PLUGIN}-server/externremux.sh ${PREFIX}/etc/vdr/plugins/${PLUGIN}-server/externremux.sh.sample + @${INSTALL_DATA} ${WRKSRC}/${PLUGIN}-server/streamdevhosts.conf ${PREFIX}/etc/vdr/plugins/${PLUGIN}-server/streamdevhosts.conf.sample + @if [ ! -f ${PREFIX}/etc/vdr/plugins/${PLUGIN}-server/externremux.sh ]; then \ + ${INSTALL_SCRIPT} -o ${VDR_USER} -g ${VDR_GROUP} ${WRKSRC}/${PLUGIN}-server/externremux.sh ${PREFIX}/etc/vdr/plugins/${PLUGIN}-server; \ + fi + @if [ ! -f ${PREFIX}/etc/vdr/plugins/${PLUGIN}-server/streamdevhosts.conf ]; then \ + ${INSTALL_DATA} -o ${VDR_USER} -g ${VDR_GROUP} ${WRKSRC}/${PLUGIN}-server/streamdevhosts.conf ${PREFIX}/etc/vdr/plugins/${PLUGIN}-server; \ + fi +.if !defined(NOPORTDOCS) + ${MKDIR} ${DOCSDIR} + (cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${DOCSDIR}) +.endif + +.include <bsd.port.mk> diff --git a/multimedia/vdr-plugin-streamdev/distinfo b/multimedia/vdr-plugin-streamdev/distinfo new file mode 100644 index 000000000000..74a7fbebc020 --- /dev/null +++ b/multimedia/vdr-plugin-streamdev/distinfo @@ -0,0 +1,2 @@ +SHA256 (vdr/vdr-streamdev-0.5.1.tgz) = 254d1648251cd7265a905e6b7580c8a9f992a3225b4e4b4087582cb9c56e6763 +SIZE (vdr/vdr-streamdev-0.5.1.tgz) = 178999 diff --git a/multimedia/vdr-plugin-streamdev/files/patch-Makefile b/multimedia/vdr-plugin-streamdev/files/patch-Makefile new file mode 100644 index 000000000000..bc7db13a2d09 --- /dev/null +++ b/multimedia/vdr-plugin-streamdev/files/patch-Makefile @@ -0,0 +1,10 @@ +--- Makefile.orig ++++ Makefile +@@ -106,3 +106,7 @@ clean: + $(MAKE) -C ./remux clean + $(MAKE) -C ./client clean + $(MAKE) -C ./server clean ++ ++install: ++ ${INSTALL_PROGRAM} $(LIBDIR)/libvdr-$(PLUGIN)-client.so.$(APIVERSION) $(PREFIX)/lib/vdr/libvdr-$(PLUGIN)-client.so.$(APIVERSION) ++ ${INSTALL_PROGRAM} $(LIBDIR)/libvdr-$(PLUGIN)-server.so.$(APIVERSION) $(PREFIX)/lib/vdr/libvdr-$(PLUGIN)-server.so.$(APIVERSION) diff --git a/multimedia/vdr-plugin-streamdev/files/patch-client-Makefile b/multimedia/vdr-plugin-streamdev/files/patch-client-Makefile new file mode 100644 index 000000000000..4e9baa3d57df --- /dev/null +++ b/multimedia/vdr-plugin-streamdev/files/patch-client-Makefile @@ -0,0 +1,14 @@ +--- client/Makefile.orig ++++ client/Makefile +@@ -70,7 +70,11 @@ libvdr-$(PLUGIN).so: $(CLIENTOBJS) $(COM + + %.so: + $(CXX) $(CXXFLAGS) -shared $^ -o $@ ++ifdef FREEBSD ++ @cp -f $@ $(LIBDIR)/$@.$(APIVERSION) ++else + @cp --remove-destination $@ $(LIBDIR)/$@.$(APIVERSION) ++endif + + dist: clean + @-rm -rf $(TMPDIR)/$(ARCHIVE) diff --git a/multimedia/vdr-plugin-streamdev/files/patch-client-setup.c b/multimedia/vdr-plugin-streamdev/files/patch-client-setup.c new file mode 100644 index 000000000000..a7a9fbd496ed --- /dev/null +++ b/multimedia/vdr-plugin-streamdev/files/patch-client-setup.c @@ -0,0 +1,10 @@ +--- client/setup.c.orig ++++ client/setup.c +@@ -2,6 +2,7 @@ + * $Id: setup.c,v 1.2 2005/02/08 15:34:38 lordjaxom Exp $ + */ + ++#include <stdint.h> + #include <vdr/menuitems.h> + + #include "client/setup.h" diff --git a/multimedia/vdr-plugin-streamdev/files/patch-server-Makefile b/multimedia/vdr-plugin-streamdev/files/patch-server-Makefile new file mode 100644 index 000000000000..548423276816 --- /dev/null +++ b/multimedia/vdr-plugin-streamdev/files/patch-server-Makefile @@ -0,0 +1,14 @@ +--- server/Makefile.orig ++++ server/Makefile +@@ -76,7 +76,11 @@ libvdr-$(PLUGIN).so: $(SERVEROBJS) $(COM + + %.so: + $(CXX) $(CXXFLAGS) -shared $^ -o $@ ++ifdef FREEBSD ++ @cp -f $@ $(LIBDIR)/$@.$(APIVERSION) ++else + @cp --remove-destination $@ $(LIBDIR)/$@.$(APIVERSION) ++endif + + clean: + @-rm -f $(COMMONOBJS) $(SERVEROBJS) $(DEPFILE) $(PODIR)/*.mo $(PODIR)/*.pot *.so *.tgz core* *~ diff --git a/multimedia/vdr-plugin-streamdev/files/patch-server-componentIGMP.c b/multimedia/vdr-plugin-streamdev/files/patch-server-componentIGMP.c new file mode 100644 index 000000000000..74c7aa0ee5ca --- /dev/null +++ b/multimedia/vdr-plugin-streamdev/files/patch-server-componentIGMP.c @@ -0,0 +1,28 @@ +--- server/componentIGMP.c.orig ++++ server/componentIGMP.c +@@ -1,9 +1,24 @@ + /* + * $Id: componentIGMP.c,v 1.2 2009/07/03 21:44:19 schmirl Exp $ + */ ++#include <sys/types.h> ++#include <netinet/in.h> + #include <netinet/ip.h> + #include <netinet/igmp.h> +- ++ ++#ifndef IGMP_MEMBERSHIP_QUERY ++#define IGMP_MEMBERSHIP_QUERY IGMP_HOST_MEMBERSHIP_QUERY ++#endif ++#ifndef IGMP_V1_MEMBERSHIP_REPORT ++#define IGMP_V1_MEMBERSHIP_REPORT IGMP_v1_HOST_MEMBERSHIP_REPORT ++#endif ++#ifndef IGMP_V2_MEMBERSHIP_REPORT ++#define IGMP_V2_MEMBERSHIP_REPORT IGMP_v2_HOST_MEMBERSHIP_REPORT ++#endif ++#ifndef IGMP_V2_LEAVE_GROUP ++#define IGMP_V2_LEAVE_GROUP IGMP_HOST_LEAVE_MESSAGE ++#endif ++ + #include "server/componentIGMP.h" + #include "server/connectionIGMP.h" + #include "server/setup.h" diff --git a/multimedia/vdr-plugin-streamdev/files/patch-server-livestreamer.c b/multimedia/vdr-plugin-streamdev/files/patch-server-livestreamer.c new file mode 100644 index 000000000000..68e5f7aaff9d --- /dev/null +++ b/multimedia/vdr-plugin-streamdev/files/patch-server-livestreamer.c @@ -0,0 +1,15 @@ +--- server/livestreamer.c.orig ++++ server/livestreamer.c +@@ -1,7 +1,12 @@ + #include <assert.h> + ++#ifdef __FreeBSD__ ++#include <vdr/libsi/section.h> ++#include <vdr/libsi/descriptor.h> ++#else + #include <libsi/section.h> + #include <libsi/descriptor.h> ++#endif + + #include <vdr/ringbuffer.h> + diff --git a/multimedia/vdr-plugin-streamdev/files/patch-server-recplayer.c b/multimedia/vdr-plugin-streamdev/files/patch-server-recplayer.c new file mode 100644 index 000000000000..2096711a9aec --- /dev/null +++ b/multimedia/vdr-plugin-streamdev/files/patch-server-recplayer.c @@ -0,0 +1,13 @@ +--- server/recplayer.c.orig ++++ server/recplayer.c +@@ -196,8 +196,10 @@ unsigned long RecPlayer::getBlock(unsign + fseek(file, filePosition, SEEK_SET); + if (fread(&buffer[got], getFromThisSegment, 1, file) != 1) return 0; // umm, big problem. + ++#ifdef __linux__ + // Tell linux not to bother keeping the data in the FS cache + posix_fadvise(file->_fileno, filePosition, getFromThisSegment, POSIX_FADV_DONTNEED); ++#endif + + got += getFromThisSegment; + currentPosition += getFromThisSegment; diff --git a/multimedia/vdr-plugin-streamdev/files/patch-server-setup.c b/multimedia/vdr-plugin-streamdev/files/patch-server-setup.c new file mode 100644 index 000000000000..96c9a77bd016 --- /dev/null +++ b/multimedia/vdr-plugin-streamdev/files/patch-server-setup.c @@ -0,0 +1,10 @@ +--- server/setup.c.orig ++++ server/setup.c +@@ -2,6 +2,7 @@ + * $Id: setup.c,v 1.2 2005/05/09 20:22:29 lordjaxom Exp $ + */ + ++#include <stdint.h> + #include <vdr/menuitems.h> + + #include "server/setup.h" diff --git a/multimedia/vdr-plugin-streamdev/pkg-descr b/multimedia/vdr-plugin-streamdev/pkg-descr new file mode 100644 index 000000000000..9e35fd13b697 --- /dev/null +++ b/multimedia/vdr-plugin-streamdev/pkg-descr @@ -0,0 +1,20 @@ +http://www.linuxtv.org/vdrwiki/index.php/Streamdev-plugin + +This PlugIn is a VDR implementation of the VTP (Video Transfer Protocol) +Version 0.0.3 (see file PROTOCOL) and a basic HTTP Streaming Protocol. + +It consists of a server and a client part, but both parts are compiled together +with the PlugIn source, but appear as separate PlugIns to VDR. + +The client part acts as a full Input Device, so it can be used in conjunction +with a DXR3-Card, XINE, SoftDevice or others to act as a working VDR +installation without any DVB-Hardware including EPG-Handling. + +The server part acts as a Receiver-Device and works transparently in the +background within your running VDR. It can serve multiple clients and it can +distribute multiple input streams (i.e. from multiple DVB-cards) to multiple +clients using the native VTP protocol (for VDR-clients), or using the HTTP +protocol supporting clients such as XINE, MPlayer and so on. With XMMS or +WinAMP, you can also listen to radio channels over a HTTP connection. + +WWW: http://streamdev.vdr-developer.org/ diff --git a/multimedia/vdr-plugin-streamdev/pkg-plist b/multimedia/vdr-plugin-streamdev/pkg-plist new file mode 100644 index 000000000000..8b987bfb59c1 --- /dev/null +++ b/multimedia/vdr-plugin-streamdev/pkg-plist @@ -0,0 +1,23 @@ +lib/vdr/libvdr-streamdev-client.so.1.7.17 +lib/vdr/libvdr-streamdev-server.so.1.7.17 +@unexec if cmp -s %D/etc/vdr/plugins/streamdev-server/externremux.sh.sample %D/etc/vdr/plugins/streamdev-server/externremux.sh; then rm -f %D/etc/vdr/plugins/streamdev-server/externremux.sh; fi +etc/vdr/plugins/streamdev-server/externremux.sh.sample +@exec if [ ! -f %D/etc/vdr/plugins/streamdev-server/externremux.sh ] ; then cp -p %D/%F %B/externremux.sh; fi +@unexec if cmp -s %D/etc/vdr/plugins/streamdev-server/streamdevhosts.conf.sample %D/etc/vdr/plugins/streamdev-server/streamdevhosts.conf; then rm -f %D/etc/vdr/plugins/streamdev-server/streamdevhosts.conf; fi +etc/vdr/plugins/streamdev-server/streamdevhosts.conf.sample +@exec if [ ! -f %D/etc/vdr/plugins/streamdev-server/streamdevhosts.conf ] ; then cp -p %D/%F %B/streamdevhosts.conf; fi +@dirrmtry etc/vdr/plugins/streamdev-server +%%NLS%%share/locale/de_DE/LC_MESSAGES/vdr-streamdev-client.mo +%%NLS%%share/locale/de_DE/LC_MESSAGES/vdr-streamdev-server.mo +%%NLS%%share/locale/fi_FI/LC_MESSAGES/vdr-streamdev-client.mo +%%NLS%%share/locale/fi_FI/LC_MESSAGES/vdr-streamdev-server.mo +%%NLS%%share/locale/fr_FR/LC_MESSAGES/vdr-streamdev-client.mo +%%NLS%%share/locale/fr_FR/LC_MESSAGES/vdr-streamdev-server.mo +%%NLS%%share/locale/it_IT/LC_MESSAGES/vdr-streamdev-client.mo +%%NLS%%share/locale/it_IT/LC_MESSAGES/vdr-streamdev-server.mo +%%NLS%%share/locale/lt_LT/LC_MESSAGES/vdr-streamdev-client.mo +%%NLS%%share/locale/lt_LT/LC_MESSAGES/vdr-streamdev-server.mo +%%NLS%%share/locale/ru_RU/LC_MESSAGES/vdr-streamdev-client.mo +%%NLS%%share/locale/ru_RU/LC_MESSAGES/vdr-streamdev-server.mo +%%NLS%%share/locale/sk_SK/LC_MESSAGES/vdr-streamdev-client.mo +%%NLS%%share/locale/sk_SK/LC_MESSAGES/vdr-streamdev-server.mo |