commit:     bdc0a00e11351d7c09f9ca49cd1bd7236b308cb0
Author:     Marcin Deranek <marcin.deranek <AT> booking <DOT> com>
AuthorDate: Mon Aug  3 08:40:53 2020 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Sat Aug 15 09:29:45 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bdc0a00e

media-gfx/iscan: Version bump to 3.63 with tests support

Closes: https://bugs.gentoo.org/733148
Closes: https://bugs.gentoo.org/708368
Signed-off-by: Marcin Deranek <marcin.deranek <AT> slonko.net>
Closes: https://github.com/gentoo/gentoo/pull/16970
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 media-gfx/iscan/Manifest                           |   1 +
 .../iscan/files/iscan-3.62.0-fix-symbols.patch     |  34 +++++++
 .../iscan/files/iscan-3.62.0-tests-boost.patch     |  81 +++++++++++++++
 .../iscan/files/iscan-3.62.0-tests-linkage.patch   |  94 +++++++++++++++++
 .../iscan/files/iscan-3.62.0-tests-tesseract.patch | 111 +++++++++++++++++++++
 media-gfx/iscan/iscan-3.63.0.ebuild                |  98 ++++++++++++++++++
 6 files changed, 419 insertions(+)

diff --git a/media-gfx/iscan/Manifest b/media-gfx/iscan/Manifest
index 858c9d2c1c7..20ecfd545e7 100644
--- a/media-gfx/iscan/Manifest
+++ b/media-gfx/iscan/Manifest
@@ -1,4 +1,5 @@
 DIST imagescan_3.62.0.orig.tar.gz 12650003 BLAKE2B 
732283eb8370192fdd0fba8939bc81e277a7a227b024f14856b8d3d5c562b7320c7b40aa48cfa627e23dc654544c9bac27d35add5e10bf0ca65ab0279290b90c
 SHA512 
3b6188013d162c605a3ce1bcac9e5a7b16b1af6363bc7ef4b257aed1c0d3e3dfd402a048ec699b6b6cc42883d0b26f50f0c6f1bd0ddc917baed4ce8902a9d8fa
+DIST imagescan_3.63.0.orig.tar.gz 12776113 BLAKE2B 
d1a9f1d60ba4a2239c6ed74f7f9e0da078e2743e78e0abb67a69506bf90ac35b069f84b5a092a6eb8fd73f60eb668e78b4c7fae56b3a65b6b3d8600f082c064a
 SHA512 
3c9b18e630d6fb1c042244542675e89a8b467469d7212ab684f72100810d1f7d0ec16d13c472a83ca05a3a4fc44e366f692a36cd6b0e81c9a332dd3b40de9535
 DIST iscan_2.30.4-2.tar.gz 1236167 BLAKE2B 
598e55aa7099f7973b38f5c3227415c8ddfa7e8c645521981b4e8979047ab692427f5c1719fd83fe0635f2d4604f32f0baff8542f3e1a333298799c4cad7b980
 SHA512 
b12f374ff8ee1e1879fc6dbc579de39d7bcd4777ec7ad6e4345046f77b4ec13ae45ebdc2803d6907bc2747776aa7e32c313866138c7b8c7bcb53110a214154d2
 DIST userg_revQ_e.pdf 627189 BLAKE2B 
ff57871c58dc541e30d65127bd8f4cc2a20ec5341c1d0914116f7ec4ae002d896853b99488eec71e5f8cb150e6b63d353efb9be11977de26d017701bc051014a
 SHA512 
b09d5143855a759e0fa3e74794762566b6fbf734642f9d7f712e5f2f20e3dce6b830465fd65f83f9cc368292ce7a2c0cec709b0eba6356d95e1ba5114b3348fc
 DIST userg_revQ_j.pdf 734920 BLAKE2B 
ed2cffdc2dbf0a2403dcbd93cef3349b9e35afb305f9b36f92b8f11bd42b5281fc7bfbec108703f327fb538868c530418406d37505e6eb6afa621d2d49d007ba
 SHA512 
d5cb0cebaae0ac36951379cad516f0575e85e0bb509cf88549239e300c7d6c6a4996497145acaa9e9783de6b08c6e352c7ffbedb23ed04c15eefbe9c3cf0bc90

