sane-backends: upgraded package to upstream

Upgraded media-gfx/sane-backends to version 1.0.24-r3 on amd64, arm, x86

BUG=chromium:356263
TEST=emerge-${BOARD} sane-backends

Change-Id: I460f6551b0145f29a3aaaffe8b539c0fcf27fb23
Reviewed-on: https://chromium-review.googlesource.com/191705
Reviewed-by: Mike Frysinger <vapier@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
index 5a67813..1ad06f1 100644
--- a/media-gfx/sane-backends/Manifest
+++ b/media-gfx/sane-backends/Manifest
@@ -1,3 +1 @@
-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
+DIST sane-backends-1.0.24.tar.gz 5778749 SHA256 27c7085a54f1505d8b551e6f1e69d30e1ee57328b18429bb2225dabf4c45462d SHA512 1e9f962bb9d27f17067eb662dabfc0a1aa0d06e16bec4bd28868124b468578d82f14f6d2c1f5de63d2cec57ca4584ec12d3b2c2b1de20f1199aece581453ebc5 WHIRLPOOL 19b939c920a3c157044c85a941debdc664d8781562fa3fc04f061b9d216b089be80edfd43479069382adf13e68160518fdbd5c84a5f4c506a46f8521d4ed2a1c
diff --git a/media-gfx/sane-backends/files/parallel-install-1.0.19.patch b/media-gfx/sane-backends/files/parallel-install-1.0.19.patch
new file mode 100644
index 0000000..bc26ef5
--- /dev/null
+++ b/media-gfx/sane-backends/files/parallel-install-1.0.19.patch
@@ -0,0 +1,30 @@
+--- backend/Makefile.in	2008-08-12 21:50:12.000000000 +0200
++++ backend/Makefile.in.new	2008-08-12 21:58:24.000000000 +0200
+@@ -234,8 +234,10 @@
+ 
+ install: $(INSTALL_LOCKPATH) install-be@BE_INSTALL_FLAVOR@ install-libsane install-becfg
+ 
+-install-be:
++install-paths:
+ 	$(MKDIR) $(DESTDIR)$(libdir) $(DESTDIR)$(libsanedir) $(DESTDIR)$(configdir)
++
++install-be: install-paths
+ 	@# Install all backends in $(prefix)/lib/sane/
+ 	@list="$(LIBS)"; for be in $$list; do \
+ 	  echo installing $${be} in $(DESTDIR)$(libsanedir)/$${be}...; \
+@@ -267,13 +269,13 @@
+ 	  cp -p .libs/libsane-$${be}.so $(DESTDIR)$(BEOS_ADDONDIR)/$${be} || exit 1; \
+ 	done
+ 
+-install-libsane:
++install-libsane: install-paths
+ 	@echo installing libsane.la in $(DESTDIR)$(libdir)/libsane.la...
+ 	@$(LIBTOOL) $(MINST) $(INSTALL_PROGRAM) libsane.la \
+           $(DESTDIR)$(libdir)/libsane.la >/dev/null
+ 	@$(LIBTOOL) $(MINST) --finish $(DESTDIR)$(libdir)
+ 
+-install-becfg:
++install-becfg: install-paths
+ 	@list="$(CONFIGS)"; for cfg in $$list; do \
+ 	  if test ! -r $${cfg}; then continue; fi; \
+ 	  if test -f $(DESTDIR)$(configdir)/$${cfg}; then \
diff --git a/media-gfx/sane-backends/files/sane-backends-1.0.23-automagic-cups.patch b/media-gfx/sane-backends/files/sane-backends-1.0.23-automagic-cups.patch
new file mode 100644
index 0000000..bcdd944
--- /dev/null
+++ b/media-gfx/sane-backends/files/sane-backends-1.0.23-automagic-cups.patch
@@ -0,0 +1,33 @@
+diff -Naur sane-backends-1.0.23/configure.in sane-backends-1.0.23.new/configure.in
+--- sane-backends-1.0.23/configure.in	2012-08-19 13:31:34.000000000 -0700
++++ sane-backends-1.0.23.new/configure.in	2013-08-26 14:41:22.613012270 -0700
+@@ -326,16 +326,24 @@
+     AC_DEFINE(HAVE_DEV_URANDOM, 1, [Is /dev/urandom available?])
+ fi
+ 
+-nl added by PN 3/2/12 to detect cups
+-$as_echo "checking for cups"
+-if test -e /usr/include/cups/cups.h ; then
+-    AC_DEFINE(HAVE_CUPS, 1, [Is /usr/include/cups/cups.h available?])
++AC_ARG_ENABLE(cups,
++	AC_HELP_STRING([--enable-cups], [enable CUPS support]),
++	[enable_cups=$enableval], [enable_cups=no])
++
++if test "$enable_cups" != no; then
++    dnl added by PN 3/2/12 to detect cups
++    $as_echo "checking for cups"
++    if test -e /usr/include/cups/cups.h ; then
++	AC_DEFINE(HAVE_CUPS, 1, [Is /usr/include/cups/cups.h available?])
+ 	with_cups="yes"
+ 	LIBS="-lcups  $LIBS"
+-else
++    else
+ 	$as_echo "cups.h not found, you may want to install a cups development package"
+ 	$as_echo "in order to autodetect network scanners in kodakaio."
+ 	with_cups="no"
++    fi
++else
++    with_cups=no
+ fi
+ 
+ dnl ***********
diff --git a/media-gfx/sane-backends/files/sane-backends-1.0.23-automagic-v4l.patch b/media-gfx/sane-backends/files/sane-backends-1.0.23-automagic-v4l.patch
new file mode 100644
index 0000000..78a6c7b
--- /dev/null
+++ b/media-gfx/sane-backends/files/sane-backends-1.0.23-automagic-v4l.patch
@@ -0,0 +1,22 @@
+diff --git a/configure.in b/configure.in
+index b62d4d3..76e37b2 100644
+--- a/configure.in
++++ b/configure.in
+@@ -129,7 +129,16 @@ SANE_CHECK_LOCKING
+ SANE_CHECK_GPHOTO2
+ 
+ 
+-PKG_CHECK_MODULES(LIBV4L, libv4l1, have_libv4l1=yes, have_libv4l1=no)
++AC_ARG_WITH(v4l,
++	    AC_HELP_STRING([--with-v4l],
++			   [include the v4l backend @<:@default=yes@:>@]),
++	    [# If --with-v4l=no or --without-v4l, disable backend
++             # as "$with_v4l" will be set to "no"])
++
++if test "$with_v4l" != "no" ; then
++  PKG_CHECK_MODULES(LIBV4L, libv4l1, have_libv4l1=yes, have_libv4l1=no)
++fi
++
+ AC_SUBST(LIBV4L_LIBS)
+ AC_SUBST(LIBV4L_CFLAGS)
+ 
diff --git a/media-gfx/sane-backends/files/sane-backends-1.0.24-automagic_systemd.patch b/media-gfx/sane-backends/files/sane-backends-1.0.24-automagic_systemd.patch
new file mode 100644
index 0000000..c0dfe3c
--- /dev/null
+++ b/media-gfx/sane-backends/files/sane-backends-1.0.24-automagic_systemd.patch
@@ -0,0 +1,40 @@
+diff --git a/configure.in b/configure.in
+index 4365868..7413646 100644
+--- a/configure.in
++++ b/configure.in
+@@ -344,17 +344,24 @@ dnl 	$as_echo "in order to autodetect network scanners in kodakaio."
+ dnl 	with_cups="no"
+ dnl fi
+ 
+-dnl added by llagendijk 12/7/2012 to detect systemd for saned
+-$as_echo_n "Checking for systemd..."
+-if test -e /usr/include/systemd/sd-daemon.h ; then
+-    AC_DEFINE(HAVE_SYSTEMD, 1, [Is /usr/include/systemd/sd-daemon.h available?])
+-    with_systemd="yes"
+-    SYSTEMD_LIBS=" -lsystemd-daemon"
+-    AC_SUBST(SYSTEMD_LIBS)
+-    $as_echo "yes"
+-else
+-    with_systemd="no"
+-    $as_echo "no"
++AC_ARG_WITH(systemd,
++	AC_HELP_STRING([--with-systemd], [enable systemd support @<:@default=yes@:>@]))
++if test "x$with_systemd" != xno ; then
++    dnl added by llagendijk 12/7/2012 to detect systemd for saned
++    $as_echo_n "Checking for systemd..."
++    if test -e /usr/include/systemd/sd-daemon.h ; then
++	AC_DEFINE(HAVE_SYSTEMD, 1, [Is /usr/include/systemd/sd-daemon.h available?])
++	have_systemd="yes"
++	SYSTEMD_LIBS=" -lsystemd-daemon"
++	AC_SUBST(SYSTEMD_LIBS)
++	$as_echo "yes"
++    else
++	have_systemd="no"
++	$as_echo "no"
++	if test "x$with_systemd" = xyes; then
++	    AC_MSG_ERROR([Systemd support was requested but systemd was not found])
++	fi
++    fi
+ fi
+ 
+ dnl ***********
diff --git a/media-gfx/sane-backends/files/sane-backends-1.0.24-kodakaio_avahi.patch b/media-gfx/sane-backends/files/sane-backends-1.0.24-kodakaio_avahi.patch
new file mode 100644
index 0000000..e6f52ad
--- /dev/null
+++ b/media-gfx/sane-backends/files/sane-backends-1.0.24-kodakaio_avahi.patch
@@ -0,0 +1,84 @@
+diff --git a/backend/kodakaio.c b/backend/kodakaio.c
+index 8c4583a..b442e50 100644
+--- a/backend/kodakaio.c
++++ b/backend/kodakaio.c
+@@ -127,7 +127,7 @@ for ubuntu 12.10
+ 
+ #define KODAKAIO_VERSION	02
+ #define KODAKAIO_REVISION	4
+-#define KODAKAIO_BUILD		6
++#define KODAKAIO_BUILD		7
+ 
+ /* for usb (but also used for net though it's not required). */
+ #define MAX_BLOCK_SIZE		32768
+@@ -2184,6 +2184,7 @@ static void resolve_callback(
+     AvahiLookupResultFlags flags,
+     AVAHI_GCC_UNUSED void* userdata) {
+ 
++	AvahiStringList *vid_pair_list = NULL, *pid_pair_list = NULL;
+ 	char *pidkey, *pidvalue;
+ 	char *vidkey, *vidvalue;
+ 	size_t valuesize;
+@@ -2204,20 +2205,40 @@ static void resolve_callback(
+             avahi_address_snprint(a, sizeof(a), address);
+ 
+ /* Output short for Kodak ESP */
+-	DBG(min(10,DBG_AUTO), "%s:%u  %s  ", a,port,host_name);
+-	avahi_string_list_get_pair(avahi_string_list_find(txt, "vid"), 
+-		&vidkey, &vidvalue, &valuesize);
+-	DBG(min(10,DBG_AUTO), "%s=%s  ", vidkey, vidvalue);
+-	avahi_string_list_get_pair(avahi_string_list_find(txt, "pid"), 
+-		&pidkey, &pidvalue, &valuesize);
+-	DBG(min(10,DBG_AUTO), "%s=%s\n", pidkey, pidvalue);
++	DBG(min(10,DBG_AUTO), "%s:%u  %s\n", a,port,host_name);
+ 
++	vid_pair_list = avahi_string_list_find(txt, "vid");
++	if(vid_pair_list != NULL) {
++		avahi_string_list_get_pair(vid_pair_list, &vidkey, &vidvalue, &valuesize);
++		DBG(min(10,DBG_AUTO), "%s=%s  ", vidkey, vidvalue);
++	}
++	else	DBG(min(10,DBG_AUTO), "failed to find key vid\n");
++
++	pid_pair_list = avahi_string_list_find(txt, "pid");
++	if(pid_pair_list != NULL) {
++		avahi_string_list_get_pair(pid_pair_list, &pidkey, &pidvalue, &valuesize);
++		DBG(min(10,DBG_AUTO), "%s=%s\n", pidkey, pidvalue);
++	}
++	else	DBG(min(10,DBG_AUTO), "failed to find key pid\n");
++
++	if(pid_pair_list != NULL && vid_pair_list != NULL) {
+ 		ProcessAvahiDevice(name, vidvalue, pidvalue, a);
+-	avahi_free(vidkey); avahi_free(vidvalue);
+-	avahi_free(pidkey); avahi_free(pidvalue);
++	}
++	else DBG(min(10,DBG_AUTO), "didn't call ProcessAvahiDevice\n");
++
++	if(vid_pair_list != NULL) {
++		avahi_free(vidkey); 
++		avahi_free(vidvalue);
++		DBG(min(15,DBG_AUTO), "vidkey and vidvalue freed\n");
++	}
++	if(pid_pair_list != NULL) {
++		avahi_free(pidkey); 
++		avahi_free(pidvalue);
++		DBG(min(15,DBG_AUTO), "pidkey and pidvalue freed\n");
++	}
+         }
+     }
+-
++    DBG(min(10,DBG_AUTO), "ending resolve_callback\n");
+     avahi_service_resolver_free(r);
+ }
+ 
+diff --git a/doc/descriptions/kodakaio.desc b/doc/descriptions/kodakaio.desc
+index 7882513..5fb18ed 100644
+--- a/doc/descriptions/kodakaio.desc
++++ b/doc/descriptions/kodakaio.desc
+@@ -1,6 +1,6 @@
+ :backend "kodakaio"
+ :url "http://sourceforge.net/projects/cupsdriverkodak/" 
+-:version "2.4.6"
++:version "2.4.7"
+ :manpage "sane-kodakaio"
+ :comment "Backend for Kodak AiO ESP and Hero printers. Also possibly Advent AWL10"
+ :devicetype :scanner
diff --git a/media-gfx/sane-backends/files/sane-backends-1.0.24-saned_pidfile_location.patch b/media-gfx/sane-backends/files/sane-backends-1.0.24-saned_pidfile_location.patch
new file mode 100644
index 0000000..c682961
--- /dev/null
+++ b/media-gfx/sane-backends/files/sane-backends-1.0.24-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/sane-backends-1.0.24-systemd_pkgconfig.patch b/media-gfx/sane-backends/files/sane-backends-1.0.24-systemd_pkgconfig.patch
new file mode 100644
index 0000000..2d36cfa
--- /dev/null
+++ b/media-gfx/sane-backends/files/sane-backends-1.0.24-systemd_pkgconfig.patch
@@ -0,0 +1,37 @@
+diff --git a/configure.in b/configure.in
+index 7413646..66828fc 100644
+--- a/configure.in
++++ b/configure.in
+@@ -347,21 +347,18 @@ dnl fi
+ AC_ARG_WITH(systemd,
+ 	AC_HELP_STRING([--with-systemd], [enable systemd support @<:@default=yes@:>@]))
+ if test "x$with_systemd" != xno ; then
+-    dnl added by llagendijk 12/7/2012 to detect systemd for saned
+-    $as_echo_n "Checking for systemd..."
+-    if test -e /usr/include/systemd/sd-daemon.h ; then
+-	AC_DEFINE(HAVE_SYSTEMD, 1, [Is /usr/include/systemd/sd-daemon.h available?])
+-	have_systemd="yes"
+-	SYSTEMD_LIBS=" -lsystemd-daemon"
+-	AC_SUBST(SYSTEMD_LIBS)
+-	$as_echo "yes"
+-    else
+-	have_systemd="no"
+-	$as_echo "no"
+-	if test "x$with_systemd" = xyes; then
+-	    AC_MSG_ERROR([Systemd support was requested but systemd was not found])
+-	fi
++  PKG_CHECK_MODULES(SYSTEMD, [libsystemd], have_systemd=yes, have_systemd=no)
++  if test "x$have_systemd" = xno; then
++    PKG_CHECK_MODULES(SYSTEMD, [libsystemd-daemon], have_systemd=yes, have_systemd=no)
++  fi
++  if test "x$have_systemd" = xyes; then
++    AC_DEFINE(HAVE_SYSTEMD, 1, [Is /usr/include/systemd/sd-daemon.h available?])
++    AC_SUBST(SYSTEMD_LIBS)
++  else
++    if test "x$with_systemd" = xyes; then
++      AC_MSG_ERROR([Systemd support was requested but systemd was not found])
+     fi
++  fi
+ fi
+ 
+ dnl ***********
diff --git a/media-gfx/sane-backends/files/sane-backends-1.0.24-unused-cups.patch b/media-gfx/sane-backends/files/sane-backends-1.0.24-unused-cups.patch
new file mode 100644
index 0000000..c8ed34e
--- /dev/null
+++ b/media-gfx/sane-backends/files/sane-backends-1.0.24-unused-cups.patch
@@ -0,0 +1,42 @@
+diff --git a/configure.in b/configure.in
+index e13888c..4365868 100644
+--- a/configure.in
++++ b/configure.in
+@@ -332,17 +332,17 @@ if test -c /dev/urandom ; then
+     AC_DEFINE(HAVE_DEV_URANDOM, 1, [Is /dev/urandom available?])
+ fi
+ 
+-dnl added by PN 3/2/12 to detect cups
+-$as_echo "checking for cups"
+-if test -e /usr/include/cups/cups.h ; then
+-    AC_DEFINE(HAVE_CUPS, 1, [Is /usr/include/cups/cups.h available?])
+-	with_cups="yes"
+-	LIBS="-lcups  $LIBS"
+-else
+-	$as_echo "cups.h not found, you may want to install a cups development package"
+-	$as_echo "in order to autodetect network scanners in kodakaio."
+-	with_cups="no"
+-fi
++dnl added by PN 3/2/12 to detect cups commented out 15/10/13 since avahi is now used instead
++dnl $as_echo "checking for cups"
++dnl if test -e /usr/include/cups/cups.h ; then
++dnl     AC_DEFINE(HAVE_CUPS, 1, [Is /usr/include/cups/cups.h available?])
++dnl 	with_cups="yes"
++dnl 	LIBS="-lcups  $LIBS"
++dnl else
++dnl 	$as_echo "cups.h not found, you may want to install a cups development package"
++dnl 	$as_echo "in order to autodetect network scanners in kodakaio."
++dnl 	with_cups="no"
++dnl fi
+ 
+ dnl added by llagendijk 12/7/2012 to detect systemd for saned
+ $as_echo_n "Checking for systemd..."
+@@ -816,7 +816,7 @@ fi
+ echo "IPv6 support:  `eval eval echo ${ipv6}`"
+ echo "Avahi support: `eval eval echo ${enable_avahi}`"
+ echo "SNMP support:  `eval eval echo ${with_snmp}`"
+-echo "CUPS support:  `eval eval echo ${with_cups}`"
++dnl echo "CUPS support:  `eval eval echo ${with_cups}`" commented out 15/10/13
+ echo "-> The following backends will be built:"
+ for backend in ${BACKENDS} ; do
+   echo $ECHO_N "${backend} " 
diff --git a/media-gfx/sane-backends/metadata.xml b/media-gfx/sane-backends/metadata.xml
new file mode 100644
index 0000000..95a1b7f
--- /dev/null
+++ b/media-gfx/sane-backends/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+  <email>teiresias@gentoo.org</email>
+  <name>Chris Brannon</name>
+</maintainer>
+</pkgmetadata>
diff --git a/media-gfx/sane-backends/sane-backends-1.0.23-r1.ebuild b/media-gfx/sane-backends/sane-backends-1.0.24-r3.ebuild
similarity index 81%
rename from media-gfx/sane-backends/sane-backends-1.0.23-r1.ebuild
rename to media-gfx/sane-backends/sane-backends-1.0.24-r3.ebuild
index 2ef008c..946eb06 100644
--- a/media-gfx/sane-backends/sane-backends-1.0.23-r1.ebuild
+++ b/media-gfx/sane-backends/sane-backends-1.0.24-r3.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2014 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 $
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/sane-backends/sane-backends-1.0.24-r3.ebuild,v 1.2 2014/03/25 22:15:48 vapier Exp $
 
-EAPI="4"
- 
-inherit eutils flag-o-matic multilib udev user toolchain-funcs
+EAPI="5"
+
+inherit autotools 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.
@@ -94,16 +94,21 @@
 	umax_pp
 	xerox_mfp"
 
-IUSE="avahi doc gphoto2 ipv6 threads usb v4l xinetd snmp"
+IUSE="avahi doc gphoto2 ipv6 threads usb v4l xinetd snmp systemd"
 
 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
+	case ${backend} in
+	# Disable backends that require parallel ports as no one has those anymore.
+	canon_pp|hpsj5s|mustek_pp|\
+	pnm)
+		IUSE+=" -sane_backends_${backend}"
+		;;
+	mustek_usb2|kvs40xx)
+		IUSE+=" sane_backends_${backend}"
+		;;
+	*)
+		IUSE+=" +sane_backends_${backend}"
+	esac
 done
 
 REQUIRED_USE="
