summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wendler <polynomial-c@gentoo.org>2021-01-13 02:19:43 +0100
committerLars Wendler <polynomial-c@gentoo.org>2021-01-13 02:21:34 +0100
commitdcbeb65befc813a87bc9f0d45adefb5fa954f196 (patch)
tree5b568397592c23b42ebfdc510206f777ede8b4a5
parentsci-chemistry/votca-xtp: add v1.6.4 (diff)
downloadgentoo-dcbeb65befc.tar.gz
gentoo-dcbeb65befc.tar.bz2
gentoo-dcbeb65befc.zip
media-gfx/sane-backends: Bump to version 1.0.31
- Fixed build with autoconf-2.70 (#750374) - Added support for pieusb backend (#744703) - Added python-any-r1 eclass because the auto-generated gitlab tarballs we use require to generate some files with a shipped python script - Removed user LDFLAGS from pkgconfig files - Converted some variables into arrays - Minor ebuild overhaul Closes: https://bugs.gentoo.org/744703 Closes: https://bugs.gentoo.org/750374 Closes: https://bugs.gentoo.org/759982 Package-Manager: Portage-3.0.13, Repoman-3.0.2 Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
-rw-r--r--media-gfx/sane-backends/Manifest1
-rw-r--r--media-gfx/sane-backends/files/sane-backends-1.0.31-autoconf-2.70.patch93
-rw-r--r--media-gfx/sane-backends/files/sane-backends-1.0.31-backend_pot_input.patch33
-rw-r--r--media-gfx/sane-backends/files/sane-backends-1.0.31-udev_rules_update.patch55
-rw-r--r--media-gfx/sane-backends/sane-backends-1.0.31.ebuild362
-rw-r--r--profiles/desc/sane_backends.desc1
6 files changed, 545 insertions, 0 deletions
diff --git a/media-gfx/sane-backends/Manifest b/media-gfx/sane-backends/Manifest
index 4a1266cd0039..ab68444f7480 100644
--- a/media-gfx/sane-backends/Manifest
+++ b/media-gfx/sane-backends/Manifest
@@ -1 +1,2 @@
DIST backends-1.0.30.tar.gz 5721262 BLAKE2B 139d3ca908d54b94d14ef4145d44a89b939807c15870be03c3c028cf95351bf9a4abd3ea115b84396366bb054f37ade883f429467dceb0663c2855b92e0a4fa5 SHA512 19127c8109c1587d60d8cba713f73b1a24242df44fa49c3e59320f48022783f05d26d3242a3f87478e583a807d88b446ef7a51afb33b674be29656496c435d7b
+DIST backends-1.0.31.tar.gz 5731445 BLAKE2B d70691acbd3f5788a26bab6b35eeb243801b435272b57e3fa568127562ff57797452e396e6e5f058c33d3bce0f99b672542fb89bc8eb4d36cbe82ccc20b8f298 SHA512 d8ef05cc3aa9c4fa42c9241e1e61fc93e7959df3746a3a2cfaa6e4fb26dfd0911b4d3227b2da28852f8630fa17ad3432a1230a6f4425340e79a3b82ec5eaa9eb
diff --git a/media-gfx/sane-backends/files/sane-backends-1.0.31-autoconf-2.70.patch b/media-gfx/sane-backends/files/sane-backends-1.0.31-autoconf-2.70.patch
new file mode 100644
index 000000000000..f1fe4765bdd5
--- /dev/null
+++ b/media-gfx/sane-backends/files/sane-backends-1.0.31-autoconf-2.70.patch
@@ -0,0 +1,93 @@
+From 445b5bd7e19245c08de6a0e669dd9211d2597bfa Mon Sep 17 00:00:00 2001
+From: Olaf Meeuwissen <paddy-hack@member.fsf.org>
+Date: Fri, 1 Jan 2021 15:53:11 +0900
+Subject: [PATCH] Drop use of obsoleted autoconf AC_HEADER_STDC macro. Fixes
+ #409
+
+Use of the STDC_HEADER pre-processor macro that the autoconf macro
+used to define has been removed. Conditionalized code is now used
+unconditionally. This should be fine as the macro checks for ANSI
+C, i.e. C89 (ISO C90), compliant headers. We already require C99.
+---
+ acinclude.m4 | 3 ---
+ lib/md5.c | 10 ++--------
+ sanei/sanei_pa4s2.c | 8 +++-----
+ sanei/sanei_pp.c | 8 +++-----
+ 4 files changed, 8 insertions(+), 21 deletions(-)
+
+diff --git a/acinclude.m4 b/acinclude.m4
+index e10f8ceb2..9393278c2 100644
+--- a/acinclude.m4
++++ b/acinclude.m4
+@@ -73,9 +73,6 @@ AC_DEFUN([SANE_CHECK_MISSING_HEADERS],
+ if test "${ac_cv_header_unistd_h}" != "yes" ; then
+ MISSING_HEADERS="${MISSING_HEADERS}\"unistd.h\" "
+ fi
+- if test "${ac_cv_header_stdc}" != "yes" ; then
+- MISSING_HEADERS="${MISSING_HEADERS}\"ANSI C headers\" "
+- fi
+ if test "${MISSING_HEADERS}" != "" ; then
+ echo "*** The following essential header files couldn't be found:"
+ echo "*** ${MISSING_HEADERS}"
+diff --git a/lib/md5.c b/lib/md5.c
+index 923a17c78..009c6d9a0 100644
+--- a/lib/md5.c
++++ b/lib/md5.c
+@@ -26,14 +26,8 @@
+
+ #include <sys/types.h>
+
+-#if STDC_HEADERS || defined _LIBC
+-# include <stdlib.h>
+-# include <string.h>
+-#else
+-# ifndef HAVE_MEMCPY
+-# define memcpy(d, s, n) bcopy ((s), (d), (n))
+-# endif
+-#endif
++#include <stdlib.h>
++#include <string.h>
+
+ #include "md5.h"
+
+diff --git a/sanei/sanei_pa4s2.c b/sanei/sanei_pa4s2.c
+index b1d95fe02..5365151fd 100644
+--- a/sanei/sanei_pa4s2.c
++++ b/sanei/sanei_pa4s2.c
+@@ -150,11 +150,9 @@ static int sanei_pa4s2_dbg_init_called = SANE_FALSE;
+
+ #endif /* NDEBUG */
+
+-#if defined(STDC_HEADERS)
+-# include <errno.h>
+-# include <stdio.h>
+-# include <stdlib.h>
+-#endif
++#include <errno.h>
++#include <stdio.h>
++#include <stdlib.h>
+ #if defined(HAVE_STRING_H)
+ # include <string.h>
+ #elif defined(HAVE_STRINGS_H)
+diff --git a/sanei/sanei_pp.c b/sanei/sanei_pp.c
+index 3077342e4..752945a89 100644
+--- a/sanei/sanei_pp.c
++++ b/sanei/sanei_pp.c
+@@ -135,11 +135,9 @@ inb( u_long port )
+ #include "../include/sane/sanei_debug.h"
+ #include "../include/sane/sanei_pp.h"
+
+-#if defined(STDC_HEADERS)
+-# include <errno.h>
+-# include <stdio.h>
+-# include <stdlib.h>
+-#endif
++#include <errno.h>
++#include <stdio.h>
++#include <stdlib.h>
+ #if defined(HAVE_STRING_H)
+ # include <string.h>
+ #elif defined(HAVE_STRINGS_H)
+--
+GitLab
+
diff --git a/media-gfx/sane-backends/files/sane-backends-1.0.31-backend_pot_input.patch b/media-gfx/sane-backends/files/sane-backends-1.0.31-backend_pot_input.patch
new file mode 100644
index 000000000000..69585784c252
--- /dev/null
+++ b/media-gfx/sane-backends/files/sane-backends-1.0.31-backend_pot_input.patch
@@ -0,0 +1,33 @@
+From 4846d36ad1e9ca709cb3a2eaa839c8c79effe34b Mon Sep 17 00:00:00 2001
+From: Olaf Meeuwissen <paddy-hack@member.fsf.org>
+Date: Sun, 13 Sep 2020 17:56:40 +0900
+Subject: [PATCH] po: Make sure all sane-backends.pot input are available
+
+---
+ po/Makevars | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/po/Makevars b/po/Makevars
+index ebff23f90..86f423ef3 100644
+--- a/po/Makevars
++++ b/po/Makevars
+@@ -1,5 +1,6 @@
+ # Makevars -- snippet for inclusion in po/ -*- Makefile -*-
+-# Copyright (C) 2016, 2019 Olaf Meeuwissen and the SANE developers
++# Copyright (C) 2016, 2019, 2020 Olaf Meeuwissen
++# and the SANE developers
+ #
+ # This file is part of the SANE build infra-structure. See the
+ # included LICENSE file for license information.
+@@ -47,3 +48,8 @@ width_options = --width=75
+ # Locale categories, in addition to LC_MESSAGES, for which message
+ # catalogs are to be used.
+ EXTRA_LOCALE_CATEGORIES =
++
++# Selected files in POTFILES.in are generated. Make sure they are
++# available when needed.
++$(top_srcdir)/backend/pixma/pixma_sane_options.c:
++ cd ../backend; make pixma/pixma_sane_options.c
+--
+GitLab
+
diff --git a/media-gfx/sane-backends/files/sane-backends-1.0.31-udev_rules_update.patch b/media-gfx/sane-backends/files/sane-backends-1.0.31-udev_rules_update.patch
new file mode 100644
index 000000000000..17ccb60755e0
--- /dev/null
+++ b/media-gfx/sane-backends/files/sane-backends-1.0.31-udev_rules_update.patch
@@ -0,0 +1,55 @@
+https://gitlab.com/sane-project/backends/-/merge_requests/541
+
+--- sane-backends-1.0.31/testsuite/tools/data/udev+acl.ref
++++ sane-backends-1.0.31/testsuite/tools/data/udev+acl.ref
+@@ -23,7 +23,7 @@
+ # If the scanner is supported by sane-backends, please mail the entry to
+ # the sane-devel mailing list (sane-devel@alioth-lists.debian.net).
+ #
+-ACTION!="add", GOTO="libsane_rules_end"
++ACTION=="remove", GOTO="libsane_rules_end"
+ ENV{DEVTYPE}=="usb_device", GOTO="libsane_create_usb_dev"
+ SUBSYSTEMS=="scsi", GOTO="libsane_scsi_rules_begin"
+ SUBSYSTEM=="usb_device", GOTO="libsane_usb_rules_begin"
+--- sane-backends-1.0.31/testsuite/tools/data/udev+hwdb.ref
++++ sane-backends-1.0.31/testsuite/tools/data/udev+hwdb.ref
+@@ -20,7 +20,7 @@
+ # If the scanner is supported by sane-backends, please mail the entry to
+ # the sane-devel mailing list (sane-devel@alioth-lists.debian.net).
+ #
+-ACTION!="add", GOTO="libsane_rules_end"
++ACTION=="remove", GOTO="libsane_rules_end"
+
+ # The following rule will disable USB autosuspend for the device
+ ENV{DEVTYPE}=="usb_device", ENV{libsane_matched}=="yes", TEST=="power/control", ATTR{power/control}="on"
+--- sane-backends-1.0.31/testsuite/tools/data/udev.ref
++++ sane-backends-1.0.31/testsuite/tools/data/udev.ref
+@@ -23,7 +23,7 @@
+ # If the scanner is supported by sane-backends, please mail the entry to
+ # the sane-devel mailing list (sane-devel@alioth-lists.debian.net).
+ #
+-ACTION!="add", GOTO="libsane_rules_end"
++ACTION=="remove", GOTO="libsane_rules_end"
+ ENV{DEVTYPE}=="usb_device", GOTO="libsane_create_usb_dev"
+ SUBSYSTEMS=="scsi", GOTO="libsane_scsi_rules_begin"
+ SUBSYSTEM=="usb_device", GOTO="libsane_usb_rules_begin"
+--- sane-backends-1.0.31/tools/sane-desc.c
++++ sane-backends-1.0.31/tools/sane-desc.c
+@@ -3496,7 +3496,7 @@
+ int i;
+
+ print_udev_header ();
+- printf("ACTION!=\"add\", GOTO=\"libsane_rules_end\"\n"
++ printf("ACTION==\"remove\", GOTO=\"libsane_rules_end\"\n"
+ "ENV{DEVTYPE}==\"usb_device\", GOTO=\"libsane_create_usb_dev\"\n"
+ "SUBSYSTEMS==\"scsi\", GOTO=\"libsane_scsi_rules_begin\"\n"
+ "SUBSYSTEM==\"usb_device\", GOTO=\"libsane_usb_rules_begin\"\n"
+@@ -3679,7 +3679,7 @@
+ int i;
+
+ print_udevhwdb_header ();
+- printf("ACTION!=\"add\", GOTO=\"libsane_rules_end\"\n\n");
++ printf("ACTION==\"remove\", GOTO=\"libsane_rules_end\"\n\n");
+
+ printf("# The following rule will disable USB autosuspend for the device\n");
+ printf("ENV{DEVTYPE}==\"usb_device\", ENV{libsane_matched}==\"yes\", TEST==\"power/control\", ATTR{power/control}=\"on\"\n\n");
diff --git a/media-gfx/sane-backends/sane-backends-1.0.31.ebuild b/media-gfx/sane-backends/sane-backends-1.0.31.ebuild
new file mode 100644
index 000000000000..abf6a807651c
--- /dev/null
+++ b/media-gfx/sane-backends/sane-backends-1.0.31.ebuild
@@ -0,0 +1,362 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6..9} )
+
+# python-any-r1 required for a script in
+# backends/pixma/scripts/
+inherit autotools flag-o-matic multilib-minimal optfeature python-any-r1 systemd toolchain-funcs udev user
+
+# 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
+ escl
+ 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
+ pieusb
+ pixma
+ plustek
+ plustek_pp
+ pnm
+ qcam
+ ricoh
+ ricoh2
+ rts8891
+ s9036
+ sceptre
+ sharp
+ sm3600
+ sm3840
+ snapscan
+ sp15c
+ st400
+ stv680
+ tamarack
+ teco1
+ teco2
+ teco3
+ test
+ u12
+ umax
+ umax1220u
+ umax_pp
+ xerox_mfp
+)
+
+IUSE="gphoto2 ipv6 snmp systemd threads usb v4l xinetd +zeroconf"
+
+for GBACKEND in ${IUSE_SANE_BACKENDS[@]}; do
+ case ${GBACKEND} in
+ # Disable backends that require parallel ports as no one has those anymore.
+ canon_pp|hpsj5s|mustek_pp|\
+ pnm|mustek_usb2|kvs40xx)
+ IUSE+=" sane_backends_${GBACKEND}"
+ ;;
+ *)
+ IUSE+=" +sane_backends_${GBACKEND}"
+ esac
+done
+
+REQUIRED_USE="
+ sane_backends_escl? ( zeroconf )
+ sane_backends_kvs40xx? ( threads )
+ sane_backends_mustek_usb2? ( threads )
+"
+
+MY_PN="${PN//sane-/}"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="Scanner Access Now Easy - Backends"
+HOMEPAGE="http://www.sane-project.org/"
+SRC_URI="https://gitlab.com/sane-project/backends/-/archive/${PV}/${MY_P}.tar.gz"
+
+LICENSE="GPL-2 public-domain"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+# For pixma: see https://gitlab.com/sane-project/backends/-/releases/1.0.28#build
+RDEPEND="
+ gphoto2? (
+ >=media-libs/libgphoto2-2.5.3.1:=[${MULTILIB_USEDEP}]
+ >=virtual/jpeg-0-r2:0=[${MULTILIB_USEDEP}]
+ )
+ sane_backends_canon_pp? ( >=sys-libs/libieee1284-0.2.11-r3[${MULTILIB_USEDEP}] )
+ sane_backends_dc210? ( >=virtual/jpeg-0-r2:0=[${MULTILIB_USEDEP}] )
+ sane_backends_dc240? ( >=virtual/jpeg-0-r2:0=[${MULTILIB_USEDEP}] )
+ sane_backends_dell1600n_net? (
+ >=media-libs/tiff-3.9.7-r1:0=[${MULTILIB_USEDEP}]
+ >=virtual/jpeg-0-r2:0=[${MULTILIB_USEDEP}]
+ )
+ sane_backends_escl? (
+ || (
+ net-dns/avahi[dbus]
+ net-dns/avahi[gtk]
+ net-dns/avahi[gtk2]
+ )
+ net-dns/avahi[${MULTILIB_USEDEP}]
+ net-misc/curl[${MULTILIB_USEDEP}]
+ )
+ sane_backends_hpsj5s? ( >=sys-libs/libieee1284-0.2.11-r3[${MULTILIB_USEDEP}] )
+ sane_backends_mustek_pp? ( >=sys-libs/libieee1284-0.2.11-r3[${MULTILIB_USEDEP}] )
+ sane_backends_pixma? ( >=virtual/jpeg-0-r2:0=[${MULTILIB_USEDEP}] )
+ snmp? ( net-analyzer/net-snmp:0= )
+ systemd? ( sys-apps/systemd:0= )
+ usb? ( >=virtual/libusb-1-r1:1=[${MULTILIB_USEDEP}] )
+ v4l? ( >=media-libs/libv4l-0.9.5[${MULTILIB_USEDEP}] )
+ xinetd? ( sys-apps/xinetd )
+ zeroconf? ( >=net-dns/avahi-0.6.31-r2[${MULTILIB_USEDEP}] )
+"
+
+DEPEND="${RDEPEND}
+ ${PYHTON_DEPS}
+ dev-libs/libxml2
+ v4l? ( sys-kernel/linux-headers )
+"
+BDEPEND="
+ sys-devel/autoconf-archive
+ sys-devel/gettext
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.0.24-saned_pidfile_location.patch
+ "${FILESDIR}"/${PN}-1.0.27-disable-usb-tests.patch
+ "${FILESDIR}"/${PN}-1.0.30-add_hpaio_epkowa_dll.conf.patch
+ "${FILESDIR}"/${P}-autoconf-2.70.patch #750374
+ "${FILESDIR}"/${P}-udev_rules_update.patch
+ "${FILESDIR}"/${P}-backend_pot_input.patch
+)
+
+S="${WORKDIR}/${MY_P}"
+
+MULTILIB_CHOST_TOOLS=(
+ /usr/bin/sane-config
+)
+
+pkg_setup() {
+ enewgroup scanner
+ enewuser saned -1 -1 -1 scanner
+ python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ # Patch out the git reference so we can run eautoreconf
+ sed \
+ -e "s/m4_esyscmd_s(\[git describe --dirty\])/${PV}/" \
+ -e '/^AM_MAINTAINER_MODE/d' \
+ -i configure.ac || die
+ eautoreconf
+
+ # Fix for "make check". Upstream sometimes forgets to update this.
+ local ver=$(./configure --version | awk '{print $NF; exit 0}')
+ sed -i \
+ -e "/by sane-desc 3.5 from sane-backends/s:sane-backends .*:sane-backends ${ver}:" \
+ testsuite/tools/data/html* || die
+
+ # don't bleed user LDFLAGS into pkgconfig files
+ sed 's|@LDFLAGS@ ||' -i tools/*.pc.in || die
+}
+
+src_configure() {
+ # From Fedora
+ append-flags -fno-strict-aliasing
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ # the blank is intended - an empty string would result in building ALL backends.
+ local lbackends=" "
+
+ use gphoto2 && lbackends="gphoto2"
+ use v4l && lbackends+=" v4l"
+ local backend
+ for backend in ${IUSE_SANE_BACKENDS[@]} ; do
+ if use "sane_backends_${backend}" && [[ "${backend}" != pnm ]] ; then
+ lbackends+=" ${backend}"
+ fi
+ done
+
+ local myconf=(
+ $(use_with usb)
+ $(multilib_native_use_with snmp)
+
+ # you can only enable this backend, not disable it...
+ $(usex sane_backends_pnm --enable-pnm-backend '')
+ $(usex sane_backends_mustek_pp --enable-parport-directio '')
+ )
+
+ if ! { use sane_backends_canon_pp || use sane_backends_hpsj5s || use sane_backends_mustek_pp ; } ; then
+ myconf+=( sane_cv_use_libieee1284=no )
+ fi
+
+ # relative path must be used for tests to work properly
+ # All distributions pass --disable-locking because /var/lock/sane/ would be a world-writable directory
+ # that break in many ways, bug #636202, #668232, #668350
+ # People can refer to the "Programmer's Documentation" at http://www.sane-project.org/docs.html
+ myconf+=(
+ --disable-locking
+ $(use_with gphoto2)
+ $(multilib_native_use_with systemd)
+ $(use_with v4l)
+ $(use_enable ipv6)
+ $(use_enable threads pthread)
+ $(use_with zeroconf avahi)
+ )
+ ECONF_SOURCE="${S}" \
+ SANEI_JPEG="sanei_jpeg.o" SANEI_JPEG_LO="sanei_jpeg.lo" \
+ BACKENDS="${lbackends}" \
+ econf "${myconf[@]}"
+}
+
+multilib_src_compile() {
+ emake VARTEXFONTS="${T}/fonts"
+
+ if tc-is-cross-compiler ; then
+ pushd "${BUILD_DIR}"/tools >/dev/null || die
+
+ # 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
+ ${BUILD_CC} ${BUILD_CPPFLAGS} ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \
+ -I. -I../include -I"${S}"/include \
+ "${S}"/sanei/sanei_config.c "${S}"/sanei/sanei_constrain_value.c \
+ "${S}"/sanei/sanei_init_debug.c "${S}"/tools/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[@]}"
+
+ popd >/dev/null || die
+ fi
+
+ if use usb ; then
+ sed -i -e '/^$/d' \
+ tools/hotplug/libsane.usermap || die
+ fi
+}
+
+multilib_src_install() {
+ emake INSTALL_LOCKPATH="" DESTDIR="${D}" install \
+ docdir="${EPREFIX}"/usr/share/doc/${PF}
+
+ if multilib_is_native_abi ; then
+ if use usb ; then
+ insinto /etc/hotplug/usb
+ doins tools/hotplug/libsane.usermap
+ fi
+
+ udev_newrules tools/udev/libsane.rules 41-libsane.rules
+ insinto "/usr/share/pkgconfig"
+ doins tools/sane-backends.pc
+ fi
+}
+
+multilib_src_install_all() {
+ 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 systemd ; then
+ systemd_newunit "${FILESDIR}"/saned_at.service "saned@.service"
+ systemd_newunit "${FILESDIR}"/saned.socket saned.socket
+ fi
+
+ if use usb ; then
+ exeinto /etc/hotplug/usb
+ doexe tools/hotplug/libusbscanner
+ newdoc tools/hotplug/README README.hotplug
+ fi
+
+ dodoc NEWS AUTHORS PROBLEMS README README.linux
+ find "${ED}" -name '*.la' -delete || die
+
+ if use xinetd ; then
+ insinto /etc/xinetd.d
+ doins "${FILESDIR}"/saned
+ fi
+
+ newinitd "${FILESDIR}"/saned.initd saned
+ newconfd "${FILESDIR}"/saned.confd saned
+}
+
+pkg_postinst() {
+ elog "Optional backends:"
+ optfeature "Epson-specific backend" media-gfx/iscan
+ optfeature "HP-specific backend" net-print/hplip
+
+ if use xinetd ; then
+ elog "If you want remote clients to connect, edit"
+ elog "/etc/sane.d/saned.conf and /etc/hosts.allow"
+ fi
+
+ if ! use systemd ; then
+ elog "If you are using a USB scanner, add all users who want"
+ elog "to access your scanner to the \"scanner\" group."
+ fi
+}
diff --git a/profiles/desc/sane_backends.desc b/profiles/desc/sane_backends.desc
index 1572ca4d70c7..b602cf9dd10e 100644
--- a/profiles/desc/sane_backends.desc
+++ b/profiles/desc/sane_backends.desc
@@ -64,6 +64,7 @@ net - SANE_BACKENDS setting for building the net backend
niash - SANE_BACKENDS setting for building the niash backend
p5 - SANE_BACKENDS setting for building the p5 backend
pie - SANE_BACKENDS setting for building the pie backend
+pieusb - SANE_BACKENDS setting for building the pieusb backend
pixma - SANE_BACKENDS setting for building the pixma backend
plustek - SANE_BACKENDS setting for building the plustek backend
plustek_pp - SANE_BACKENDS setting for building the plustek_pp backend