bump ivtv-utils
authorFelix Bechstein <f@ub0r.de>
Sat, 5 Dec 2009 12:24:45 +0000 (5 13:24 +0100)
committerFelix Bechstein <f@ub0r.de>
Sat, 5 Dec 2009 12:24:45 +0000 (5 13:24 +0100)
media-tv/ivtv-utils/Manifest [new file with mode: 0644]
media-tv/ivtv-utils/files/ivtv-utils-1.4.0-2.6.29.patch [new file with mode: 0644]
media-tv/ivtv-utils/ivtv-utils-1.4.0.ebuild [new file with mode: 0644]

diff --git a/media-tv/ivtv-utils/Manifest b/media-tv/ivtv-utils/Manifest
new file mode 100644 (file)
index 0000000..da357f7
--- /dev/null
@@ -0,0 +1,3 @@
+AUX ivtv-utils-1.4.0-2.6.29.patch 5661 RMD160 a6b3317adaa4ec6b813850cdc749683f63c790c2 SHA1 6940e87a2d62c80c913f2bc6e379194580aff583 SHA256 7ed90288808d9ddf225e83b765a142e69e3dbd0cdf71a70e0d42af964d04e633
+DIST ivtv-utils-1.4.0.tar.gz 192733 RMD160 841b46c64dc57e04e603a1a074a55be1d6ea5ea3 SHA1 ea046eec2511ad00395e9de5ba693c069190d2c4 SHA256 702c365da723ce419bd49f25f88eb3a028f0594699f9c9710c713eba022ac911
+EBUILD ivtv-utils-1.4.0.ebuild 3542 RMD160 91f7fe6e32a42fbdcdfb9bd9b56d4e510ebafb0f SHA1 c266fef67778c6e27632a2c6bf6a6efa8b603cf6 SHA256 d30034e9ef0f3886c64f888564751476bae90bd3dd787ac83627eac0e14492e9
diff --git a/media-tv/ivtv-utils/files/ivtv-utils-1.4.0-2.6.29.patch b/media-tv/ivtv-utils/files/ivtv-utils-1.4.0-2.6.29.patch
new file mode 100644 (file)
index 0000000..c7a08ce
--- /dev/null
@@ -0,0 +1,150 @@
+diff -ruN ivtv-utils-1.4.0/test/Makefile ivtv-utils-1.4.0-mod/test/Makefile
+--- ivtv-utils-1.4.0/test/Makefile     2009-05-21 16:25:43.000000000 +0200
++++ ivtv-utils-1.4.0/test/Makefile     2009-07-20 21:13:53.000000000 +0200
+@@ -1,5 +1,4 @@
+ INSTALLDIR = /usr/local/bin
+-HEADERDIR = /usr/include/linux
+ EXES = vbi wss vbi-passthrough vbi-detect ivtv-pcm-tester \
+       mpeg-read-test mpeg-freq-test mpeg-read-sleep-test \
+diff -ruN ivtv-utils-1.4.0/utils/linux/ivtvfb.h ivtv-utils-1.4.0-mod/utils/linux/ivtvfb.h
+--- ivtv-utils-1.4.0/utils/linux/ivtvfb.h      2009-05-21 16:25:43.000000000 +0200
++++ /dev/null  1970-01-01 01:00:00.000000000 +0100
+@@ -1,37 +0,0 @@
+-/*
+-    On Screen Display cx23415 Framebuffer driver
+-
+-    Copyright (C) 2006, 2007  Ian Armstrong <ian@iarmst.demon.co.uk>
+-
+-    This program is free software; you can redistribute it and/or modify
+-    it under the terms of the GNU General Public License as published by
+-    the Free Software Foundation; either version 2 of the License, or
+-    (at your option) any later version.
+-
+-    This program is distributed in the hope that it will be useful,
+-    but WITHOUT ANY WARRANTY; without even the implied warranty of
+-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-    GNU General Public License for more details.
+-
+-    You should have received a copy of the GNU General Public License
+-    along with this program; if not, write to the Free Software
+-    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+- */
+-
+-#ifndef __LINUX_IVTVFB_H__
+-#define __LINUX_IVTVFB_H__
+-
+-#include <linux/types.h>
+-
+-/* Framebuffer external API */
+-
+-struct ivtvfb_dma_frame {
+-      void *source;
+-      unsigned long dest_offset;
+-      int count;
+-};
+-
+-#define IVTVFB_IOC_DMA_FRAME  _IOW('V', BASE_VIDIOC_PRIVATE+0, struct ivtvfb_dma_frame)
+-#define FBIO_WAITFORVSYNC     _IOW('F', 0x20, u_int32_t)
+-
+-#endif
+diff -ruN ivtv-utils-1.4.0/utils/linux/ivtv.h ivtv-utils-1.4.0-mod/utils/linux/ivtv.h
+--- ivtv-utils-1.4.0/utils/linux/ivtv.h        2009-05-21 16:25:43.000000000 +0200
++++ /dev/null  1970-01-01 01:00:00.000000000 +0100
+@@ -1,68 +0,0 @@
+-/*
+-    Public ivtv API header
+-    Copyright (C) 2003-2004  Kevin Thayer <nufan_wfk at yahoo.com>
+-    Copyright (C) 2004-2007  Hans Verkuil <hverkuil@xs4all.nl>
+-
+-    This program is free software; you can redistribute it and/or modify
+-    it under the terms of the GNU General Public License as published by
+-    the Free Software Foundation; either version 2 of the License, or
+-    (at your option) any later version.
+-
+-    This program is distributed in the hope that it will be useful,
+-    but WITHOUT ANY WARRANTY; without even the implied warranty of
+-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-    GNU General Public License for more details.
+-
+-    You should have received a copy of the GNU General Public License
+-    along with this program; if not, write to the Free Software
+-    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+- */
+-
+-#ifndef __LINUX_IVTV_H__
+-#define __LINUX_IVTV_H__
+-
+-#include <linux/types.h>
+-#include <linux/videodev2.h>
+-
+-/* ivtv knows several distinct output modes: MPEG streaming,
+-   YUV streaming, YUV updates through user DMA and the passthrough
+-   mode.
+-
+-   In order to clearly tell the driver that we are in user DMA
+-   YUV mode you need to call IVTV_IOC_DMA_FRAME with y_source == NULL
+-   first (althrough if you don't then the first time
+-   DMA_FRAME is called the mode switch is done automatically).
+-
+-   When you close the file handle the user DMA mode is exited again.
+-
+-   While in one mode, you cannot use another mode (EBUSY is returned).
+-
+-   All this means that if you want to change the YUV interlacing
+-   for the user DMA YUV mode you first need to do call IVTV_IOC_DMA_FRAME
+-   with y_source == NULL before you can set the correct format using
+-   VIDIOC_S_FMT.
+-
+-   Eventually all this should be replaced with a proper V4L2 API,
+-   but for now we have to do it this way. */
+-
+-struct ivtv_dma_frame {
+-      enum v4l2_buf_type type; /* V4L2_BUF_TYPE_VIDEO_OUTPUT */
+-      __u32 pixelformat;       /* 0 == same as destination */
+-      void *y_source;   /* if NULL and type == V4L2_BUF_TYPE_VIDEO_OUTPUT,
+-                                  then just switch to user DMA YUV output mode */
+-      void *uv_source;  /* Unused for RGB pixelformats */
+-      struct v4l2_rect src;
+-      struct v4l2_rect dst;
+-      __u32 src_width;
+-      __u32 src_height;
+-};
+-
+-#define IVTV_IOC_DMA_FRAME  _IOW ('V', BASE_VIDIOC_PRIVATE+0, struct ivtv_dma_frame)
+-
+-/* These are the VBI types as they appear in the embedded VBI private packets. */
+-#define IVTV_SLICED_TYPE_TELETEXT_B     (1)
+-#define IVTV_SLICED_TYPE_CAPTION_525    (4)
+-#define IVTV_SLICED_TYPE_WSS_625        (5)
+-#define IVTV_SLICED_TYPE_VPS            (7)
+-
+-#endif /* _LINUX_IVTV_H */
+diff -ruN ivtv-utils-1.4.0/utils/Makefile ivtv-utils-1.4.0-mod/utils/Makefile
+--- ivtv-utils-1.4.0/utils/Makefile    2009-05-21 16:25:43.000000000 +0200
++++ ivtv-utils-1.4.0/utils/Makefile    2009-07-20 21:14:51.000000000 +0200
+@@ -1,6 +1,5 @@
+ PREFIX = /usr/local
+ BINDIR = $(PREFIX)/bin
+-HDRDIR = /usr/include/linux
+ X86  := $(shell if echo - | $(CC) -E -dM - | egrep -e '__i386__|__x86_64__' >/dev/null; \
+       then echo y; else echo n; fi)
+@@ -14,8 +13,6 @@
+ BIN := $(EXES) ivtv-tune/ivtv-tune cx25840ctl/cx25840ctl
+-HEADERS := linux/ivtv.h linux/ivtvfb.h
+-
+ CFLAGS = -D_GNU_SOURCE -O2 -Wall -g -I.
+ CXXFLAGS = $(CFLAGS)
+@@ -42,8 +39,6 @@
+       $(CC) -lpthread -o $@ $^
+ install: all
+-      install -d $(DESTDIR)/$(HDRDIR)
+-      install -m 0644 $(HEADERS) $(DESTDIR)/$(HDRDIR)
+       install -d $(DESTDIR)/$(BINDIR)
+       install -m 0755 $(BIN) $(DESTDIR)/$(BINDIR)
diff --git a/media-tv/ivtv-utils/ivtv-utils-1.4.0.ebuild b/media-tv/ivtv-utils/ivtv-utils-1.4.0.ebuild
new file mode 100644 (file)
index 0000000..36db929
--- /dev/null
@@ -0,0 +1,116 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-tv/ivtv-utils/ivtv-utils-1.3.0-r1.ebuild,v 1.3 2009/03/03 16:48:58 beandog Exp $
+
+inherit eutils linux-mod
+
+DESCRIPTION="IVTV utilities for Hauppauge PVR PCI cards"
+HOMEPAGE="http://www.ivtvdriver.org"
+SRC_URI="http://dl.ivtvdriver.org/ivtv/archive/1.4.x/${P}.tar.gz"
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="amd64 ppc x86"
+IUSE="perl"
+RDEPEND=">=sys-fs/udev-103"
+DEPEND="app-arch/unzip
+       >=sys-kernel/linux-headers-2.6.29
+       !media-tv/ivtv"
+PDEPEND=">=media-tv/ivtv-firmware-20070217
+       perl? (
+               dev-perl/Video-Frequencies
+               dev-perl/Video-ivtv
+               dev-perl/Config-IniFiles
+               virtual/perl-Getopt-Long
+               dev-perl/perl-tk )"
+
+pkg_setup() {
+
+       MODULE_NAMES="saa717x(extra:${S}/i2c-drivers)"
+       BUILD_TARGETS="all"
+       CONFIG_CHECK="EXPERIMENTAL HAS_IOMEM FW_LOADER I2C I2C_ALGOBIT
+               VIDEO_DEV VIDEO_CAPTURE_DRIVERS VIDEO_V4L1 VIDEO_V4L2 VIDEO_IVTV"
+
+       if ! ( kernel_is ge 2 6 29 ); then
+               eerror "This package is only for the fully in-kernel"
+               eerror "IVTV driver shipping with kernel 2.6.29 and higher"
+               eerror ""
+               eerror "You will need to either:"
+               eerror "a) emerge an older version of this package if your kernel is
+               higher than 2.6.26"
+               eerror "b) emerge a 2.6.29.x or higher kernel"
+               eerror "c) emerge media-tv/ivtv"
+               eerror ""
+               eerror "See http://ivtvdriver.org/ for more information"
+               die "This only works on 2.6.29 and newer kernels"
+       fi
+
+       ewarn ""
+       ewarn "Make sure that your I2C and V4L kernel drivers are loaded as"
+       ewarn "modules, and not compiled into the kernel, or IVTV will not"
+       ewarn "work."
+       ewarn ""
+
+       linux-mod_pkg_setup
+
+       BUILD_PARAMS="KDIR=${KV_DIR}"
+}
+
+src_unpack() {
+       unpack ${A}
+       cd "${S}"
+       epatch "${FILESDIR}"/${P}-2.6.29.patch
+}
+
+src_compile() {
+       emake  || die "failed to build"
+}
+
+src_install() {
+       make DESTDIR="${D}" PREFIX="/usr" install || die "failed to install"
+       use perl && dobin utils/perl/*.pl
+
+       cd "${S}"
+       dodoc README doc/* ChangeLog
+       use perl && dodoc utils/perl/README.ptune
+}
+
+pkg_postinst() {
+       elog ""
+       elog "This version of the IVTV utils supports the following hardware:"
+       elog "Hauppauge WinTV PVR-250"
+       elog "Hauppauge WinTV PVR-350"
+       elog "Hauppauge WinTV PVR-150"
+       elog "Hauppauge WinTV PVR-500"
+       elog "AVerMedia M179"
+       elog "Yuan MPG600/Kuroutoshikou iTVC16-STVLP"
+       elog "Yuan MPG160/Kuroutoshikou iTVC15-STVLP"
+       elog "Yuan PG600/DiamondMM PVR-550 (CX Falcon 2)"
+       elog "Adaptec AVC-2410"
+       elog "Adaptec AVC-2010"
+       elog "Nagase Transgear 5000TV"
+       elog "AOpen VA2000MAX-STN6"
+       elog "Yuan MPG600GR/Kuroutoshikou CX23416GYC-STVLP"
+       elog "I/O Data GV-MVP/RX"
+       elog "I/O Data GV-MVP/RX2E"
+       elog "Gotview PCI DVD (preliminary support only)"
+       elog "Gotview PCI DVD2 Deluxe"
+       elog "Yuan MPC622"
+       elog ""
+       ewarn ""
+       ewarn "IMPORTANT: In case of problems first read this page:"
+       ewarn "http://www.ivtvdriver.org/index.php/Troubleshooting"
+       ewarn ""
+       ewarn "If any of these conditions match your setup, you may want to look at the"
+       ewarn "README in /usr/share/doc/${PF}/"
+       ewarn ""
+       ewarn " - Using MythTV, a PVR-350 and the ivtvfb module"
+       ewarn " - Using the ivtv X driver and the ivtvfb module"
+       ewarn " - You want to manually build ivtv against v4l-dvb"
+       ewarn ""
+       ewarn "Also, the ivtv package comes with lots of documentation regarding setup,"
+       ewarn "proper use and debugging utilities."
+       ewarn "They are also located in /usr/share/doc/${PF}/"
+       ewarn ""
+       ewarn "For more information, see the IVTV driver homepage at:"
+       ewarn "http://www.ivtvdriver.org/"
+}