sane-backends: upgraded package to upstream

Upgraded media-gfx/sane-backends to version 1.0.23-r1 on amd64, arm, x86

BUG=chromium:239086
TEST=emerge-lumpy, emerge-daisy, run "sane-find-scanner"
and "scanimage" with attached USB scanner.

Change-Id: Ic06c19da7bc093ffa1f7f71375c5e72a1fa0649b
Reviewed-on: https://gerrit.chromium.org/gerrit/50470
Reviewed-by: Paul Stewart <pstew@chromium.org>
Tested-by: Paul Stewart <pstew@chromium.org>
Commit-Queue: Paul Stewart <pstew@chromium.org>
diff --git a/media-gfx/sane-backends/Manifest b/media-gfx/sane-backends/Manifest
new file mode 100644
index 0000000..5a67813
--- /dev/null
+++ b/media-gfx/sane-backends/Manifest
@@ -0,0 +1,3 @@
+DIST sane-backends-1.0.23.tar.gz.1 1792000 RMD160 2f7d1e80e7cdc0491a62344fd6697dd818a5dc30 SHA1 239e25e075ad8e0e6b024813923b3edfd0156550 SHA256 551d7e0c89d18ca438bfce4f1c242b59485195c493c5f935a3b11e724ee39537
+DIST sane-backends-1.0.23.tar.gz.2 1792000 RMD160 ba660f8afcd9a512b144ea0a59b4fc3f7718c76e SHA1 e66b6e8a819bf713bb32f0b5b371dee5ed382012 SHA256 b487df0d8dc921803577ee34ceaa676a4a3b6715cd4d9a229b43d6a501a1baab
+DIST sane-backends-1.0.23.tar.gz.3 1758350 RMD160 8b54818ed57c9261888274941681f28e1279c1e0 SHA1 bde700cb020877a5807e40683c744bee4abc4f51 SHA256 af91e84cb72dc2b1fa4c7eaba948ae6ab8e2ab353f79805a21de4ac52de5b81a
diff --git a/media-gfx/sane-backends/files/kodakaio-fixes.patch b/media-gfx/sane-backends/files/kodakaio-fixes.patch
new file mode 100644
index 0000000..b4c7b85
--- /dev/null
+++ b/media-gfx/sane-backends/files/kodakaio-fixes.patch
@@ -0,0 +1,30 @@
+--- backend/kodakaio.c	2013-03-15 08:24:26.000000000 +0100
++++ backend/kodakaio.c.new	2013-03-15 08:30:06.000000000 +0100
+@@ -2129,6 +2129,9 @@
+ }
+ 
+ #if HAVE_CUPS
++
++const char * 	_httpResolveURI (const char *uri, char *resolved_uri, size_t resolved_size, int options, int(*cb)(void *context), void *context);
++
+ /* ProcessDevice is called by cupsGetDevices to process each discovered device in turn */
+ void 
+ ProcessDevice(const char *device_class, const char *device_id, const char *device_info, const char *device_make_and_model, const char *device_uri, const char *device_location, void *user_data)
+@@ -2172,7 +2175,7 @@
+ options |= _HTTP_RESOLVE_FQDN ?  not sure if or when required
+ options = 0 seems to work */
+ 	DBG(5, "using _httpResolveURI\n");
+-	resolved = _httpResolveURI(device_uri, uribuffer, sizeof(uribuffer), 0, NULL, NULL);
++	resolved = _httpResolveURI(device_uri, uribuffer, sizeof(uribuffer), 0, 0, NULL);
+ 
+ 	/* extract the IP address */
+ 	if(extract_from_id(resolved, "socket://", ':', ip_addr, sizeof(ip_addr)) != 0) {
+@@ -2197,7 +2200,7 @@
+ 
+ 	reply = cupsGetDevices(CUPS_HTTP_DEFAULT, CUPS_TIMEOUT_DEFAULT, 
+ 		"dnssd", CUPS_EXCLUDE_NONE, ProcessDevice, Dummy);
+-	if(reply != IPP_OK) printf("Failed cupsGetDevices\n");
++	if(reply != IPP_OK) DBG(1,"Failed cupsGetDevices\n");
+ 
+ 	return 0;
+ }
diff --git a/media-gfx/sane-backends/files/niash_array_index.patch b/media-gfx/sane-backends/files/niash_array_index.patch
new file mode 100644
index 0000000..236c459
--- /dev/null
+++ b/media-gfx/sane-backends/files/niash_array_index.patch
@@ -0,0 +1,140 @@
+--- backend/niash.c	2010-12-02 00:49:58.000000000 +0100
++++ backend/niash.c.new	2011-09-21 20:09:07.000000000 +0200
+@@ -82,14 +82,7 @@
+   optThreshold,
+ 
+ 
+-  optLast,
+-/* put temporarily disabled options here after optLast */
+-
+-  optGroupMisc,
+-  optLamp,
+-
+-  optCalibrate,
+-  optGamma                      /* analog gamma = single number */
++  optLast
+ } EOptionIndex;
+ 
+ 
+@@ -685,17 +678,6 @@
+           pDesc->size = 0;
+           break;
+ 
+-        case optGamma:
+-          pDesc->name = SANE_NAME_ANALOG_GAMMA;
+-          pDesc->title = SANE_TITLE_ANALOG_GAMMA;
+-          pDesc->desc = SANE_DESC_ANALOG_GAMMA;
+-          pDesc->type = SANE_TYPE_FIXED;
+-          pDesc->constraint_type = SANE_CONSTRAINT_RANGE;
+-          pDesc->constraint.range = &rangeGamma;
+-          pDesc->cap = SANE_CAP_SOFT_SELECT | SANE_CAP_SOFT_DETECT;
+-          pVal->w = startUpGamma;
+-          break;
+-
+         case optGammaTable:
+           pDesc->name = SANE_NAME_GAMMA_VECTOR;
+           pDesc->title = SANE_TITLE_GAMMA_VECTOR;
+@@ -707,31 +689,6 @@
+           pVal->wa = s->aGammaTable;
+           break;
+ 
+-        case optGroupMisc:
+-          pDesc->title = SANE_I18N ("Miscellaneous");
+-          pDesc->type = SANE_TYPE_GROUP;
+-          pDesc->size = 0;
+-          break;
+-
+-        case optLamp:
+-          pDesc->name = "lamp";
+-          pDesc->title = SANE_I18N ("Lamp status");
+-          pDesc->desc = SANE_I18N ("Switches the lamp on or off.");
+-          pDesc->type = SANE_TYPE_BOOL;
+-          pDesc->cap = SANE_CAP_SOFT_SELECT | SANE_CAP_SOFT_DETECT;
+-          /* switch the lamp on when starting for first the time */
+-          pVal->w = SANE_TRUE;
+-          break;
+-
+-        case optCalibrate:
+-          pDesc->name = "calibrate";
+-          pDesc->title = SANE_I18N ("Calibrate");
+-          pDesc->desc = SANE_I18N ("Calibrates for black and white level.");
+-          pDesc->type = SANE_TYPE_BUTTON;
+-          pDesc->cap = SANE_CAP_SOFT_SELECT;
+-          pDesc->size = 0;
+-          break;
+-
+         case optGroupMode:
+           pDesc->title = SANE_I18N ("Scan Mode");
+           pDesc->desc = "";
+@@ -1007,7 +964,6 @@
+           /* Get options of type SANE_Word */
+         case optCount:
+         case optDPI:
+-        case optGamma:
+         case optTLX:
+         case optTLY:
+         case optBRX:
+@@ -1031,17 +987,6 @@
+           strcpy ((char *) pVal, modeList[s->aValues[optMode].w]);
+           break;
+ 
+-          /* Get options of type SANE_Bool */
+-        case optLamp:
+-          GetLamp (&s->HWParams, &fLampIsOn);
+-          *(SANE_Bool *) pVal = fLampIsOn;
+-          break;
+-
+-        case optCalibrate:
+-          /*  although this option has nothing to read,
+-             it's added here to avoid a warning when running scanimage --help */
+-          break;
+-
+         default:
+           DBG (DBG_MSG, "SANE_ACTION_GET_VALUE: Invalid option (%d)\n", n);
+         }
+@@ -1061,7 +1006,6 @@
+         case optCount:
+           return SANE_STATUS_INVAL;
+ 
+-        case optGamma:
+         case optThreshold:
+         case optDPI:
+ 
+@@ -1089,15 +1033,7 @@
+           DBG (DBG_MSG,
+                "sane_control_option: SANE_ACTION_SET_VALUE %d = %d\n", n,
+                (int) s->aValues[n].w);
+-          if (n == optGamma)
+-            {
+-              if (!fSame && optLast > optGammaTable)
+-                {
+-                  info |= SANE_INFO_RELOAD_OPTIONS;
+-                }
+-              _SetScalarGamma (s->aGammaTable, s->aValues[n].w);
+-            }
+-          break;
++         break;
+ 
+         case optGammaTable:
+           DBG (DBG_MSG, "Writing gamma table\n");
+@@ -1158,20 +1094,6 @@
+           break;
+ 
+ 
+-
+-        case optLamp:
+-          fVal = *(SANE_Bool *) pVal;
+-          DBG (DBG_MSG, "lamp %s\n", fVal ? "on" : "off");
+-          if (fVal)
+-            _WarmUpLamp (s, WARMUP_INSESSION);
+-          else
+-            SetLamp (&s->HWParams, SANE_FALSE);
+-          break;
+-
+-        case optCalibrate:
+-/*       SimpleCalib(&s->HWParams); */
+-          break;
+-
+         default:
+           DBG (DBG_ERR, "SANE_ACTION_SET_VALUE: Invalid option (%d)\n", n);
+         }
diff --git a/media-gfx/sane-backends/files/sane-backends-1.0.23-saned_pidfile_location.patch b/media-gfx/sane-backends/files/sane-backends-1.0.23-saned_pidfile_location.patch
new file mode 100644
index 0000000..c682961
--- /dev/null
+++ b/media-gfx/sane-backends/files/sane-backends-1.0.23-saned_pidfile_location.patch
@@ -0,0 +1,11 @@
+--- sane-backends-1.0.23/frontend/saned.c
++++ sane-backends-1.0.23/frontend/saned.c
+@@ -221,7 +221,7 @@
+ int numchildren;
+ 
+ #define SANED_CONFIG_FILE "saned.conf"
+-#define SANED_PID_FILE    "/var/run/saned.pid"
++#define SANED_PID_FILE    "/var/run/saned/saned.pid"
+ 
+ #define SANED_SERVICE_NAME   "sane-port"
+ #define SANED_SERVICE_PORT   6566
diff --git a/media-gfx/sane-backends/files/saned b/media-gfx/sane-backends/files/saned
new file mode 100644
index 0000000..4b3e228
--- /dev/null
+++ b/media-gfx/sane-backends/files/saned
@@ -0,0 +1,10 @@
+service sane-port
+{
+  socket_type = stream
+  server = /usr/sbin/saned
+  protocol = tcp
+  user = saned
+  group = scanner
+  wait = no
+  disable = yes
+}
diff --git a/media-gfx/sane-backends/files/saned.confd b/media-gfx/sane-backends/files/saned.confd
new file mode 100644
index 0000000..adb1eab
--- /dev/null
+++ b/media-gfx/sane-backends/files/saned.confd
@@ -0,0 +1,2 @@
+# The user saned should drop its privileges to after startup
+#SANED_USER=""
diff --git a/media-gfx/sane-backends/files/saned.initd b/media-gfx/sane-backends/files/saned.initd
new file mode 100644
index 0000000..26498dd
--- /dev/null
+++ b/media-gfx/sane-backends/files/saned.initd
@@ -0,0 +1,12 @@
+#!/sbin/runscript
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/sane-backends/files/saned.initd,v 1.1 2013/03/15 08:15:52 phosphan Exp $
+
+pidfile="/var/run/saned/saned.pid"
+command="/usr/sbin/saned"
+command_args="-a ${SANED_USER:-root}"
+
+start_pre() {
+	checkpath -d -o ${SANED_USER:-root} ${pidfile%/*}
+}
diff --git a/media-gfx/sane-backends/sane-backends-1.0.23-r1.ebuild b/media-gfx/sane-backends/sane-backends-1.0.23-r1.ebuild
new file mode 100644
index 0000000..a9a9eee
--- /dev/null
+++ b/media-gfx/sane-backends/sane-backends-1.0.23-r1.ebuild
@@ -0,0 +1,295 @@
+# Copyright 1999-2013 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.23-r1.ebuild,v 1.3 2013/05/08 19:35:31 vapier Exp $
+
+EAPI="4"
+ 
+inherit eutils flag-o-matic multilib udev user toolchain-funcs
+
+# gphoto and v4l are handled by their usual USE flags.
+# The pint backend was disabled because I could not get it to compile.
+IUSE_SANE_BACKENDS="
+	abaton
+	agfafocus
+	apple
+	artec
+	artec_eplus48u
+	as6e
+	avision
+	bh
+	canon
+	canon630u
+	canon_dr
+	canon_pp
+	cardscan
+	coolscan
+	coolscan2
+	coolscan3
+	dc210
+	dc240
+	dc25
+	dell1600n_net
+	dmc
+	epjitsu
+	epson
+	epson2
+	fujitsu
+	genesys
+	gt68xx
+	hp
+	hp3500
+	hp3900
+	hp4200
+	hp5400
+	hp5590
+	hpljm1005
+	hpsj5s
+	hs2p
+	ibm
+	kodak
+	kodakaio
+	kvs1025
+	kvs20xx
+	kvs40xx
+	leo
+	lexmark
+	ma1509
+	magicolor
+	matsushita
+	microtek
+	microtek2
+	mustek
+	mustek_pp
+	mustek_usb
+	mustek_usb2
+	nec
+	net
+	niash
+	p5
+	pie
+	pixma
+	plustek
+	plustek_pp
+	pnm
+	qcam
+	ricoh
+	rts8891
+	s9036
+	sceptre
+	sharp
+	sm3600
+	sm3840
+	snapscan
+	sp15c
+	st400
+	stv680
+	tamarack
+	teco1
+	teco2
+	teco3
+	test
+	u12
+	umax
+	umax1220u
+	umax_pp
+	xerox_mfp"
+
+IUSE="avahi doc gphoto2 ipv6 threads usb v4l xinetd snmp"
+
+for backend in ${IUSE_SANE_BACKENDS}; do
+	if [ ${backend} = pnm ]; then
+		IUSE="${IUSE} -sane_backends_pnm"
+	elif [ ${backend} = mustek_usb2 -o ${backend} = kvs40xx ]; then
+		IUSE="${IUSE} sane_backends_${backend}"
+	else
+		IUSE="${IUSE} +sane_backends_${backend}"
+	fi
+done
+
+REQUIRED_USE="
+	sane_backends_mustek_usb2? ( threads )
+	sane_backends_kvs40xx? ( threads )
+"
+
+DESCRIPTION="Scanner Access Now Easy - Backends"
+HOMEPAGE="http://www.sane-project.org/"
+
+RDEPEND="
+	sane_backends_dc210? ( virtual/jpeg )
+	sane_backends_dc240? ( virtual/jpeg )
+	sane_backends_dell1600n_net? ( virtual/jpeg
+									media-libs/tiff )
+	avahi? ( >=net-dns/avahi-0.6.24 )
+	sane_backends_canon_pp? ( sys-libs/libieee1284 )
+	sane_backends_hpsj5s? ( sys-libs/libieee1284 )
+	sane_backends_mustek_pp? ( sys-libs/libieee1284 )
+	usb? ( virtual/libusb:0 )
+	gphoto2? (
+		media-libs/libgphoto2
+		virtual/jpeg
+	)
+	v4l? ( media-libs/libv4l )
+	xinetd? ( sys-apps/xinetd )
+	snmp? ( net-analyzer/net-snmp )
+"
+
+DEPEND="${RDEPEND}
+	v4l? ( sys-kernel/linux-headers )
+	doc? (
+		virtual/latex-base
+		dev-texlive/texlive-latexextra
+	)
+	>=sys-apps/sed-4
+
+	virtual/pkgconfig"
+
+# We now use new syntax construct (SUBSYSTEMS!="usb|usb_device)
+RDEPEND="${RDEPEND}
+	!<sys-fs/udev-114"
+
+SRC_URI="https://alioth.debian.org/frs/download.php/3752/sane-backends-1.0.23.tar.gz.1
+	https://alioth.debian.org/frs/download.php/3753/sane-backends-1.0.23.tar.gz.2
+	https://alioth.debian.org/frs/download.php/3754/sane-backends-1.0.23.tar.gz.3"
+SLOT="0"
+LICENSE="GPL-2 public-domain"
+KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux"
+
+pkg_setup() {
+	enewgroup scanner
+	enewuser saned -1 -1 -1 scanner
+}
+
+src_unpack() {
+	rm -f "${P}.tar.gz"
+	for file in ${A}; do
+		cat "${DISTDIR}/${file}" >> "${P}.tar.gz"
+	done
+	tar xzf "${P}.tar.gz"
+}
+
+src_prepare() {
+	cat >> backend/dll.conf.in <<-EOF
+	# Add support for the HP-specific backend.  Needs net-print/hplip installed.
+	hpaio
+	# Add support for the Epson-specific backend.  Needs media-gfx/iscan installed.
+	epkowa
+	EOF
+	epatch "${FILESDIR}"/niash_array_index.patch \
+		"${FILESDIR}"/${PN}-1.0.23-saned_pidfile_location.patch \
+		"${FILESDIR}"/kodakaio-fixes.patch
+}
+
+src_configure() {
+	append-flags -fno-strict-aliasing
+
+	# the blank is intended - an empty string would result in building ALL backends.
+	local BACKENDS=" "
+
+	use gphoto2 && BACKENDS="gphoto2"
+	use v4l && BACKENDS="${BACKENDS} v4l"
+	for backend in ${IUSE_SANE_BACKENDS}; do
+		if use "sane_backends_${backend}" && [ ${backend} != pnm ]; then
+			BACKENDS="${BACKENDS} ${backend}"
+		fi
+	done
+
+	local myconf="$(use_enable usb libusb) $(use_with snmp)"
+	# you can only enable this backend, not disable it...
+	if use sane_backends_pnm; then
+		myconf="${myconf} --enable-pnm-backend"
+	fi
+	if ! use doc; then
+		myconf="${myconf} --disable-latex"
+	fi
+	if use sane_backends_mustek_pp; then
+		myconf="${myconf} --enable-parport-directio"
+	fi
+	if ! ( use sane_backends_canon_pp || use sane_backends_hpsj5s || use sane_backends_mustek_pp ); then
+		myconf="${myconf} sane_cv_use_libieee1284=no"
+	fi
+	# if LINGUAS is set, just use the listed and supported localizations.
+	if [ "${LINGUAS-NoLocalesSet}" != NoLocalesSet ]; then
+		echo > po/LINGUAS
+		for lang in ${LINGUAS}; do
+			if [ -a po/${lang}.po ]; then
+				echo ${lang} >> po/LINGUAS
+			fi
+		done
+	fi
+	SANEI_JPEG="sanei_jpeg.o" SANEI_JPEG_LO="sanei_jpeg.lo" \
+	BACKENDS="${BACKENDS}" econf \
+		$(use_with gphoto2) \
+		$(use_enable avahi) \
+		$(use_enable ipv6) \
+		$(use_enable threads pthread) \
+		${myconf}
+}
+
+src_compile() {
+	emake VARTEXFONTS="${T}/fonts"
+
+	if use usb; then
+		cd tools/hotplug
+		grep -v '^$' libsane.usermap > libsane.usermap.new
+		mv libsane.usermap.new libsane.usermap
+	fi
+
+	if tc-is-cross-compiler; then
+		# The build system sucks and doesn't handle this properly.
+		# https://alioth.debian.org/tracker/index.php?func=detail&aid=314236&group_id=30186&atid=410366
+		tc-export_build_env BUILD_CC
+		cd "${S}"/tools
+		${BUILD_CC} ${BUILD_CPPFLAGS} ${BUILD_CFLAGS} -I. -I../include \
+			../sanei/sanei_config.c ../sanei/sanei_constrain_value.c \
+			../sanei/sanei_init_debug.c sane-desc.c -o sane-desc || die
+		local dirs=( hal hotplug hotplug-ng udev )
+		local targets=(
+			hal/libsane.fdi
+			hotplug/libsane.usermap
+			hotplug-ng/libsane.db
+			udev/libsane.rules
+		)
+		mkdir -p "${dirs[@]}" || die
+		emake "${targets[@]}"
+	fi
+}
+
+src_install () {
+	emake INSTALL_LOCKPATH="" DESTDIR="${D}" install \
+		docdir="${EPREFIX}"/usr/share/doc/${PF}
+	keepdir /var/lib/lock/sane
+	fowners root:scanner /var/lib/lock/sane
+	fperms g+w /var/lib/lock/sane
+	dodir /etc/env.d
+
+	if use usb; then
+		insinto /etc/hotplug/usb
+		exeinto /etc/hotplug/usb
+		doins tools/hotplug/libsane.usermap
+		doexe tools/hotplug/libusbscanner
+		newdoc tools/hotplug/README README.hotplug
+	fi
+	udev_newrules tools/udev/libsane.rules 41-libsane.rules
+	insinto "/usr/share/pkgconfig"
+	doins tools/sane-backends.pc
+
+	dodoc NEWS AUTHORS ChangeLog* PROBLEMS README README.linux
+	find "${ED}" -name "*.la" | while read file; do rm "${file}"; done
+	if use xinetd; then
+		insinto /etc/xinetd.d
+		doins "${FILESDIR}"/saned
+	fi
+
+	newinitd "${FILESDIR}"/saned.initd saned
+	newconfd "${FILESDIR}"/saned.confd saned
+}
+
+pkg_postinst() {
+	if use xinetd; then
+		elog "If you want remote clients to connect, edit"
+		elog "/etc/sane.d/saned.conf and /etc/hosts.allow"
+	fi
+
+	elog "If you are using an USB scanner, add all users who want"
+	elog "to access your scanner to the \"scanner\" group."
+}
diff --git a/metadata/md5-cache/media-gfx/sane-backends-1.0.23-r1 b/metadata/md5-cache/media-gfx/sane-backends-1.0.23-r1
new file mode 100644
index 0000000..65c7e85
--- /dev/null
+++ b/metadata/md5-cache/media-gfx/sane-backends-1.0.23-r1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst prepare setup unpack
+DEPEND=sane_backends_dc210? ( virtual/jpeg ) sane_backends_dc240? ( virtual/jpeg ) sane_backends_dell1600n_net? ( virtual/jpeg media-libs/tiff ) avahi? ( >=net-dns/avahi-0.6.24 ) sane_backends_canon_pp? ( sys-libs/libieee1284 ) sane_backends_hpsj5s? ( sys-libs/libieee1284 ) sane_backends_mustek_pp? ( sys-libs/libieee1284 ) usb? ( virtual/libusb:0 ) gphoto2? ( media-libs/libgphoto2 virtual/jpeg ) v4l? ( media-libs/libv4l ) xinetd? ( sys-apps/xinetd ) snmp? ( net-analyzer/net-snmp ) v4l? ( sys-kernel/linux-headers ) doc? ( virtual/latex-base dev-texlive/texlive-latexextra ) >=sys-apps/sed-4 virtual/pkgconfig virtual/pkgconfig
+DESCRIPTION=Scanner Access Now Easy - Backends
+EAPI=4
+HOMEPAGE=http://www.sane-project.org/
+IUSE=avahi doc gphoto2 ipv6 threads usb v4l xinetd snmp +sane_backends_abaton +sane_backends_agfafocus +sane_backends_apple +sane_backends_artec +sane_backends_artec_eplus48u +sane_backends_as6e +sane_backends_avision +sane_backends_bh +sane_backends_canon +sane_backends_canon630u +sane_backends_canon_dr +sane_backends_canon_pp +sane_backends_cardscan +sane_backends_coolscan +sane_backends_coolscan2 +sane_backends_coolscan3 +sane_backends_dc210 +sane_backends_dc240 +sane_backends_dc25 +sane_backends_dell1600n_net +sane_backends_dmc +sane_backends_epjitsu +sane_backends_epson +sane_backends_epson2 +sane_backends_fujitsu +sane_backends_genesys +sane_backends_gt68xx +sane_backends_hp +sane_backends_hp3500 +sane_backends_hp3900 +sane_backends_hp4200 +sane_backends_hp5400 +sane_backends_hp5590 +sane_backends_hpljm1005 +sane_backends_hpsj5s +sane_backends_hs2p +sane_backends_ibm +sane_backends_kodak +sane_backends_kodakaio +sane_backends_kvs1025 +sane_backends_kvs20xx sane_backends_kvs40xx +sane_backends_leo +sane_backends_lexmark +sane_backends_ma1509 +sane_backends_magicolor +sane_backends_matsushita +sane_backends_microtek +sane_backends_microtek2 +sane_backends_mustek +sane_backends_mustek_pp +sane_backends_mustek_usb sane_backends_mustek_usb2 +sane_backends_nec +sane_backends_net +sane_backends_niash +sane_backends_p5 +sane_backends_pie +sane_backends_pixma +sane_backends_plustek +sane_backends_plustek_pp -sane_backends_pnm +sane_backends_qcam +sane_backends_ricoh +sane_backends_rts8891 +sane_backends_s9036 +sane_backends_sceptre +sane_backends_sharp +sane_backends_sm3600 +sane_backends_sm3840 +sane_backends_snapscan +sane_backends_sp15c +sane_backends_st400 +sane_backends_stv680 +sane_backends_tamarack +sane_backends_teco1 +sane_backends_teco2 +sane_backends_teco3 +sane_backends_test +sane_backends_u12 +sane_backends_umax +sane_backends_umax1220u +sane_backends_umax_pp +sane_backends_xerox_mfp
+KEYWORDS=~alpha amd64 arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux
+LICENSE=GPL-2 public-domain
+RDEPEND=sane_backends_dc210? ( virtual/jpeg ) sane_backends_dc240? ( virtual/jpeg ) sane_backends_dell1600n_net? ( virtual/jpeg media-libs/tiff ) avahi? ( >=net-dns/avahi-0.6.24 ) sane_backends_canon_pp? ( sys-libs/libieee1284 ) sane_backends_hpsj5s? ( sys-libs/libieee1284 ) sane_backends_mustek_pp? ( sys-libs/libieee1284 ) usb? ( virtual/libusb:0 ) gphoto2? ( media-libs/libgphoto2 virtual/jpeg ) v4l? ( media-libs/libv4l ) xinetd? ( sys-apps/xinetd ) snmp? ( net-analyzer/net-snmp ) !<sys-fs/udev-114
+REQUIRED_USE=sane_backends_mustek_usb2? ( threads ) sane_backends_kvs40xx? ( threads )
+SLOT=0
+SRC_URI=https://alioth.debian.org/frs/download.php/3752/sane-backends-1.0.23.tar.gz.1 https://alioth.debian.org/frs/download.php/3753/sane-backends-1.0.23.tar.gz.2 https://alioth.debian.org/frs/download.php/3754/sane-backends-1.0.23.tar.gz.3
+_eclasses_=eutils	d40dc948067bd3db1c8ebf7d51897313	flag-o-matic	01a8b1eb019305bc4b4a8bd0b04e4cd8	multilib	ded93e450747134a079e647d888aa80b	toolchain-funcs	69a2016af67775a812f4c03ba4b0e03e	udev	f7490675e06a5e4db55adf394f078b7b	user	9e552f935106ff0bc92af16da64b4b29
+_md5_=ae87b37db9abca6ab6ae6fec57ada0be