Gentoo Archives: gentoo-commits

From: Joonas Niilola <juippis@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-gfx/iscan/, media-gfx/iscan/files/
Date: Sat, 21 Sep 2019 15:35:48
Message-Id: 1569080133.09ad8b4a33b46cd744018d3569deb8d42e5fe47f.juippis@gentoo
1 commit: 09ad8b4a33b46cd744018d3569deb8d42e5fe47f
2 Author: Matthew Schultz <mattsch <AT> gmail <DOT> com>
3 AuthorDate: Thu Sep 19 17:16:11 2019 +0000
4 Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org>
5 CommitDate: Sat Sep 21 15:35:33 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=09ad8b4a
7
8 media-gfx/iscan: 2.30.4.2 version bump
9
10 Closes: https://bugs.gentoo.org/693994
11 Signed-off-by: Matthew Schultz <mattsch <AT> gmail.com>
12 Package-Manager: Portage-2.3.69, Repoman-2.3.16
13 Closes: https://github.com/gentoo/gentoo/pull/12901
14 Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
15
16 media-gfx/iscan/Manifest | 1 +
17 media-gfx/iscan/files/iscan-2.30.4.2-sscanf.patch | 21 +++
18 media-gfx/iscan/iscan-2.30.4.2.ebuild | 152 ++++++++++++++++++++++
19 3 files changed, 174 insertions(+)
20
21 diff --git a/media-gfx/iscan/Manifest b/media-gfx/iscan/Manifest
22 index 94b2fb3de0d..abaf00fa7ad 100644
23 --- a/media-gfx/iscan/Manifest
24 +++ b/media-gfx/iscan/Manifest
25 @@ -1,3 +1,4 @@
26 DIST iscan_2.30.3-1.tar.gz 1216848 BLAKE2B 8a5f485c1dd814248c46aec6accedd331105c3ccc0f70a582e60dfb62b1cc1f1ebab358f0896b15cbf842ea06f8a35447d91f76391b10bad07df371512856c32 SHA512 5f68b2f7b7c1d1b5d3d65a55c3a80538fda5d2bdf9cd50fbf942e0eb49dcb84983ede66ed2f6354f9591692808df54415400fe02ed47e7373082869612a47872
27 +DIST iscan_2.30.4-2.tar.gz 1236167 BLAKE2B 598e55aa7099f7973b38f5c3227415c8ddfa7e8c645521981b4e8979047ab692427f5c1719fd83fe0635f2d4604f32f0baff8542f3e1a333298799c4cad7b980 SHA512 b12f374ff8ee1e1879fc6dbc579de39d7bcd4777ec7ad6e4345046f77b4ec13ae45ebdc2803d6907bc2747776aa7e32c313866138c7b8c7bcb53110a214154d2
28 DIST userg_revQ_e.pdf 627189 BLAKE2B ff57871c58dc541e30d65127bd8f4cc2a20ec5341c1d0914116f7ec4ae002d896853b99488eec71e5f8cb150e6b63d353efb9be11977de26d017701bc051014a SHA512 b09d5143855a759e0fa3e74794762566b6fbf734642f9d7f712e5f2f20e3dce6b830465fd65f83f9cc368292ce7a2c0cec709b0eba6356d95e1ba5114b3348fc
29 DIST userg_revQ_j.pdf 734920 BLAKE2B ed2cffdc2dbf0a2403dcbd93cef3349b9e35afb305f9b36f92b8f11bd42b5281fc7bfbec108703f327fb538868c530418406d37505e6eb6afa621d2d49d007ba SHA512 d5cb0cebaae0ac36951379cad516f0575e85e0bb509cf88549239e300c7d6c6a4996497145acaa9e9783de6b08c6e352c7ffbedb23ed04c15eefbe9c3cf0bc90
30
31 diff --git a/media-gfx/iscan/files/iscan-2.30.4.2-sscanf.patch b/media-gfx/iscan/files/iscan-2.30.4.2-sscanf.patch
32 new file mode 100644
33 index 00000000000..fd870970532
34 --- /dev/null
35 +++ b/media-gfx/iscan/files/iscan-2.30.4.2-sscanf.patch
36 @@ -0,0 +1,21 @@
37 +diff -ur iscan-2.30.3/backend/cfg-obj.c b/iscan-2.30.3/backend/cfg-obj.c
38 +--- iscan-2.30.3/backend/cfg-obj.c 2019-05-31 13:26:41.530042108 +0200
39 ++++ iscan-2.30.3/backend/cfg-obj.c 2019-05-31 14:05:13.040056748 +0200
40 +@@ -1026,7 +1026,7 @@
41 + char *vendor = NULL;
42 + char *model = NULL;
43 +
44 +- sscanf (string, "%*s %as %as", &vendor, &model);
45 ++ sscanf (string, "%*s %ms %ms", &vendor, &model);
46 +
47 + if (list_append (_cfg->seen[CFG_KEY_SCSI], info))
48 + {
49 +@@ -1108,7 +1108,7 @@
50 + char *library = NULL;
51 + char *firmware = NULL;
52 +
53 +- sscanf (string, "%*s %*s %x %x %as %as",
54 ++ sscanf (string, "%*s %*s %x %x %ms %ms",
55 + &vendor, &product, &library, &firmware);
56 +
57 + if (library && _cfg_have_interpreter (library, firmware)
58
59 diff --git a/media-gfx/iscan/iscan-2.30.4.2.ebuild b/media-gfx/iscan/iscan-2.30.4.2.ebuild
60 new file mode 100644
61 index 00000000000..a82b27d06c6
62 --- /dev/null
63 +++ b/media-gfx/iscan/iscan-2.30.4.2.ebuild
64 @@ -0,0 +1,152 @@
65 +# Copyright 1999-2019 Gentoo Authors
66 +# Distributed under the terms of the GNU General Public License v2
67 +
68 +EAPI=7
69 +
70 +MY_DOC="userg_revQ"
71 +inherit autotools desktop flag-o-matic
72 +
73 +# HINTS:
74 +# -> non-free modules are x86 and amd64 only
75 +# -> iscan frontend needs non-free modules
76 +# -> sane-epkowa should be usable on every arch
77 +# -> ${P}-${SRC_REV}.tar.gz (for gcc 3.2/3.3)
78 +# -> ${P}-${SRC_REV}.c2.tar.gz (for gcc 3.4 or later)
79 +
80 +# FIXME:
81 +# iscan doesn't compile w/o libusb, this should be fixed somehow.
82 +
83 +# TODO:
84 +# (re)add closed-source binary modules which are needed for some scanners.
85 +
86 +DESCRIPTION="EPSON Image Scan! for Linux (including sane-epkowa backend)"
87 +HOMEPAGE="http://download.ebz.epson.net/dsc/search/01/search/?OSC=LX"
88 +SRC_URI="http://support.epson.net/linux/src/scanner/iscan/${PN}_$(ver_rs 3 -).tar.gz
89 + doc? (
90 + https://dev.gentoo.org/~flameeyes/avasys/${MY_DOC}_e.pdf
91 + l10n_ja? ( https://dev.gentoo.org/~flameeyes/avasys/${MY_DOC}_j.pdf )
92 + )"
93 +
94 +LICENSE="GPL-2 AVASYS"
95 +SLOT="0"
96 +KEYWORDS="~amd64 ~x86"
97 +IUSE="doc gimp l10n_ja nls X"
98 +
99 +REQUIRED_USE="gimp? ( X )"
100 +
101 +DEPEND="
102 + dev-libs/libxml2:2
103 + media-gfx/sane-backends
104 + virtual/libusb:1
105 + virtual/udev
106 + gimp? ( media-gfx/gimp:2 )
107 + X? (
108 + dev-libs/glib:2
109 + media-libs/libpng:=
110 + media-libs/tiff:=
111 + virtual/jpeg:=
112 + x11-libs/gtk+:2
113 + )
114 +"
115 +RDEPEND="${DEPEND}
116 + media-gfx/iscan-data
117 +"
118 +BDEPEND="
119 + virtual/pkgconfig
120 + nls? ( sys-devel/gettext )
121 +"
122 +# Upstream ships broken sanity test
123 +RESTRICT="test"
124 +
125 +S="${WORKDIR}/${PN}-$(ver_cut 1-3)"
126 +
127 +DOCS=( AUTHORS NEWS README )
128 +
129 +PATCHES=(
130 + "${FILESDIR}"/iscan-2.29.1-drop-ltdl.patch
131 + "${FILESDIR}"/iscan-2.28.1.3+libpng-1.5.patch
132 + "${FILESDIR}"/iscan-2.29.1-png-libs.patch
133 + "${FILESDIR}"/iscan-2.30.1-fix-g++-test.patch
134 + "${FILESDIR}"/iscan-2.30.1.1-gcc6.patch
135 + "${FILESDIR}"/iscan-2.30.3.1-fix-x86-unknown-types.patch
136 + "${FILESDIR}"/iscan-2.30.4.2-sscanf.patch
137 +)
138 +
139 +QA_PRESTRIPPED="usr/lib.*/libesmod.so.*"
140 +QA_TEXTRELS="${QA_PRESTRIPPED}"
141 +QA_FLAGS_IGNORED="${QA_PRESTRIPPED}"
142 +
143 +src_prepare() {
144 + default
145 +
146 + if ! use X; then
147 + sed -i -e "s:PKG_CHECK_MODULES(GTK,.*):AC_DEFINE([HAVE_GTK_2], 0):g" \
148 + -e "s:\(PKG_CHECK_MODULES(GDK_IMLIB,.*)\):#\1:g" configure.ac || die
149 + fi
150 +
151 + eautoreconf
152 +}
153 +
154 +src_configure() {
155 + append-cppflags -D_GNU_SOURCE # needed for 'strndup'
156 + replace-flags "-O[0-9s]" "-O1" # fix selector box bug 388073
157 +
158 + local myeconfargs=(
159 + --enable-dependency-reduction
160 + --disable-static
161 + $(use_enable nls)
162 + $(use_enable gimp)
163 + $(use_enable X frontend)
164 + $(use_enable X jpeg)
165 + $(use_enable X png)
166 + $(use_enable X tiff)
167 + )
168 + econf "${myeconfargs[@]}"
169 +}
170 +
171 +src_install() {
172 + use l10n_ja && DOCS+=( {NEWS,README}.ja )
173 + use doc && DOCS+=( "${DISTDIR}/${MY_DOC}_$(usex l10n_ja j e).pdf" )
174 + default
175 +
176 + # install sane config
177 + insinto /etc/sane.d
178 + doins backend/epkowa.conf
179 +
180 + # link iscan so it is seen as a plugin in gimp
181 + local gimpplugindir
182 + local gimptool
183 + if use gimp; then
184 + for gimptool in gimptool gimptool-2.0; do
185 + if [[ -x /usr/bin/${gimptool} ]]; then
186 + einfo "Setting plugin link for GIMP version $(/usr/bin/${gimptool} --version)"
187 + gimpplugindir=$(/usr/bin/${gimptool} --gimpplugindir)/plug-ins
188 + break
189 + fi
190 + done
191 + if [[ "/plug-ins" != "${gimpplugindir}" ]]; then
192 + dodir ${gimpplugindir}
193 + dosym "${ED%/}"/usr/bin/iscan "${gimpplugindir}"/iscan
194 + else
195 + ewarn "No idea where to find the gimp plugin directory"
196 + fi
197 + fi
198 +
199 + use X && make_desktop_entry iscan "Image Scan! for Linux ${PV}" scanner
200 +}
201 +
202 +pkg_postinst() {
203 + local DLL_CONF="${EPREFIX}/etc/sane.d/dll.conf"
204 + local EPKOWA_CONF="${EPREFIX}/etc/sane.d/epkowa.conf"
205 +
206 + if grep -q "^[ \t]*\<epkowa\>" ${DLL_CONF}; then
207 + elog "Please edit ${EPKOWA_CONF} to suit your needs."
208 + elif grep -q "\<epkowa\>" ${DLL_CONF}; then
209 + elog "Hint: to enable the backend, add 'epkowa' to ${DLL_CONF}"
210 + elog "Then edit ${EPKOWA_CONF} to suit your needs."
211 + else
212 + echo "epkowa" >> ${DLL_CONF} || die
213 + elog "A new entry 'epkowa' was added to ${DLL_CONF}"
214 + elog "Please edit ${EPKOWA_CONF} to suit your needs."
215 + fi
216 +}