diff --git a/media-gfx/iscan/files/iscan-3.62.0-fix-symbols.patch 
b/media-gfx/iscan/files/iscan-3.62.0-fix-symbols.patch
new file mode 100644
index 00000000000..4c0d44bf9ee
--- /dev/null
+++ b/media-gfx/iscan/files/iscan-3.62.0-fix-symbols.patch
@@ -0,0 +1,34 @@
+commit 4cbb42cc3d2c7e7574dc10f0e6f9f53bdf4d34e8
+Author: blubee <[email protected]>
+Date:   Sun Oct 22 16:22:23 2017 +0800
+
+    Export correct symbols
+    
+    The factory was renamed to scanner_factory in 4b77b4a4.
+
+diff --git a/drivers/Makefile.am b/drivers/Makefile.am
+index 86694ac..282eaa3 100644
+--- a/drivers/Makefile.am
++++ b/drivers/Makefile.am
+@@ -28,7 +28,7 @@ driverlibdir    = $(pkglibdir)
+ driverdatadir   = $(pkgsysconfdir)
+ driver_ldflags  = $(AM_LDFLAGS)
+ driver_ldflags += -export-dynamic
+-driver_ldflags += -export-symbols-regex libdrv_$(driver)_LTX_factory
++driver_ldflags += -export-symbols-regex libdrv_$(driver)_LTX_scanner_factory
+ 
+ driverlib_LTLIBRARIES = libdrv-combo.la
+ 
+diff --git a/drivers/esci/Makefile.am b/drivers/esci/Makefile.am
+index 78ed9be..9cb6bc8 100644
+--- a/drivers/esci/Makefile.am
++++ b/drivers/esci/Makefile.am
+@@ -37,7 +37,7 @@ driverlibdir    = $(pkglibdir)
+ driverdatadir   = $(pkgdatadir)/drivers/esci
+ driver_ldflags  = $(AM_LDFLAGS)
+ driver_ldflags += -export-dynamic
+-driver_ldflags += -export-symbols-regex libdrv_$(driver)_LTX_factory
++driver_ldflags += -export-symbols-regex libdrv_$(driver)_LTX_scanner_factory
+ 
+ driverlib_LTLIBRARIES = libdrv-esci.la
+ 

diff --git a/media-gfx/iscan/files/iscan-3.62.0-tests-boost.patch 
b/media-gfx/iscan/files/iscan-3.62.0-tests-boost.patch
new file mode 100644
index 00000000000..a5593512c0b
--- /dev/null
+++ b/media-gfx/iscan/files/iscan-3.62.0-tests-boost.patch
@@ -0,0 +1,81 @@
+commit 13f483741fb1da2bf3d5e96286d0fe84a3f77288
+Author: Olaf Meeuwissen <[email protected]>
+Date:   Sun Mar 3 21:25:46 2019 +0900
+
+    Switch BOOST_MESSAGE usage to use BOOST_TEST_MESSAGE
+    
+    The former has been marked as deprecated since Boost 1.34.0 and was
+    removed in 1.59.0 (released 2015-08-13).
+
+diff --git a/lib/tests/memory.cpp b/lib/tests/memory.cpp
+index 3fa21df..bf523df 100644
+--- a/lib/tests/memory.cpp
++++ b/lib/tests/memory.cpp
+@@ -1,5 +1,6 @@
+ //  memory.cpp -- unit tests for the memory device implementations
+ //  Copyright (C) 2012, 2015  SEIKO EPSON CORPORATION
++//  Copyright (C) 2019  Olaf Meeuwissen
+ //
+ //  License: GPL-3.0+
+ //  Author : EPSON AVASYS CORPORATION
+@@ -145,7 +146,7 @@ constant_octets (octet value)
+   const streamsize margin = 10;
+   const octet nul = 0x00;
+   traits::assign (buffer, size, nul);
+-  BOOST_MESSAGE ("value: " << value );
++  BOOST_TEST_MESSAGE ("value: " << value );
+ 
+   setmem_idevice dev (shared_ptr<setmem_idevice::generator>
+                       (new const_generator (value)));
+diff --git a/sane/tests/backend.cpp b/sane/tests/backend.cpp
+index f2ff7ef..e21edd0 100644
+--- a/sane/tests/backend.cpp
++++ b/sane/tests/backend.cpp
+@@ -1,5 +1,6 @@
+ //  backend.cpp -- unit tests for the SANE utsushi backend
+ //  Copyright (C) 2012, 2013, 2015  SEIKO EPSON CORPORATION
++//  Copyright (C) 2019  Olaf Meeuwissen
+ //
+ //  License: GPL-3.0+
+ //  Author : EPSON AVASYS CORPORATION
+@@ -755,8 +756,8 @@ drop_test_suite (const std::string& name)
+   but::traverse_test_tree (tuid, tcc);
+ 
+   master.remove (tuid);
+-  BOOST_MESSAGE ("Disabled \"" << name << "\" test suite for lack of "
+-                 "a mock device (" << tcc.p_count << " test cases)");
++  BOOST_TEST_MESSAGE ("Disabled \"" << name << "\" test suite for lack of "
++                      "a mock device (" << tcc.p_count << " test cases)");
+ }
+ 
+ bool
+@@ -766,7 +767,7 @@ init_test_runner ()
+ 
+   but::master_test_suite_t& master (but::framework::master_test_suite ());
+ 
+-  BOOST_MESSAGE ("Initializing \"" << master.p_name << "\" test suite");
++  BOOST_TEST_MESSAGE ("Initializing \"" << master.p_name << "\" test suite");
+ 
+   utsushi::monitor mon;    // to discover devices
+ 
+commit dcd5de24246b8ac5a96f971b6b0adfb910f5c60e
+Author: Olaf Meeuwissen <[email protected]>
+Date:   Sun Mar 3 21:40:39 2019 +0900
+
+    Add headers needed by Boost 1.59.0 and later
+
+diff --git a/sane/tests/backend.cpp b/sane/tests/backend.cpp
+index e21edd0..77fbf96 100644
+--- a/sane/tests/backend.cpp
++++ b/sane/tests/backend.cpp
+@@ -27,6 +27,10 @@
+ #include <cstring>
+ 
+ #include <boost/test/unit_test.hpp>
++#if 105800 <= BOOST_VERSION
++#include <boost/test/tree/test_case_counter.hpp>
++#include <boost/test/tree/traverse.hpp>
++#endif
+ #include <boost/preprocessor/cat.hpp>
+ 
+ #include <ltdl.h>

