Gentoo Archives: gentoo-commits

From: "Andreas Hüttel" <dilfridge@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-gfx/iscan/files/, media-gfx/iscan/
Date: Tue, 26 Sep 2017 17:48:37
Message-Id: 1506448085.e38656c8d9430ba339b7852115beb472509a409e.dilfridge@gentoo
1 commit: e38656c8d9430ba339b7852115beb472509a409e
2 Author: Matthew Schultz <mattsch <AT> gmail <DOT> com>
3 AuthorDate: Tue Sep 26 17:46:55 2017 +0000
4 Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
5 CommitDate: Tue Sep 26 17:48:05 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e38656c8
7
8 media-gfx/iscan: version bump, bug 596942
9
10 Closes: https://bugs.gentoo.org/596942
11 Closes: https://bugs.gentoo.org/595776
12
13 media-gfx/iscan/Manifest | 1 +
14 media-gfx/iscan/files/iscan-2.30.1.1-gcc6.patch | 11 ++
15 media-gfx/iscan/iscan-2.30.2.2.ebuild | 177 ++++++++++++++++++++++++
16 3 files changed, 189 insertions(+)
17
18 diff --git a/media-gfx/iscan/Manifest b/media-gfx/iscan/Manifest
19 index f1c23fac83d..f6b078770b7 100644
20 --- a/media-gfx/iscan/Manifest
21 +++ b/media-gfx/iscan/Manifest
22 @@ -1,3 +1,4 @@
23 DIST iscan_2.30.1-1.tar.gz 1217985 SHA256 79aa9a9f81a7146beb22a382bbaf840fbce61b1bdb82660e541946a471e48426 SHA512 0562be739b637ee78a5bf2612e7b148de60709c32550742383b76750688d48e42834acbe050c5f2fad26bd9063c9faff425bf906dcebc3e4160d17cd5481850a WHIRLPOOL f3492bff532779987aa8b47f8bb4a1a16164c3d77386d7906dc6b2c6a606b25bcdb4d15766971f8e9bb5b23c4522a3b601e4198212e8fddd54f75f046dda85ef
24 +DIST iscan_2.30.2-2.tar.gz 1216875 SHA256 ca2322a527ab41c8207b060ee54fc3782cba84c444bcf6b9c8ee32f7cda007d9 SHA512 bc5e871fa5e3baa62eee7b8b0a73abf2640a38f71f98248b1c9e1cace17c2a32de2f64c2a7527e8618f20e9913a16d0f55a8a94b3aea88ae8a157339e8bcf8e9 WHIRLPOOL 4727f6103639d6fe6e70f1651c4c5b2414ebd244ee395add2aa93849170c9abc815b82fd7fbcc0a3e2394a7fa0849ce5c58865d2a18e3bc4831a94b70ad28b49
25 DIST userg_revQ_e.pdf 627189 SHA256 7f40dfb94bf747a5059c17cba21e72e2485226ea41655453d010b46ed96e8a1c SHA512 b09d5143855a759e0fa3e74794762566b6fbf734642f9d7f712e5f2f20e3dce6b830465fd65f83f9cc368292ce7a2c0cec709b0eba6356d95e1ba5114b3348fc WHIRLPOOL f1497a87ad9b991a05a7a93ff5603944b1cadf00b5162498ff4c0ff1d85615de922324ee5574d0f8540e2d44fc2dede2a25157e562633f51b75eb8e4d4e56dc2
26 DIST userg_revQ_j.pdf 734920 SHA256 22d29bd17fe8c5772cdcdfb5201eff54eeaadebe3c94563ee4fcfc04579a1c4d SHA512 d5cb0cebaae0ac36951379cad516f0575e85e0bb509cf88549239e300c7d6c6a4996497145acaa9e9783de6b08c6e352c7ffbedb23ed04c15eefbe9c3cf0bc90 WHIRLPOOL 0f567a4d3543ea0df1d49e92211ba3811a03f200f828d4348eb00bb695df915ae75001faec52d616ff98d4da617ef6cfe95795ece33eeb114b0378892294647e
27
28 diff --git a/media-gfx/iscan/files/iscan-2.30.1.1-gcc6.patch b/media-gfx/iscan/files/iscan-2.30.1.1-gcc6.patch
29 new file mode 100644
30 index 00000000000..14a64bcdd9c
31 --- /dev/null
32 +++ b/media-gfx/iscan/files/iscan-2.30.1.1-gcc6.patch
33 @@ -0,0 +1,11 @@
34 +--- iscan-2.30.1/lib/jpegstream.cc.old 2016-10-12 02:55:47.345862674 -0400
35 ++++ iscan-2.30.1/lib/jpegstream.cc 2016-10-12 03:02:53.790439580 -0400
36 +@@ -82,7 +82,7 @@
37 + // only that _bits != 8.
38 + for (unsigned int i = 0; i < _h_sz; ++i)
39 + {
40 +- div_t index = div (i, 8 * sizeof (JSAMPLE));
41 ++ div_t index = div ((int) i, (int) 8 * sizeof (JSAMPLE));
42 + int offset = 8 * sizeof (JSAMPLE) - 1 - index.rem;
43 + _scanline[i] = ((line[index.quot] & (1 << offset))
44 + ? 0 : ~0);
45
46 diff --git a/media-gfx/iscan/iscan-2.30.2.2.ebuild b/media-gfx/iscan/iscan-2.30.2.2.ebuild
47 new file mode 100644
48 index 00000000000..81ed7d13b55
49 --- /dev/null
50 +++ b/media-gfx/iscan/iscan-2.30.2.2.ebuild
51 @@ -0,0 +1,177 @@
52 +# Copyright 1999-2016 Gentoo Foundation
53 +# Distributed under the terms of the GNU General Public License v2
54 +
55 +EAPI=6
56 +
57 +inherit eutils flag-o-matic autotools versionator
58 +
59 +# HINTS:
60 +# -> non-free modules are x86 and amd64 only
61 +# -> iscan frontend needs non-free modules
62 +# -> sane-epkowa should be usable on every arch
63 +# -> ${P}-${SRC_REV}.tar.gz (for gcc 3.2/3.3)
64 +# -> ${P}-${SRC_REV}.c2.tar.gz (for gcc 3.4 or later)
65 +
66 +# FIXME:
67 +# Make jpeg/png optional. The problem is, that the configure script ignores --disable-*,
68 +# if the corresponding lib is found on the system.
69 +# Furthermore, iscan doesn't compile w/o libusb, this should be fixed somehow.
70 +
71 +# TODO:
72 +# (re)add closed-source binary modules which are needed for some scanners.
73 +
74 +KEYWORDS="~amd64 ~x86"
75 +
76 +MY_PV="$(get_version_component_range 1-3)"
77 +MY_PVR="$(replace_version_separator 3 -)"
78 +MY_DOC="userg_revQ"
79 +
80 +DESCRIPTION="EPSON Image Scan! for Linux (including sane-epkowa backend)"
81 +HOMEPAGE="http://download.ebz.epson.net/dsc/search/01/search/?OSC=LX"
82 +SRC_URI="http://support.epson.net/linux/src/scanner/iscan/${PN}_${MY_PVR}.tar.gz
83 + doc? (
84 + https://dev.gentoo.org/~flameeyes/avasys/${MY_DOC}_e.pdf
85 + l10n_ja? ( https://dev.gentoo.org/~flameeyes/avasys/${MY_DOC}_j.pdf )
86 + )"
87 +LICENSE="GPL-2 AVASYS"
88 +SLOT="0"
89 +
90 +IUSE="X doc gimp jpeg png tiff l10n_ja"
91 +IUSE_LINGUAS="ar de es fr it ja ko nl pt zh_CN zh_TW"
92 +
93 +for X in ${IUSE_LINGUAS}; do IUSE="${IUSE} linguas_${X}"; done
94 +
95 +REQUIRED_USE="gimp? ( X )
96 + jpeg? ( X )
97 + png? ( X )
98 + tiff? ( X )"
99 +
100 +QA_PRESTRIPPED="usr/lib*/libesmod.so.*"
101 +QA_TEXTRELS="${QA_PRESTRIPPED}"
102 +QA_FLAGS_IGNORED="${QA_PRESTRIPPED}"
103 +
104 +# Upstream ships broken sanity test
105 +RESTRICT="test"
106 +
107 +RDEPEND="dev-libs/libxml2
108 + media-gfx/iscan-data
109 + media-gfx/sane-backends
110 + virtual/udev
111 + virtual/libusb:1
112 + X? ( x11-libs/gtk+:2 )
113 + gimp? ( media-gfx/gimp )
114 + jpeg? ( virtual/jpeg:= )
115 + png? ( media-libs/libpng:= )
116 + tiff? ( media-libs/tiff:= )"
117 +
118 +DEPEND="${RDEPEND}
119 + virtual/pkgconfig
120 + X? ( sys-devel/gettext )"
121 +
122 +S="${WORKDIR}/${PN}-${MY_PV}"
123 +
124 +src_prepare() {
125 + eapply_user
126 + local i
127 +
128 + # convert japanese docs to UTF-8
129 + if use l10n_ja; then
130 + for i in {NEWS,README}.ja non-free/*.ja.txt; do
131 + if [ -f "${i}" ]; then
132 + echo ">>> Converting ${i} to UTF-8"
133 + iconv -f eucjp -t utf8 -o "${i}~" "${i}" && mv -f "${i}~" "${i}" || rm -f "${i}~"
134 + fi
135 + done
136 + fi
137 +
138 + # disable checks for gtk+
139 + if ! use X; then
140 + sed -i -e "s:PKG_CHECK_MODULES(GTK,.*):AC_DEFINE([HAVE_GTK_2], 0):g" \
141 + -e "s:\(PKG_CHECK_MODULES(GDK_IMLIB,.*)\):#\1:g" configure.ac || die
142 + fi
143 +
144 + epatch "${FILESDIR}"/iscan-2.29.1-drop-ltdl.patch
145 + epatch "${FILESDIR}"/iscan-2.28.1.3+libpng-1.5.patch
146 + epatch "${FILESDIR}"/iscan-2.29.1-png-libs.patch
147 + epatch "${FILESDIR}"/iscan-2.30.1-fix-g++-test.patch
148 + epatch "${FILESDIR}"/iscan-2.30.1.1-gcc6.patch
149 +
150 + eautoreconf
151 +}
152 +
153 +src_configure() {
154 + append-cppflags -D_GNU_SOURCE # needed for 'strndup'
155 + # Fix selector box bug 388073
156 + replace-flags "-O[0-9s]" "-O1"
157 +
158 + local myconf=(
159 + --enable-dependency-reduction
160 + --disable-static
161 + $(use_enable X frontend)
162 + $(use_enable gimp)
163 + $(use_enable jpeg)
164 + $(use_enable png)
165 + $(use_enable tiff)
166 + )
167 + econf ${myconf[@]}
168 +}
169 +
170 +src_install() {
171 + local MY_LIB="/usr/$(get_libdir)"
172 + emake DESTDIR="${D}" install || die "emake install failed"
173 +
174 + # install docs
175 + dodoc AUTHORS NEWS README
176 + use l10n_ja && dodoc NEWS.ja README.ja
177 +
178 + # install sane config
179 + insinto /etc/sane.d
180 + doins backend/epkowa.conf
181 +
182 + # install extra docs
183 + if use doc; then
184 + insinto /usr/share/doc/${PF}
185 + if use l10n_ja; then
186 + doins "${DISTDIR}/${MY_DOC}_j.pdf"
187 + else
188 + doins "${DISTDIR}/${MY_DOC}_e.pdf"
189 + fi
190 + fi
191 +
192 + # link iscan so it is seen as a plugin in gimp
193 + if use X && use gimp; then
194 + local plugindir
195 + if [ -x /usr/bin/gimptool ]; then
196 + plugindir="$(gimptool --gimpplugindir)/plug-ins" || die "Failed to get gimpplugindir"
197 + elif [ -x /usr/bin/gimptool-2.0 ]; then
198 + plugindir="$(gimptool-2.0 --gimpplugindir)/plug-ins" || die "Failed to get gimpplugindir"
199 + else
200 + die "Can't find GIMP plugin directory."
201 + fi
202 + dodir "${plugindir}"
203 + dosym /usr/bin/iscan "${plugindir}"/iscan
204 + fi
205 +
206 + # install desktop entry
207 + if use X; then
208 + make_desktop_entry iscan "Image Scan! for Linux ${PV}" scanner
209 + fi
210 +}
211 +
212 +pkg_postinst() {
213 + local i
214 + local DLL_CONF="/etc/sane.d/dll.conf"
215 + local EPKOWA_CONF="/etc/sane.d/epkowa.conf"
216 +
217 + elog
218 + if grep -q "^[ \t]*\<epkowa\>" ${DLL_CONF}; then
219 + elog "Please edit ${EPKOWA_CONF} to suit your needs."
220 + elif grep -q "\<epkowa\>" ${DLL_CONF}; then
221 + elog "Hint: to enable the backend, add 'epkowa' to ${DLL_CONF}"
222 + elog "Then edit ${EPKOWA_CONF} to suit your needs."
223 + else
224 + echo "epkowa" >> ${DLL_CONF}
225 + elog "A new entry 'epkowa' was added to ${DLL_CONF}"
226 + elog "Please edit ${EPKOWA_CONF} to suit your needs."
227 + fi
228 +}