Fix for bug #109355 from sane-CVS
authorPatrick Kursawe <phosphan@gentoo.org>
Wed, 2 Nov 2005 12:17:45 +0000 (12:17 +0000)
committerPatrick Kursawe <phosphan@gentoo.org>
Wed, 2 Nov 2005 12:17:45 +0000 (12:17 +0000)
Package-Manager: portage-2.0.51.22-r2

media-gfx/sane-backends/ChangeLog
media-gfx/sane-backends/Manifest
media-gfx/sane-backends/files/digest-sane-backends-1.0.16-r4 [new file with mode: 0644]
media-gfx/sane-backends/files/kernel2.6.13usb-problem.patch [new file with mode: 0644]
media-gfx/sane-backends/sane-backends-1.0.16-r4.ebuild [new file with mode: 0644]

index d995dd567daf1caaf2790c778cc7407fc3c40ccf..c0308693184f769a1bbc9585a86bc1460ff51e5e 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for media-gfx/sane-backends
 # Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-gfx/sane-backends/ChangeLog,v 1.81 2005/10/31 13:31:16 phosphan Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/sane-backends/ChangeLog,v 1.82 2005/11/02 12:17:45 phosphan Exp $
+
+*sane-backends-1.0.16-r4 (02 Nov 2005)
+
+  02 Nov 2005; Patrick Kursawe <phosphan@gentoo.org>
+  +files/kernel2.6.13usb-problem.patch, +sane-backends-1.0.16-r4.ebuild:
+  Fix for bug #109355 from sane-CVS
 
 *sane-backends-1.0.16-r3 (31 Oct 2005)
 
index 0ee5db1b0a966980d69497553914d51c390009d8..23b50572723534cf92796622786e48e92fa53562 100644 (file)
@@ -1,15 +1,17 @@
 MD5 a89929370bb0df2da7a794efc7811785 sane-backends-1.0.16-r2.ebuild 4297
 MD5 ebd00143bfe66f76d0d0da95cbc84923 sane-backends-1.0.15.ebuild 2598
+MD5 08e05309f64f09038d7d05dcf3a6b8dd sane-backends-1.0.16-r4.ebuild 4350
 MD5 544c2bc7c5a23b2ae8280b879eac1fbb sane-backends-1.0.15-r2.ebuild 3912
 MD5 4c8053c87e31c8209998ba49c07d60a5 sane-backends-1.0.13-r3.ebuild 1717
 MD5 61d573be9593ba3be2da335586ac7eb2 sane-backends-1.0.16-r1.ebuild 3743
 MD5 54cad14b24bc825f61130e50ea2238f8 sane-backends-1.0.16-r3.ebuild 4300
 MD5 e73a3bf54c049342701898a62ea3b301 sane-backends-1.0.15-r1.ebuild 2674
-MD5 c08c9580f02bb55d91eec66932716362 ChangeLog 14121
+MD5 8dabbf9608ccbe69976509b91db55ee1 ChangeLog 14324
 MD5 b742040acaeddc3798a21739bd59e8aa metadata.xml 224
 MD5 d04dce955a1bf3c5436bc517f2e2070c sane-backends-1.0.15-r3.ebuild 3973
 MD5 365f695ec2c079ac06dd5bbf495f87ce files/linux_sg3_err.h 4894
 MD5 bd0e1ecf807f1e676c4466f12cac215a files/lide25-r1.patch 7949
+MD5 3c9eec3f3f2e73bd6228f946f41c08b8 files/kernel2.6.13usb-problem.patch 1125
 MD5 f49c8e2b591496e87e91ae243d9864d0 files/sane-backend-1.0.15-gt68xx-update67.patch 5682
 MD5 820e842ff4247de984a89752ac129ceb files/libusbscanner-device.patch 582
 MD5 026dc517ef9d45268cd506ec83519a0e files/canoscan-focus.patch 472
@@ -21,5 +23,6 @@ MD5 d16f7594dad0db0c268e143c3676041e files/digest-sane-backends-1.0.15-r3 220
 MD5 d5d1e4a4c8d3839c16329c105f2580d3 files/digest-sane-backends-1.0.16-r1 151
 MD5 d5d1e4a4c8d3839c16329c105f2580d3 files/digest-sane-backends-1.0.16-r2 151
 MD5 d5d1e4a4c8d3839c16329c105f2580d3 files/digest-sane-backends-1.0.16-r3 151
+MD5 d5d1e4a4c8d3839c16329c105f2580d3 files/digest-sane-backends-1.0.16-r4 151
 MD5 0bc1f6b8682b5585c8e87a325f983ade files/lide25.patch 5565
 MD5 83640d1e7caa2aa50c676d40b64866c7 files/digest-sane-backends-1.0.15 157