diff --git a/media-gfx/iscan/files/iscan-3.62.0-tests-linkage.patch 
b/media-gfx/iscan/files/iscan-3.62.0-tests-linkage.patch
new file mode 100644
index 00000000000..ecdf497fcb3
--- /dev/null
+++ b/media-gfx/iscan/files/iscan-3.62.0-tests-linkage.patch
@@ -0,0 +1,94 @@
+commit 1d58388b6fc4f5055c19d1815e3252625fd8ab3f
+Author: Olaf Meeuwissen <[email protected]>
+Date:   Sun Mar 3 21:22:28 2019 +0900
+
+    Fix link issues with the unit test runners
+
+diff --git a/drivers/esci/tests/Makefile.am b/drivers/esci/tests/Makefile.am
+index d00f129..9c8f766 100644
+--- a/drivers/esci/tests/Makefile.am
++++ b/drivers/esci/tests/Makefile.am
+@@ -1,5 +1,6 @@
+ ##  Makefile.am -- an automake template for Makefile.in
+ ##  Copyright (C) 2012-2015  SEIKO EPSON CORPORATION
++##  Copyright (C) 2019  Olaf Meeuwissen
+ ##
+ ##  License: GPL-3.0+
+ ##  Author : EPSON AVASYS CORPORATION
+@@ -39,16 +40,22 @@ AM_CPPFLAGS += -DESCI_GRAMMAR_TRACE=1
+ AM_LDFLAGS  += $(BOOST_LDFLAGS)
+ 
+ LDADD = ../libdrv-esci.la $(LIBUTSUSHI_LIBS)
+-grammar_formats_utr_LDADD   = $(LDADD) $(BOOST_FILESYSTEM_LIB)
+-grammar_utr_LDADD           = $(LDADD) $(BOOST_FILESYSTEM_LIB)
+-## FIXME: remove once usb connexion is a proper plugin
+-setter_utr_LDADD    = $(LDADD) ../../../connexions/libcnx-usb.la
++grammar_formats_utr_LDADD    = $(LDADD) $(BOOST_FILESYSTEM_LIB)
++grammar_utr_LDADD            = $(LDADD) $(BOOST_FILESYSTEM_LIB)
++udev_rules_utr_LDADD         = $(BOOST_UNIT_TEST_FRAMEWORK_LIB)
++udev_rules_utr_LDADD        += $(BOOST_FILESYSTEM_LIB)
++udev_rules_utr_LDADD        += $(BOOST_REGEX_LIB)
++## FIXME: remove when connexions are turned into proper plugins
++setter_utr_LDADD             = $(LDADD)
++setter_utr_LDADD            += ../../../connexions/libcnx-usb.la
++setter_utr_LDADD            += ../../../connexions/libcnx-hexdump.la
+ grammar_formats_utr_LDADD   += ../../../connexions/libcnx-usb.la
++grammar_formats_utr_LDADD   += ../../../connexions/libcnx-hexdump.la
+ grammar_utr_LDADD           += ../../../connexions/libcnx-usb.la
+-grammar_mechanics_utr_LDADD  = $(LDADD) ../../../connexions/libcnx-usb.la
+-udev_rules_utr_LDADD  = $(BOOST_UNIT_TEST_FRAMEWORK_LIB)
+-udev_rules_utr_LDADD += $(BOOST_FILESYSTEM_LIB)
+-udev_rules_utr_LDADD += $(BOOST_REGEX_LIB)
++grammar_utr_LDADD           += ../../../connexions/libcnx-hexdump.la
++grammar_mechanics_utr_LDADD  = $(LDADD)
++grammar_mechanics_utr_LDADD += ../../../connexions/libcnx-usb.la
++grammar_mechanics_utr_LDADD += ../../../connexions/libcnx-hexdump.la
+ 
+ endif
+ 
+diff --git a/filters/tests/Makefile.am b/filters/tests/Makefile.am
+index 4d88e48..ac198df 100644
+--- a/filters/tests/Makefile.am
++++ b/filters/tests/Makefile.am
+@@ -1,6 +1,6 @@
+ ##  Makefile.am -- an automake template for Makefile.in
+ ##  Copyright (C) 2012-2014  SEIKO EPSON CORPORATION
+-##  Copyright (C) 2013, 2015  Olaf Meeuwissen
++##  Copyright (C) 2013, 2015, 2019  Olaf Meeuwissen
+ ##
+ ##  License: GPL-3.0+
+ ##  Author : EPSON AVASYS CORPORATION
+@@ -39,8 +39,9 @@ endif
+ 
+ LDADD  = ../libflt-all.la
+ LDADD += ../../lib/libutsushi.la $(LIBUTSUSHI_LIBS)
+-##  FIXME: drop once usb connexion is a proper plugin
++##  FIXME: drop when connexions have been turned into proper plugins
+ LDADD += ../../connexions/libcnx-usb.la
++LDADD += ../../connexions/libcnx-hexdump.la
+ 
+ if have_libjpeg
+ check_PROGRAMS    += jpeg.utr
+diff --git a/lib/tests/Makefile.am b/lib/tests/Makefile.am
+index fc5eeb5..f24a7da 100644
+--- a/lib/tests/Makefile.am
++++ b/lib/tests/Makefile.am
+@@ -1,6 +1,6 @@
+ ##  Makefile.am -- an automake template for Makefile.in
+ ##  Copyright (C) 2012, 2013  SEIKO EPSON CORPORATION
+-##  Copyright (C) 2015  Olaf Meeuwissen
++##  Copyright (C) 2015, 2019  Olaf Meeuwissen
+ ##
+ ##  License: GPL-3.0+
+ ##  Author : EPSON AVASYS CORPORATION
+@@ -62,8 +62,9 @@ log_no_check_utr_CPPFLAGS += 
-DUTSUSHI_LOG_ARGUMENT_COUNT_CHECK_ENABLED=false
+ AM_CPPFLAGS += -DLOCALEDIR="\"$(localedir)\""
+ 
+ LDADD  = ../libutsushi.la $(LIBUTSUSHI_LIBS)
+-##  FIXME: drop once usb connexion is a proper plugin
++##  FIXME: drop when connexions have been turned into proper plugins
+ LDADD += ../../connexions/libcnx-usb.la
++LDADD += ../../connexions/libcnx-hexdump.la
+ 
+ if have_libtiff
+ test_runners      += tiff.utr

