summaryrefslogtreecommitdiff
path: root/media-gfx
diff options
context:
space:
mode:
authorMarcin Deranek <marcin.deranek@booking.com>2020-06-28 22:27:25 +0200
committerMarcin Deranek <marcin.deranek@booking.com>2020-06-28 22:27:31 +0200
commit47dba9f472b52edf92599aa836782322c426d98e (patch)
treeeea16ed0703a36193455b5716401840cacdc0d6d /media-gfx
parentcc3785dae97ece3d2f85f7ae4e00c13c32ef49ac (diff)
downloadportage-47dba9f472b52edf92599aa836782322c426d98e.tar.gz
portage-47dba9f472b52edf92599aa836782322c426d98e.tar.bz2
portage-47dba9f472b52edf92599aa836782322c426d98e.zip
iscan bump
Diffstat (limited to 'media-gfx')
-rw-r--r--media-gfx/iscan/Manifest6
-rw-r--r--media-gfx/iscan/files/iscan-3.61.0-ijg-libjpeg.patch45
-rw-r--r--media-gfx/iscan/files/iscan-3.61.0-imagemagick-7.patch54
-rw-r--r--media-gfx/iscan/files/iscan-3.62.0-boost-1.73.patch44
-rw-r--r--media-gfx/iscan/files/iscan-3.62.0-gcc-10.patch20
-rw-r--r--media-gfx/iscan/iscan-3.63.0.ebuild89
6 files changed, 258 insertions, 0 deletions
diff --git a/media-gfx/iscan/Manifest b/media-gfx/iscan/Manifest
new file mode 100644
index 0000000..ddfefa3
--- /dev/null
+++ b/media-gfx/iscan/Manifest
@@ -0,0 +1,6 @@
+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-gcc-10.patch 503 BLAKE2B 53a351f439f43003e668cad1b8f05231b58137dd4e4a88ea3b04aa326f8ae82d46e664d19a5fba89122c6959e9aeb33beab56a43128c73b483d99c9ec25bf835 SHA512 b32438d590419a8be3c7f28a545ed4dedab0a6f0bcd0c9f3a81def67164c4156dd52064d8d8ca93cf2550b2184de12c94cffd6b91ef82d832179eb3e9f554326
+DIST imagescan_3.63.0.orig.tar.gz 12776113 BLAKE2B d1a9f1d60ba4a2239c6ed74f7f9e0da078e2743e78e0abb67a69506bf90ac35b069f84b5a092a6eb8fd73f60eb668e78b4c7fae56b3a65b6b3d8600f082c064a SHA512 3c9b18e630d6fb1c042244542675e89a8b467469d7212ab684f72100810d1f7d0ec16d13c472a83ca05a3a4fc44e366f692a36cd6b0e81c9a332dd3b40de9535
+EBUILD iscan-3.63.0.ebuild 2332 BLAKE2B efe846efa66cc80dc3675dc4e1cff7c20eb7902a8523e251bff906c694c0585f34a8f0779235339bdb58442deb8c3e03ae0fef425ca7c6b90ca0d56113da6ca0 SHA512 53ae2081a1956a68deb8dfa3f7b4312ff6b2239300a5cecb3d9aaf8e170906097ca056bf8e7c3c4e5cf566bd0336500305f1dcb85cf429513ecb50cd45a80049
diff --git a/media-gfx/iscan/files/iscan-3.61.0-ijg-libjpeg.patch b/media-gfx/iscan/files/iscan-3.61.0-ijg-libjpeg.patch
new file mode 100644
index 0000000..2625741
--- /dev/null
+++ b/media-gfx/iscan/files/iscan-3.61.0-ijg-libjpeg.patch
@@ -0,0 +1,45 @@
+--- a/filters/jpeg.cpp
++++ b/filters/jpeg.cpp
+@@ -410,13 +410,13 @@
+ cinfo_.image_height = ctx_.height ();
+
+ jpeg_set_defaults (&cinfo_);
+- jpeg_set_quality (&cinfo_, quality_, true);
++ jpeg_set_quality (&cinfo_, quality_, TRUE);
+
+ cinfo_.density_unit = 1; // in dpi
+ cinfo_.X_density = ctx_.x_resolution ();
+ cinfo_.Y_density = ctx_.y_resolution ();
+
+- jpeg_start_compress (&cinfo_, true);
++ jpeg_start_compress (&cinfo_, TRUE);
+
+ cache_ = new octet[ctx_.octets_per_line ()];
+ cache_size_ = ctx_.octets_per_line ();
+@@ -462,7 +462,7 @@
+ dmgr_.next_output_byte = jbuf_ + (jbuf_size_ - n);
+ dmgr_.free_in_buffer = n;
+
+- return true;
++ return TRUE;
+ }
+
+ void
+@@ -535,7 +535,7 @@
+
+ //jpegデータの一部が分割されて送られてきても正常に動作するように変更
+
+- return false;
++ return FALSE;
+ }
+
+ void
+@@ -580,7 +580,7 @@
+ {
+ if (!header_done_)
+ {
+- if (JPEG_SUSPENDED == jpeg_read_header (&cinfo_, true))
++ if (JPEG_SUSPENDED == jpeg_read_header (&cinfo_, TRUE))
+ {
+ log::trace ("jpeg_read_header suspended");
+ if (!reclaim_space ())
diff --git a/media-gfx/iscan/files/iscan-3.61.0-imagemagick-7.patch b/media-gfx/iscan/files/iscan-3.61.0-imagemagick-7.patch
new file mode 100644
index 0000000..9d345a2
--- /dev/null
+++ b/media-gfx/iscan/files/iscan-3.61.0-imagemagick-7.patch
@@ -0,0 +1,54 @@
+From 222aa3e123ee771d8997f6931997e3143186e0d6 Mon Sep 17 00:00:00 2001
+From: sirjaren <sirjaren@gmail.com>
+Date: Tue, 20 Feb 2018 13:35:46 -0600
+Subject: [PATCH] media-gfx/utsushi: ImageMagick deskew/crop support
+
+Fixes to allow utsushi to be built with --magick-pp. According to:
+ https://github.com/utsushi/utsushi/issues/43
+
+The API changes from ImageMagick 6 to 7 means build failures as there
+are old API's in use. It seems, that these API's are not actually used
+(as in GraphicsMagick doesn't use them), so it may be ok to disable the
+checks for them in 'doc-locate.cpp'.
+
+This is not yet confirmed, but allows building and using deskew in my
+own testing.
+---
+ .../files/utsushi-9999-magick-pp.patch | 33 ++++++++++
+ 4 files changed, 111 insertions(+), 8 deletions(-)
+ create mode 100644 media-gfx/utsushi/files/utsushi-9999-boost.patch
+ create mode 100644 media-gfx/utsushi/files/utsushi-9999-magick-pp.patch
+
+diff --git a/filters/doc-locate.cpp b/filters/doc-locate.cpp
+index 4b09b29..4508274 100644
+--- a/filters/doc-locate.cpp
++++ b/filters/doc-locate.cpp
+@@ -260,17 +260,17 @@ public:
+ clone.rotate (deskew_angle ());
+
+ Magick::Geometry rv = bbox (clone);
+- if (HAVE_IMAGE_MAGICK_PP)
+- {
+- if (clone.page ().xNegative ())
+- rv.xOff (rv.xOff () - clone.page ().xOff());
+- else
+- rv.xOff (rv.xOff () + clone.page ().xOff());
+- if (clone.page ().yNegative ())
+- rv.yOff (rv.yOff () - clone.page ().yOff());
+- else
+- rv.yOff (rv.yOff () + clone.page ().yOff());
+- }
++ /*if (HAVE_IMAGE_MAGICK_PP)
++ *{
++ * if (clone.page ().xNegative ())
++ * rv.xOff (rv.xOff () - clone.page ().xOff());
++ * else
++ * rv.xOff (rv.xOff () + clone.page ().xOff());
++ * if (clone.page ().yNegative ())
++ * rv.yOff (rv.yOff () - clone.page ().yOff());
++ * else
++ * rv.yOff (rv.yOff () + clone.page ().yOff());
++ }*/
+ return scale (rv);
+ }
+
diff --git a/media-gfx/iscan/files/iscan-3.62.0-boost-1.73.patch b/media-gfx/iscan/files/iscan-3.62.0-boost-1.73.patch
new file mode 100644
index 0000000..da6cc66
--- /dev/null
+++ b/media-gfx/iscan/files/iscan-3.62.0-boost-1.73.patch
@@ -0,0 +1,44 @@
+diff -urN a/drivers/esci/verify.cpp b/drivers/esci/verify.cpp
+--- a/drivers/esci/verify.cpp 2019-11-18 04:08:45.000000000 +0200
++++ b/drivers/esci/verify.cpp 2020-05-09 20:22:00.899968638 +0300
+@@ -58,6 +58,7 @@
+
+ using namespace utsushi;
+ using namespace _drv_::esci;
++using namespace boost::placeholders;
+
+ using std::basic_string;
+ using std::ios_base;
+diff -urN a/lib/monitor.cpp b/lib/monitor.cpp
+--- a/lib/monitor.cpp 2019-11-18 04:08:08.000000000 +0200
++++ b/lib/monitor.cpp 2020-05-09 20:22:26.392174029 +0300
+@@ -49,6 +49,7 @@
+ namespace utsushi {
+
+ using boost::filesystem::exists;
++using namespace boost::placeholders;
+
+ class monitor::impl
+ {
+diff -urN a/sane/handle.cpp b/sane/handle.cpp
+--- a/sane/handle.cpp 2019-11-18 04:08:08.000000000 +0200
++++ b/sane/handle.cpp 2020-05-09 20:21:49.559223712 +0300
+@@ -65,6 +65,7 @@
+ using utsushi::_flt_::deskew;
+ using utsushi::_flt_::autocrop;
+ using utsushi::_flt_::pnm;
++using namespace boost::placeholders;
+
+ namespace sane {
+
+--- utsushi-0.62.0/gtkmm/pump.cpp.orig 2019-11-18 03:08:48.000000000 +0100
++++ utsushi-0.62.0/gtkmm/pump.cpp 2020-05-10 21:59:32.986379049 +0200
+@@ -31,6 +31,8 @@
+ namespace utsushi {
+ namespace gtkmm {
+
++using namespace boost::placeholders;
++
+ pump::pump (idevice::ptr idev)
+ : utsushi::pump (idev)
+ , idev_ptr_(idev)
diff --git a/media-gfx/iscan/files/iscan-3.62.0-gcc-10.patch b/media-gfx/iscan/files/iscan-3.62.0-gcc-10.patch
new file mode 100644
index 0000000..4f8c63c
--- /dev/null
+++ b/media-gfx/iscan/files/iscan-3.62.0-gcc-10.patch
@@ -0,0 +1,20 @@
+--- a/utsushi/string.hpp 2020-05-08 23:20:11.642359134 +0200
++++ b/utsushi/string.hpp 2020-05-08 23:20:21.834246187 +0200
+@@ -23,6 +23,7 @@
+
+ #include <iosfwd>
+ #include <string>
++#include <iostream>
+
+ #include <boost/operators.hpp>
+
+--- a/utsushi/toggle.hpp 2019-11-18 03:08:06.000000000 +0100
++++ b/utsushi/toggle.hpp 2020-05-08 23:23:40.284045167 +0200
+@@ -22,6 +22,7 @@
+ #define utsushi_toggle_hpp_
+
+ #include <iosfwd>
++#include <iostream>
+ #include <boost/operators.hpp>
+
+ namespace utsushi {
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 0000000..92b6067
--- /dev/null
+++ b/media-gfx/iscan/iscan-3.63.0.ebuild
@@ -0,0 +1,89 @@
+# 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"
+KEYWORDS="~amd64 ~x86"
+
+BDEPEND="virtual/pkgconfig"
+DEPEND="
+ 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 )
+"
+RDEPEND="${DEPEND}"
+
+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
+)
+
+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
+ 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
+}