@@ -113,6 +118,11 @@
 
 DESCRIPTION="Scanner Access Now Easy - Backends"
 HOMEPAGE="http://www.sane-project.org/"
+SRC_URI="https://alioth.debian.org/frs/download.php/file/3958/${P}.tar.gz"
+
+LICENSE="GPL-2 public-domain"
+SLOT="0"
+KEYWORDS="*"
 
 RDEPEND="
 	sane_backends_dc210? ( virtual/jpeg )
@@ -123,14 +133,15 @@
 	sane_backends_canon_pp? ( sys-libs/libieee1284 )
 	sane_backends_hpsj5s? ( sys-libs/libieee1284 )
 	sane_backends_mustek_pp? ( sys-libs/libieee1284 )
-	usb? ( virtual/libusb:0 )
+	usb? ( virtual/libusb:1 )
 	gphoto2? (
-		media-libs/libgphoto2
+		media-libs/libgphoto2:=
 		virtual/jpeg
 	)
 	v4l? ( media-libs/libv4l )
 	xinetd? ( sys-apps/xinetd )
 	snmp? ( net-analyzer/net-snmp )
+	systemd? ( sys-apps/systemd )
 "
 
 DEPEND="${RDEPEND}
@@ -147,26 +158,11 @@
 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="*"
