summaryrefslogtreecommitdiff
path: root/media-gfx/iscan
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2020-08-25 10:45:55 +0100
committerV3n3RiX <venerix@redcorelinux.org>2020-08-25 10:45:55 +0100
commit3cf7c3ef441822c889356fd1812ebf2944a59851 (patch)
treec513fe68548b40365c1c2ebfe35c58ad431cdd77 /media-gfx/iscan
parent05b8b0e0af1d72e51a3ee61522941bf7605cd01c (diff)
gentoo resync : 25.08.2020
Diffstat (limited to 'media-gfx/iscan')
-rw-r--r--media-gfx/iscan/Manifest8
-rw-r--r--media-gfx/iscan/files/iscan-3.62.0-fix-symbols.patch34
-rw-r--r--media-gfx/iscan/files/iscan-3.62.0-tests-boost.patch81
-rw-r--r--media-gfx/iscan/files/iscan-3.62.0-tests-linkage.patch94
-rw-r--r--media-gfx/iscan/files/iscan-3.62.0-tests-tesseract.patch111
-rw-r--r--media-gfx/iscan/iscan-3.62.0.ebuild2
-rw-r--r--media-gfx/iscan/iscan-3.63.0.ebuild101
7 files changed, 430 insertions, 1 deletions
diff --git a/media-gfx/iscan/Manifest b/media-gfx/iscan/Manifest
index 940d6b363f7c..2d01d4bd7b72 100644
--- a/media-gfx/iscan/Manifest
+++ b/media-gfx/iscan/Manifest
@@ -8,11 +8,17 @@ AUX iscan-2.30.4.2-sscanf.patch 779 BLAKE2B 8e8255c0558e225b3c1bcb5faaf42f0d7941
AUX iscan-3.61.0-ijg-libjpeg.patch 1145 BLAKE2B 781c0c9a40848f9c10ddb3418c55b6c4a145f1590c5ec41e22e371830d3d7d63c4e013d8fa69a1f15f24d4883d569c0645df66b3c6120eb724f3a1f9643e3813 SHA512 b570bc0e6aa73f74750aaab4d3ca84838864c8723b14fbf5a45fe9163be3e7819035a12bd058587a4b4964325ba4af99673e78647b11d2a7b1bcf96039522191
AUX iscan-3.61.0-imagemagick-7.patch 1965 BLAKE2B 14685cc9540ccfda87587b5ff2df7b8c4755dd08bb428f33ce853c32baaf6ab7e6b2d3368df9153fa5f5b39d9ef17b8e468ea59530ac89098107542db2638f05 SHA512 d5545570865370229f2b132aef7131cbbfabd7e929795bee6ce1e0d791c2c623eefabdd0ec265c6cadcc41072049d61e07d5fca46a1f51c621323a38112dc316
AUX iscan-3.62.0-boost-1.73.patch 1315 BLAKE2B 801f6f9e2f91b4a442b673a2cd9630519ea10e08131877eb09ac52bc190316bfdc98fa1ae572ac2122bd9999a10af421d808762b0d7ca07b249d94428acbfb01 SHA512 183cd4e12451dd66ae096cccdc4ea9fdb4264935894a4442aa094e42ca539ad3f9fec6b01aaac3f20263a3425956808a342de886465b6e9700a7c449c031431f
+AUX iscan-3.62.0-fix-symbols.patch 1213 BLAKE2B 2a3b09e88ba1d44d11440bac0ca11f28f4379a2a81000fa2543b9041ccedff51db77edb70dd452631c600ecc04e7d5f0e68c53a071a9b40d34cdd690c7ed8a24 SHA512 adfcb7b83f26aa03f612025abcc52b6dda8d4439ea0a0b554dac5f335dab9c9c2606ed1835c89ac26a7f34e49264560ed837c06831ae4addeb711b77a7d0dffa
AUX iscan-3.62.0-gcc-10.patch 503 BLAKE2B 53a351f439f43003e668cad1b8f05231b58137dd4e4a88ea3b04aa326f8ae82d46e664d19a5fba89122c6959e9aeb33beab56a43128c73b483d99c9ec25bf835 SHA512 b32438d590419a8be3c7f28a545ed4dedab0a6f0bcd0c9f3a81def67164c4156dd52064d8d8ca93cf2550b2184de12c94cffd6b91ef82d832179eb3e9f554326
+AUX iscan-3.62.0-tests-boost.patch 2819 BLAKE2B 8c11f7bd80c5cbc0c34c0aacf605a914e908f4a9d3cf18b4e105c4a2c6fddefd414bd7e77015d1992e53dad6df6a797d6bdc4ee534ced9e17eb0091afae4306b SHA512 4bcdd5a747c3e2608bf8b7fb0e4e7354474dccd727d3bd11b0911ffe8ea050a412f241687a15524a479a3f13b87c95c04092b8cf15f922f5f95cc234fe8736d4
+AUX iscan-3.62.0-tests-linkage.patch 3921 BLAKE2B 0dedae75fbbe387d2db900eb88b0e839746cfcbfa2b2ed7d52f9fd1b6756f14aa8fc53708ab2d1e461dff25ebe4e73e97f647ba4792bd263021f9b94f7b50139 SHA512 0b84829871ef45acf0ac209a0ba315b88409429c454b4655a4004c9d1afddf88d1ae0b1fff891078f5cf68541f7a8d896d50a550b650f1157517d5dbc99bfbd4
+AUX iscan-3.62.0-tests-tesseract.patch 3825 BLAKE2B ee16bab5f36e866d2a212f832f90b8fa078cfea51dd81ae8175086ce896b718c52f2dd5c56ba15ddf89427abde6231b93672a71467d18fc47c45fdd166efce54 SHA512 63cf6b7f42f6cc1dfc05e9a5d333514aa56ba658e96a860b753d9a120df79a41abbd0fcc04070e103908bf05648dcdff96eab343981fa0f5293aee4258309980
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
EBUILD iscan-2.30.4.2.ebuild 3958 BLAKE2B 3e1284c43d52dd91a6b9e88c2c8d5aef7ee76ed2c7b7a1e0d35781db6f5882efe1ea6c1b1152df86bf0b831941a271bf8c5a9c75fb2fe26646e99d2f73d17da8 SHA512 9b23f93cc94371c33036fec992c96baec8e94b743e732c8579755eec94cfc35ec79c95b879df664783818e03cff648c932e23217b856537a3875bab9c38a228a
-EBUILD iscan-3.62.0.ebuild 2273 BLAKE2B 4a02fac7387177a601987b9a95d1aa9a43ce2fad8d78ea0ddb1b24b66ba6f5f011eea84bd9f3ce3ae7d5c6342276f67d407acb95e1bfb9ad4c65dec87aeb5caf SHA512 8894b992db9e4edbc35621384443f329df1d28be28576cb495d3877df6e9e307d220c33f5529db6dfb5bb43fc6a3f57a96dd164e825df6875070ba2866449183
+EBUILD iscan-3.62.0.ebuild 2332 BLAKE2B efe846efa66cc80dc3675dc4e1cff7c20eb7902a8523e251bff906c694c0585f34a8f0779235339bdb58442deb8c3e03ae0fef425ca7c6b90ca0d56113da6ca0 SHA512 53ae2081a1956a68deb8dfa3f7b4312ff6b2239300a5cecb3d9aaf8e170906097ca056bf8e7c3c4e5cf566bd0336500305f1dcb85cf429513ecb50cd45a80049
+EBUILD iscan-3.63.0.ebuild 2804 BLAKE2B 74641d8af25e44ff40550977f1ef83fe1f61c01a5d9579e8bca2807cc8566744f2766d4e0be66080155bde35e53e5bf1329574ced45fd94722fcb60082388685 SHA512 21134488ce22b77c190ec26505bb7bf2181b25b7008849cf88d61596154ecdaba2666aa9526d875c4816ba1a0b6a621b27791904d6f6ca5b159ad0cbf7e562c2
MISC metadata.xml 930 BLAKE2B d2cf4fae5cdcb660357ffe5566ad8d99eef6287f565a45f1824c810b3979e9d2930f458766ff524b231ef8dfd793062ff23cf4bfc2a78a36c5393a6c4224feea SHA512 d609a5cd8f8bbc7653e784d153757849eafb9c772355d0928325a6ecf673e8aa055623601d957f912709f9f16acfde5ca0b0480a1f2a17bfc24825895d861fc0
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 000000000000..4c0d44bf9ee0
--- /dev/null
+++ b/media-gfx/iscan/files/iscan-3.62.0-fix-symbols.patch
@@ -0,0 +1,34 @@
+commit 4cbb42cc3d2c7e7574dc10f0e6f9f53bdf4d34e8
+Author: blubee <gurenchan@gmail.com>
+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 000000000000..a5593512c0b2
--- /dev/null
+++ b/media-gfx/iscan/files/iscan-3.62.0-tests-boost.patch
@@ -0,0 +1,81 @@
+commit 13f483741fb1da2bf3d5e96286d0fe84a3f77288
+Author: Olaf Meeuwissen <paddy-hack@member.fsf.org>
+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 <paddy-hack@member.fsf.org>
+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 000000000000..ecdf497fcb36
--- /dev/null
+++ b/media-gfx/iscan/files/iscan-3.62.0-tests-linkage.patch
@@ -0,0 +1,94 @@
+commit 1d58388b6fc4f5055c19d1815e3252625fd8ab3f
+Author: Olaf Meeuwissen <paddy-hack@member.fsf.org>
+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 000000000000..52f7b18e6b89
--- /dev/null
+++ b/media-gfx/iscan/files/iscan-3.62.0-tests-tesseract.patch
@@ -0,0 +1,111 @@
+commit 9ce60e8df3b613950c483f0ae5ec772afc329104
+Author: Olaf Meeuwissen <paddy-hack@member.fsf.org>
+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 <paddy-hack@member.fsf.org>
+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 <paddy-hack@member.fsf.org>
+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.62.0.ebuild b/media-gfx/iscan/iscan-3.62.0.ebuild
index 7f8e4fae37b8..92b606786000 100644
--- a/media-gfx/iscan/iscan-3.62.0.ebuild
+++ b/media-gfx/iscan/iscan-3.62.0.ebuild
@@ -51,6 +51,8 @@ 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
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 000000000000..7a56c9f57049
--- /dev/null
+++ b/media-gfx/iscan/iscan-3.63.0.ebuild
@@ -0,0 +1,101 @@
+# 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]
+ media-fonts/dejavu
+ )
+"
+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
+}