diff --git a/media-gfx/sane-backends/files/digest-sane-backends-1.0.16-r4 b/media-gfx/sane-backends/files/digest-sane-backends-1.0.16-r4
new file mode 100644 (file)
index 0000000..c28bef8
--- /dev/null
@@ -0,0 +1,2 @@
+MD5 bec9b9262246316b4ebfe2bc7451aa28 sane-backends-1.0.16.tar.gz 3409799
+MD5 321ec37f7229dda4dc86b06301cfad8e sane-1.0.16-brother-driver.diff.bz2 8224
diff --git a/media-gfx/sane-backends/files/kernel2.6.13usb-problem.patch b/media-gfx/sane-backends/files/kernel2.6.13usb-problem.patch
new file mode 100644 (file)
index 0000000..633cc36
--- /dev/null
@@ -0,0 +1,32 @@
+diff -u -r1.42 -r1.43
+--- sanei/sanei_usb.c  9 Aug 2005 16:28:38 -0000       1.42
++++ sanei/sanei_usb.c  23 Sep 2005 12:52:35 -0000      1.43
+@@ -1,6 +1,6 @@
+ /* sane - Scanner Access Now Easy.
+    Copyright (C) 2003 Rene Rebe (sanei_read_int,sanei_set_timeout)
+-   Copyright (C) 2001 - 2003 Henning Meier-Geinitz
++   Copyright (C) 2001 - 2005 Henning Meier-Geinitz
+    Copyright (C) 2001 Frank Zago (sanei_usb_control_msg)
+    Copyright (C) 2005 Paul Smedley <paul@smedley.info> (OS/2 usbcalls)
+    This file is part of the SANE package.
+@@ -760,12 +760,15 @@
+           }
+         else if (errno == EBUSY)
+           {
+-            DBG (1, "Maybe the kernel scanner driver claims the "
+-                 "scanner's interface?\n");
+-            status = SANE_STATUS_DEVICE_BUSY;
++            DBG (3, "Maybe the kernel scanner driver or usblp claims the "
++                 "interface? Ignoring this error...\n");
++            status = SANE_STATUS_GOOD;
++          }
++        if (status != SANE_STATUS_GOOD)
++          {
++            usb_close (devices[devcount].libusb_handle);
++            return status;
+           }
+-        usb_close (devices[devcount].libusb_handle);
+-        return status;
+       }
+ 
+       /* Claim the interface */
diff --git a/media-gfx/sane-backends/sane-backends-1.0.16-r4.ebuild b/media-gfx/sane-backends/sane-backends-1.0.16-r4.ebuild
new file mode 100644 (file)
index 0000000..fb3837a
--- /dev/null
@@ -0,0 +1,147 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/sane-backends/sane-backends-1.0.16-r4.ebuild,v 1.1 2005/11/02 12:17:45 phosphan Exp $
+
+inherit eutils flag-o-matic
+
+IUSE="usb gphoto2 ipv6 v4l"
+
+DESCRIPTION="Scanner Access Now Easy - Backends"
+HOMEPAGE="http://www.sane-project.org/"
+
+RDEPEND=">=media-libs/jpeg-6b
+       amd64? ( sys-libs/libieee1284 )
+       x86? ( sys-libs/libieee1284 )
+       usb? ( dev-libs/libusb )
+       gphoto2? ( media-libs/libgphoto2 )
+       v4l? ( sys-kernel/linux-headers )"
+
+DEPEND="${DEPEND}
+       >=sys-apps/sed-4"
+
+BROTHERMFCDRIVER="sane-${PV}-brother-driver.diff"
+
+SRC_URI="ftp://ftp.sane-project.org/pub/sane/${P}/${P}.tar.gz
+       ftp://ftp.sane-project.org/pub/sane/old-versions/${P}/${P}.tar.gz
+       usb? ( mirror://gentoo/${BROTHERMFCDRIVER}.bz2
+               http://dev.gentoo.org/~phosphan/${BROTHERMFCDRIVER}.bz2 )"
+SLOT="0"
+LICENSE="GPL-2 public-domain"
+KEYWORDS="~x86 ~sparc ~ppc ~ppc64 ~amd64 ~alpha ~ia64"
+
+# To enable specific backends, define SANE_BACKENDS with the backends you want
+# in those:
+#   abaton agfafocus apple artec as6e avision bh canon canon630u coolscan
+#   coolscan2 dc25 dmc epson fujitsu genesys gt68xx hp leo matsushita microtek
+#   microtek2 mustek mustek_usb nec pie plustek plustek_pp ricoh s9036
+#   sceptre sharp sp15c st400 tamarack test teco1 teco2 teco3 umax umax_pp
+#   umax1220u artec_eplus48u ma1509 ibm hp5400 u12 sm3840 snapscan niash dc210 dc240
+#   pint net
+#
+# Note that some backends has specific dependencies which make the compilation
+# fail because not supported on your current platform.
+pkg_setup() {
+       enewgroup scanner
+
+       IEEE1284_BACKENDS="canon_pp hpsj5s mustek_pp"
+
+       if [[ "${SANE_BACKENDS}" != "" ]]; then
+               use gphoto2 && SANE_BACKENDS="${SANE_BACKENDS} gphoto2"
+               use v4l && SANE_BACKENDS="${SANE_BACKENDS} v4l"
+               use usb && SANE_BACKENDS="${SANE_BACKENDS} sm3600"
+       fi
+
+       if ! use x86 && ! use amd64; then
+               tmp="${SANE_BACKENDS}"
+               for backend in ${IEEE1284_BACKENDS}; do
+                       if [[ "${tmp/$backend/}" != "${SANE_BACKENDS}" ]]; then
+                               ewarn "You selected a backend which is disabled because it's not usable in your arch."
+                       fi
+               done
+       fi
+}
+
+src_unpack() {
+       if [ -z "${SANE_BACKENDS}" ]; then
+               einfo "You can use the variable SANE_BACKENDS to pick backends"
+               einfo "instead of building all of them."
+       fi
+       unpack ${A}
+       if use usb; then
+               unpack ${BROTHERMFCDRIVER}.bz2
+       fi
+
+       cd ${S}
+
+       #only generate the .ps and not the fonts
+       sed -i -e 's:$(DVIPS) sane.dvi -o sane.ps:$(DVIPS) sane.dvi -M1 -o sane.ps:' \
+               doc/Makefile.in
+       #compile errors when using NDEBUG otherwise
+       sed -i -e 's:function_name:__FUNCTION__:g' backend/artec_eplus48u.c \
+               || die "function_name fix failed"
+
+       if use usb; then
+               epatch ${WORKDIR}/${BROTHERMFCDRIVER}
+               sed -e 's/bh canon/bh brother canon/' -i configure || \
+                       die "could not add 'brother' to backend list"
+               epatch ${FILESDIR}/libusbscanner-device-r1.patch
+               :
+       fi
+       epatch ${FILESDIR}/lide25-r1.patch
+       epatch ${FILESDIR}/kernel2.6.13usb-problem.patch
+
+       # trouble with -ffast-math, see bug #103118
+       for file in backend/matsushita.c backend/sceptre.c backend/leo.c \
+               backend/sp15c.h backend/teco1.c backend/teco2.c backend/teco3.c \
+               backend/sp15c-scsi.h backend/dc210.c include/sane/sanei_backend.h; do
+                       sed -e 's/__unused__/sane_unused__/g' -i ${file} || \
+                               die "Could not apply __unused__-fix for ${file}"
+       done
+
+}
+
+src_compile() {
+       if use amd64; then
+               filter-flags -fstack-protector
+       fi
+       SANEI_JPEG="sanei_jpeg.o" SANEI_JPEG_LO="sanei_jpeg.lo" \
+       BACKENDS="${SANE_BACKENDS}" \
+       econf \
+               $(use_enable usb libusb) \
+               $(use_with gphoto2) \
+               $(use_enable ipv6) \
+               ${myconf} || die "econf failed"
+
+       emake || die
+
+       if use usb; then
+               cd tools/hotplug
+               grep -v '^$' libsane.usermap > libsane.usermap.new
+               mv libsane.usermap.new libsane.usermap
+       fi
+}
+
+src_install () {
+       einstall docdir=${D}/usr/share/doc/${PF}
+       keepdir /var/lib/lock/sane
+       fowners root:scanner /var/lib/lock/sane
+       fperms g+w /var/lib/lock/sane
+       if use usb; then
+               cd tools/hotplug
+               insinto /etc/hotplug/usb
+               exeinto /etc/hotplug/usb
+               doins libsane.usermap
+               doexe libusbscanner
+               newdoc README README.hotplug
+               cd ../..
+       fi
+
+       docinto backend
+       cd backend
+       dodoc GUIDE *.README *.BUGS *.CHANGES *.FAQ *.TODO
+
+       echo "SANE_CONFIG_DIR=/etc/sane.d" > 30sane
+       insinto /etc/env.d
+       doins 30sane
+
+}