-
 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.
@@ -175,8 +171,14 @@
 	epkowa
 	EOF
 	epatch "${FILESDIR}"/niash_array_index.patch \
-		"${FILESDIR}"/${PN}-1.0.23-saned_pidfile_location.patch \
-		"${FILESDIR}"/kodakaio-fixes.patch
+		"${FILESDIR}"/${P}-unused-cups.patch \
+		"${FILESDIR}"/${P}-automagic_systemd.patch \
+		"${FILESDIR}"/${P}-systemd_pkgconfig.patch \
+		"${FILESDIR}"/${P}-kodakaio_avahi.patch \
+		"${FILESDIR}"/${P}-saned_pidfile_location.patch
+	# Fix for "make check".
+	sed -i -e 's/sane-backends 1.0.24git/sane-backends 1.0.24/' testsuite/tools/data/html*
+	AT_NOELIBTOOLIZE=yes eautoreconf
 }
 
 src_configure() {
@@ -193,7 +195,7 @@
 		fi
 	done
 
-	local myconf="$(use_enable usb libusb) $(use_with snmp)"
+	local myconf="$(use_enable usb libusb_1_0) $(use_with snmp)"
 	# you can only enable this backend, not disable it...
 	if use sane_backends_pnm; then
 		myconf="${myconf} --enable-pnm-backend"
@@ -219,6 +221,8 @@
 	SANEI_JPEG="sanei_jpeg.o" SANEI_JPEG_LO="sanei_jpeg.lo" \
 	BACKENDS="${BACKENDS}" econf \
 		$(use_with gphoto2) \
+		$(use_with systemd) \
+		$(use_with v4l) \
 		$(use_enable avahi) \
 		$(use_enable ipv6) \
 		$(use_enable threads pthread) \
@@ -290,6 +294,6 @@
 		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 "If you are using a 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
deleted file mode 100644
index 4bd1cf9..0000000
--- a/metadata/md5-cache/media-gfx/sane-backends-1.0.23-r1
+++ /dev/null
@@ -1,14 +0,0 @@
-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 sys-apps/baselayout
-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=*
-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 sys-apps/baselayout
-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	a108f00cccac414097bcbbbb5de01762	flag-o-matic	c3131dc67d3bd39f044e92b8280505e4	multilib	fac675dcccf94392371a6abee62d909f	toolchain-funcs	48b38a216afb92db6314d6c3187abea3	udev	a9a8d051efb42bfe884c1db82ce161de	user	d4747af4b024bcbb56b5c601c70b1d16
-_md5_=6e17fbf768b12536dc19461ff7fd4a61
diff --git a/metadata/md5-cache/media-gfx/sane-backends-1.0.24-r3 b/metadata/md5-cache/media-gfx/sane-backends-1.0.24-r3
new file mode 100644
index 0000000..343bbd5
--- /dev/null
+++ b/metadata/md5-cache/media-gfx/sane-backends-1.0.24-r3
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst prepare setup
+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:1 ) gphoto2? ( media-libs/libgphoto2:= virtual/jpeg ) v4l? ( media-libs/libv4l ) xinetd? ( sys-apps/xinetd ) snmp? ( net-analyzer/net-snmp ) systemd? ( sys-apps/systemd ) v4l? ( sys-kernel/linux-headers ) doc? ( virtual/latex-base dev-texlive/texlive-latexextra ) >=sys-apps/sed-4 virtual/pkgconfig || ( >=sys-devel/automake-1.11.1:1.11 >=sys-devel/automake-1.12:1.12 ) >=sys-devel/autoconf-2.68 sys-devel/libtool virtual/pkgconfig sys-apps/baselayout
+DESCRIPTION=Scanner Access Now Easy - Backends
+EAPI=5
+HOMEPAGE=http://www.sane-project.org/
+IUSE=avahi doc gphoto2 ipv6 threads usb v4l xinetd snmp systemd +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=*
+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:1 ) gphoto2? ( media-libs/libgphoto2:= virtual/jpeg ) v4l? ( media-libs/libv4l ) xinetd? ( sys-apps/xinetd ) snmp? ( net-analyzer/net-snmp ) systemd? ( sys-apps/systemd ) !<sys-fs/udev-114 sys-apps/baselayout
+REQUIRED_USE=sane_backends_mustek_usb2? ( threads ) sane_backends_kvs40xx? ( threads )
+SLOT=0
+SRC_URI=https://alioth.debian.org/frs/download.php/file/3958/sane-backends-1.0.24.tar.gz
+_eclasses_=autotools	1b0fa473be98091220edff9f51d06153	eutils	a108f00cccac414097bcbbbb5de01762	flag-o-matic	c3131dc67d3bd39f044e92b8280505e4	libtool	eba09ed440f2692f73024ff3621a1f4b	multilib	fac675dcccf94392371a6abee62d909f	multiprocessing	1512bdfe7004902b8cd2c466fc3df772	toolchain-funcs	48b38a216afb92db6314d6c3187abea3	udev	a9a8d051efb42bfe884c1db82ce161de	user	d4747af4b024bcbb56b5c601c70b1d16
+_md5_=e03882eb625d464c33fb24216f398080