diff --git a/media-gfx/iscan/files/iscan-3.62.0-tests-tesseract.patch 
b/media-gfx/iscan/files/iscan-3.62.0-tests-tesseract.patch
new file mode 100644
index 00000000000..52f7b18e6b8
--- /dev/null
+++ b/media-gfx/iscan/files/iscan-3.62.0-tests-tesseract.patch
@@ -0,0 +1,111 @@
+commit 9ce60e8df3b613950c483f0ae5ec772afc329104
+Author: Olaf Meeuwissen <[email protected]>
+Date:   Fri Jun 21 22:20:30 2019 +0900
+
+    Fix tesseract command-line invocation.  Re #78
+
+diff --git a/filters/get-text-orientation b/filters/get-text-orientation
+index 847f2c6..6f0978c 100755
+--- a/filters/get-text-orientation
++++ b/filters/get-text-orientation
+@@ -47,26 +47,14 @@ if test $? != 0; then
+     exit 1
+ fi
+ 
+-tmpfile=$(mktemp -q .reorient.XXX)
+-trap "rm -f $tmpfile" 0 1 2 15
+-
+ case "$engine" in
+     */tesseract|tesseract)
+ 
+-        #  Notwithstanding what the manual page says, tesseract
+-        #  doesn't support reading from standard input with the
+-        #  `-psm 0` option.  We stuff incoming image data into a
+-        #  temporary file to work around this limitation.
+-        #  See https://github.com/tesseract-ocr/tesseract/issues/85
+-
+-        cat - > $tmpfile
++        #  Tesseract 3.03 outputs the results we want to standard
++        #  error; Tesseract 3.04 dumps it on standard output.  We
++        #  want it on the latter.
+ 
+-        #  We don't care about the "regular" tesseract output so
+-        #  divert that to /dev/null.  The output that we do care
+-        #  about ends up on standard error, but our caller looks
+-        #  for it on standard output.  Redirect to handle that.
+-
+-        $engine $tmpfile /dev/null -psm 0 -l osd 2>&1
++        $engine - - -psm 0 -l osd 2>&1
+         ;;
+ 
+     */ocr-engine-getrotate)
+@@ -74,6 +62,9 @@ case "$engine" in
+         #  The ocr-engine-getrotate utility expects an uncompressed
+         #  BMP image.
+ 
++        tmpfile=$(mktemp -q .reorient.XXX)
++        trap "rm -f $tmpfile" 0 1 2 15
++
+         $convert - -compress None bmp3:$tmpfile
+         $engine $tmpfile
+         ;;
+
+commit 56f1d8ed51cc7140b961ef8ab8c7501f69d87fd5
+Author: Olaf Meeuwissen <[email protected]>
+Date:   Mon Oct 21 12:41:20 2019 +0900
+
+    Fix get-text-orientation for newer Tesseract versions.  Fixes #86
+
+diff --git a/filters/get-text-orientation b/filters/get-text-orientation
+index 6f0978c..eb64e4b 100755
+--- a/filters/get-text-orientation
++++ b/filters/get-text-orientation
+@@ -51,10 +51,21 @@ case "$engine" in
+     */tesseract|tesseract)
+ 
+         #  Tesseract 3.03 outputs the results we want to standard
+-        #  error; Tesseract 3.04 dumps it on standard output.  We
+-        #  want it on the latter.
++        #  error; Tesseract 3.04 dumps it on standard output.  So
++        #  do later versions.  We want it on the latter.
++        #  Command-line options changed in 3.05.00.
+ 
+-        $engine - - -psm 0 -l osd 2>&1
++        version=$($engine --version 2>&1 | sed -n 's/.*tesseract *//p')
++
++        case "$version" in
++            3.0[34].* )
++                $engine - - -psm 0 -l osd 2>&1
++                ;;
++
++            3.05.* | [45].* )
++                $engine - - --psm 0 -l osd 2>&1
++                ;;
++        esac
+         ;;
+ 
+     */ocr-engine-getrotate)
+commit 9d5edc4c52e5a6b59d61a43ddcc13353b82992f5
+Author: Olaf Meeuwissen <[email protected]>
+Date:   Sun Jun 23 17:22:22 2019 +0900
+
+    Fix reorientation logic for newer Tesseract versions.  Re #78
+
+diff --git a/filters/reorient.cpp b/filters/reorient.cpp
+index e0c1dc1..60c5173 100644
+--- a/filters/reorient.cpp
++++ b/filters/reorient.cpp
+@@ -483,6 +483,13 @@ reorient::finalize (const context& ctx)
+         log::alert
+           (format ("unexpected document orientation: %1% degrees")
+            % degrees);
++
++      if (engine_ == "tesseract"
++          && !tesseract_version_before_("3.04")) {
++        // Orientation reporting changed direct with 3.04.  See #78
++        /**/ if ( 90 == degrees) rv.orientation (context::left_bottom);
++        else if (270 == degrees) rv.orientation (context::right_top);
++      }
+     }
+   return rv;
+ }

