summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGilles Dartiguelongue <eva@gentoo.org>2009-09-16 22:18:38 +0000
committerGilles Dartiguelongue <eva@gentoo.org>2009-09-16 22:18:38 +0000
commit3bbcf499201e8a9956957db8a73ac2f2455a274a (patch)
tree07406aa2c440fe31df38d78d0c6f49cbcde64eb3 /media-video
parentVersion bump, fixes several regressions identified in the 1.6.0 release. Clos... (diff)
downloadgentoo-2-3bbcf499201e8a9956957db8a73ac2f2455a274a.tar.gz
gentoo-2-3bbcf499201e8a9956957db8a73ac2f2455a274a.tar.bz2
gentoo-2-3bbcf499201e8a9956957db8a73ac2f2455a274a.zip
Version bump. Add patch for 2.6.30 compatibility, closes: #277046. Add die calls where needed, make compilation respect a few variables.
(Portage version: 2.2_rc40/cvs/Linux x86_64)
Diffstat (limited to 'media-video')
-rw-r--r--media-video/qc-usb/ChangeLog11
-rw-r--r--media-video/qc-usb/files/qc-usb-0.6.6-kcompat-2.6.30.patch70
-rw-r--r--media-video/qc-usb/qc-usb-0.6.6-r3.ebuild73
3 files changed, 152 insertions, 2 deletions
diff --git a/media-video/qc-usb/ChangeLog b/media-video/qc-usb/ChangeLog
index 8856f09943ef..1609b654a8fc 100644
--- a/media-video/qc-usb/ChangeLog
+++ b/media-video/qc-usb/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for media-video/qc-usb
-# Copyright 2000-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/qc-usb/ChangeLog,v 1.32 2009/02/15 19:22:53 eva Exp $
+# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/media-video/qc-usb/ChangeLog,v 1.33 2009/09/16 22:18:38 eva Exp $
+
+*qc-usb-0.6.6-r3 (16 Sep 2009)
+
+ 16 Sep 2009; Gilles Dartiguelongue <eva@gentoo.org>
+ +qc-usb-0.6.6-r3.ebuild, +files/qc-usb-0.6.6-kcompat-2.6.30.patch:
+ Version bump. Add patch for 2.6.30 compatibility, closes: #277046. Add die
+ calls where needed, make compilation respect a few variables.
*qc-usb-0.6.6-r2 (15 Feb 2009)
diff --git a/media-video/qc-usb/files/qc-usb-0.6.6-kcompat-2.6.30.patch b/media-video/qc-usb/files/qc-usb-0.6.6-kcompat-2.6.30.patch
new file mode 100644
index 000000000000..cdb8c1ae6736
--- /dev/null
+++ b/media-video/qc-usb/files/qc-usb-0.6.6-kcompat-2.6.30.patch
@@ -0,0 +1,70 @@
+--- qc-driver.c.old 2009-09-13 11:34:38.048300181 -0400
++++ qc-driver.c 2009-09-13 11:38:10.329258334 -0400
+@@ -1000,7 +1000,9 @@
+ PRINTK(KERN_WARNING,"Could not register procfs file entry");
+ return -ENXIO;
+ }
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30)
+ entry->owner = THIS_MODULE;
++#endif
+ entry->data = qc;
+ entry->read_proc = qc_proc_read;
+ entry->write_proc = qc_proc_write;
+@@ -1038,7 +1040,9 @@
+ return -ENXIO;
+ }
+ }
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30)
+ qc_proc_entry->owner = THIS_MODULE;
++#endif
+ return 0;
+ }
+ /* }}} */
+@@ -2311,7 +2315,11 @@
+ /* }}} */
+ /* {{{ [fold] qc_v4l_open(struct video_device *dev, int flags) */
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,30)
++static int qc_v4l_open(struct file *file)
++#else
+ static int qc_v4l_open(struct inode *inode, struct file *file)
++#endif
+ #else
+ static int qc_v4l_open(struct video_device *dev, int flags)
+ #endif
+@@ -2383,7 +2391,11 @@
+ /* }}} */
+ /* {{{ [fold] qc_v4l_close(struct video_device *dev) */
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,30)
++static int qc_v4l_close(struct file *file)
++#else
+ static int qc_v4l_close(struct inode *inode, struct file *file)
++#endif
+ #else
+ static void qc_v4l_close(struct video_device *dev)
+ #endif
+@@ -2528,7 +2540,11 @@
+ /* }}} */
+ /* {{{ [fold] qc_v4l_ioctl(struct video_device *dev, unsigned int cmd, void *arg) */
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,30)
++static long qc_v4l_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
++#else
+ static int qc_v4l_ioctl(struct inode *inode, struct file *file, unsigned int cmd, unsigned long arg)
++#endif
+ #else
+ static int qc_v4l_ioctl(struct video_device *dev, unsigned int cmd, void *argp)
+ #endif
+@@ -3025,7 +3041,11 @@
+
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
+ static void qc_v4l_release(struct video_device *vfd) { }
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,30)
++static struct v4l2_file_operations qc_v4l_fops = {
++#else
+ static struct file_operations qc_v4l_fops = {
++#endif
+ owner: THIS_MODULE,
+ open: qc_v4l_open,
+ release: qc_v4l_close,
diff --git a/media-video/qc-usb/qc-usb-0.6.6-r3.ebuild b/media-video/qc-usb/qc-usb-0.6.6-r3.ebuild
new file mode 100644
index 000000000000..7666ac9fc21c
--- /dev/null
+++ b/media-video/qc-usb/qc-usb-0.6.6-r3.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-video/qc-usb/qc-usb-0.6.6-r3.ebuild,v 1.1 2009/09/16 22:18:38 eva Exp $
+
+inherit linux-mod eutils multilib
+
+DESCRIPTION="Logitech USB Quickcam Express Linux Driver Modules"
+HOMEPAGE="http://qce-ga.sourceforge.net/"
+SRC_URI="mirror://sourceforge/qce-ga/${P}.tar.gz"
+
+IUSE=""
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+
+CONFIG_CHECK="USB VIDEO_DEV VIDEO_V4L1_COMPAT"
+MODULE_NAMES="quickcam(usb:)"
+BUILD_TARGETS="all"
+
+RDEPEND="!media-video/qc-usb-messenger"
+DEPEND="${RDEPEND}"
+
+pkg_setup() {
+ ABI=${KERNEL_ABI}
+ linux-mod_pkg_setup
+ BUILD_PARAMS="LINUX_DIR=${KV_DIR} OUTPUT_DIR=${KV_OUT_DIR}"
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ convert_to_m "${S}"/Makefile
+ epatch "${FILESDIR}/${P}-koutput.patch"
+
+ # Do not strip symbols, respect LDFLAGS and a few other variables
+ sed -e 's/\(gcc.*\)$/$(CC) $(CFLAGS) $(LDFLAGS) qcset.c -o qcset -lm/' \
+ -i Makefile || die "sed failed"
+
+ # Fix compilation with 2.6.24
+ epatch "${FILESDIR}/${P}-kcompat-2.6.24.patch"
+
+ if kernel_is ge 2 6 26; then
+ # Fix compilation with 2.6.26, bug #232390
+ epatch "${FILESDIR}/${P}-kcompat-2.6.26.patch"
+ fi
+
+ if kernel_is ge 2 6 27; then
+ # Fix compilation with 2.6.27
+ epatch "${FILESDIR}/${P}-kcompat-2.6.27.patch"
+ fi
+
+ # Fix compilation with 2.6.28, bug #254564
+ epatch "${FILESDIR}/${P}-kcompat-2.6.28.patch"
+
+ # Fix compilation with 2.6.30, bug #277046
+ epatch "${FILESDIR}/${P}-kcompat-2.6.30.patch"
+}
+
+src_compile() {
+ emake qcset || die "emake failed"
+ linux-mod_src_compile
+}
+
+src_install() {
+ linux-mod_src_install
+
+ dobin qcset || die "dobin failed"
+ dodoc README* APPLICATIONS CREDITS TODO FAQ || die "dodoc failed"
+
+ insinto /usr/share/doc/${PF}
+ doins quickcam.sh debug.sh freeshm.sh || die "doins failed"
+}