diff --git a/media-gfx/iscan/iscan-3.63.0.ebuild 
b/media-gfx/iscan/iscan-3.63.0.ebuild
new file mode 100644
index 00000000000..38ffdbed8e3
--- /dev/null
+++ b/media-gfx/iscan/iscan-3.63.0.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools desktop flag-o-matic udev xdg-utils
+
+DESCRIPTION="EPSON Image Scan v3 for Linux"
+HOMEPAGE="https://support.epson.net/linux/en/imagescanv3.php 
https://gitlab.com/utsushi/utsushi";
+SRC_URI="https://support.epson.net/linux/src/scanner/imagescanv3/common/imagescan_${PV}.orig.tar.gz";
+
+LICENSE="GPL-3+"
+SLOT="0"
+IUSE="graphicsmagick gui test"
+KEYWORDS="~amd64 ~x86"
+
+BDEPEND="virtual/pkgconfig"
+RDEPEND="
+       dev-libs/boost:=
+       media-gfx/sane-backends
+       media-libs/tiff
+       virtual/jpeg
+       virtual/libusb:1
+       graphicsmagick? ( media-gfx/graphicsmagick:=[cxx] )
+       !graphicsmagick? ( media-gfx/imagemagick:=[cxx] )
+       gui? ( dev-cpp/gtkmm:2.4 )
+"
+# Disable opencl as during reorient.utr test it produces inconsistent results
+DEPEND="${RDEPEND}
+       test? ( app-text/tesseract[training,-opencl] )
+"
+RESTRICT="!test? ( test )"
+S="${WORKDIR}/utsushi-0.$(ver_cut 2-3)"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-3.61.0-ijg-libjpeg.patch
+       "${FILESDIR}"/${PN}-3.61.0-imagemagick-7.patch
+       "${FILESDIR}"/${PN}-3.62.0-gcc-10.patch
+       "${FILESDIR}"/${PN}-3.62.0-boost-1.73.patch
+       "${FILESDIR}"/${PN}-3.62.0-fix-symbols.patch
+       "${FILESDIR}"/${PN}-3.62.0-tests-boost.patch
+       "${FILESDIR}"/${PN}-3.62.0-tests-tesseract.patch
+       "${FILESDIR}"/${PN}-3.62.0-tests-linkage.patch
+)
+
+src_prepare() {
+       default
+
+       # Remove vendored libraries
+       rm -r upstream/boost || die
+       # Workaround for deprecation warnings:
+       # https://gitlab.com/utsushi/utsushi/issues/90
+       sed -e 's|=-Werror|="-Werror -Wno-error=deprecated-declarations"|g' -i 
configure.ac || die
+       # Disable check-soname test
+       sed -e '/SANE_BACKEND_SANITY_CHECKS +=/d' -i sane/Makefile.am || die
+       eautoreconf
+}
+
+src_configure() {
+       # Workaround for:
+       # /usr/lib64/utsushi/libutsushi.so.0: undefined symbol: 
libcnx_usb_LTX_factory
+       append-ldflags $(no-as-needed)
+       # https://bugs.gentoo.org/720994
+       append-ldflags -pthread
+       local myconf=(
+               $(use_with gui gtkmm)
+               --enable-sane-config
+               --enable-udev-config
+               --with-boost=yes
+               --with-jpeg
+               --with-magick=$(usex graphicsmagick GraphicsMagick ImageMagick)
+               --with-magick-pp=$(usex graphicsmagick GraphicsMagick 
ImageMagick)
+               --with-sane
+               --with-tiff
+               --with-udev-confdir="$(get_udevdir)"
+       )
+       econf "${myconf[@]}"
+}
+
+src_install() {
+       default
+       dodoc lib/devices.conf
+       find "${ED}" -name '*.la' -delete || die
+       if use gui; then
+               newicon -s scalable doc/icon.svg "${PN}".svg
+               make_desktop_entry utsushi "Image Scan"
+       fi
+}
+
+pkg_postinst() {
+       use gui && xdg_icon_cache_update
+       elog "If you encounter problems with media-gfx/xsane when scanning 
(e.g., bad resolution),"
+       elog "please try the built-in GUI and kde-misc/skanlite first before 
reporting bugs."
+}
+
+pkg_postrm() {
+       use gui && xdg_icon_cache_update
+}

Reply via email to