Gentoo Archives: gentoo-commits

From: Bernard Cafarelli <voyageur@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-gfx/geeqie/, media-gfx/geeqie/files/
Date: Mon, 27 Jun 2016 17:30:29
Message-Id: 1467048017.865cea8418f1e3a9fbaa37cee94f9c986bc07430.voyageur@gentoo
1 commit: 865cea8418f1e3a9fbaa37cee94f9c986bc07430
2 Author: Bernard Cafarelli <voyageur <AT> gentoo <DOT> org>
3 AuthorDate: Mon Jun 27 16:28:34 2016 +0000
4 Commit: Bernard Cafarelli <voyageur <AT> gentoo <DOT> org>
5 CommitDate: Mon Jun 27 17:20:17 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=865cea84
7
8 media-gfx/geeqie: 1.3 version bump
9
10 Backport a patch to fix RAW image support with C++11
11 (reported by Dominic Eschweiler)
12 Also add USE flags for experimental GPU acceleration
13 and map support
14
15 Package-Manager: portage-2.3.0
16
17 media-gfx/geeqie/Manifest | 1 +
18 media-gfx/geeqie/files/geeqie-1.3-stdstring.patch | 63 +++++++++++++++++
19 media-gfx/geeqie/geeqie-1.3.ebuild | 83 +++++++++++++++++++++++
20 media-gfx/geeqie/metadata.xml | 2 +
21 4 files changed, 149 insertions(+)
22
23 diff --git a/media-gfx/geeqie/Manifest b/media-gfx/geeqie/Manifest
24 index cb93df5..9b4fe7a 100644
25 --- a/media-gfx/geeqie/Manifest
26 +++ b/media-gfx/geeqie/Manifest
27 @@ -1,2 +1,3 @@
28 DIST geeqie-1.2.2.tar.xz 1156616 SHA256 e1cbc403650730e2f4092159e4347c858d3d81e4374d2a51d635234ba90b3ee3 SHA512 0e134802b42061e76ec2f2d9069ab13ebcab17f889b04917e15aba74a208a4c4ffa5a957f45eb5bd14917d98d2d6250c1085cb065a1ae487050e5e2f325c14c4 WHIRLPOOL 78e960d2e551675b6474d30cfb0119177e14d1930a23b930c5b7ef7757092085db423713be495a4fcb51112c293eb88b12fe511b5b4bf64c86c27b8e410cb318
29 DIST geeqie-1.2.3.tar.xz 1129804 SHA256 2629bf33a9070fad4804b1ef051c3bf8a8fdad3bba4e6188dc20588185003248 SHA512 1bb2a6e5782cdafb4aeb1ab9247f7d43f4ef341594ea795214c136ba1fe416cf8bc37faa43462780eca3d0b07a7852e27719f8d23c8bdb42c899857846b4f7b1 WHIRLPOOL 8b4ee7218bb1562695c5c5322e684652f9318f04ed77bc0a54e70dd46f63801a7f0cc9c9b37346a58f6c1059278c07f980dec439dd753f2f87ce7f2a98e01566
30 +DIST geeqie-1.3.tar.xz 1141820 SHA256 4b6f566dd1a8badac68c4353c7dd0f4de17f8627b85a7a70d5eb1ae3b540ec3f SHA512 b17c4174741acd60261af268f0e9290ee3d7766d18fc0d28ada5730bb50651a6261d0b04b9fbe810d323c8e6a1b5a21a4f1ebf0eb88daf95f123b77b8484e718 WHIRLPOOL 8b3e54ae6cf8f8a633225df4f5058c29a7dd56adc63c9594cb995929d4cebb3b07d76a257a454506330f32673ac9a57ce63eb3fbf33126ed4cbccc7542910720
31
32 diff --git a/media-gfx/geeqie/files/geeqie-1.3-stdstring.patch b/media-gfx/geeqie/files/geeqie-1.3-stdstring.patch
33 new file mode 100644
34 index 0000000..fb58db6
35 --- /dev/null
36 +++ b/media-gfx/geeqie/files/geeqie-1.3-stdstring.patch
37 @@ -0,0 +1,63 @@
38 +From 0b044d1d685307e5755917e31d56a1a3104cd505 Mon Sep 17 00:00:00 2001
39 +From: David Kalnischkies <david@××××××××××××.de>
40 +Date: Fri, 27 May 2016 12:04:40 +0100
41 +Subject: [PATCH] Work around changed c++11 std::string implementation
42 +
43 +Bug was already partly fixed by 96db62d but there was even more
44 +positions that was unseen by Solomon.
45 +
46 +The patch is originally from Debian bug report #800350.
47 +
48 +Signed-off-by: Klaus Ethgen <Klaus@××××××.de>
49 +---
50 + src/exiv2.cc | 12 +++++++-----
51 + 1 file changed, 7 insertions(+), 5 deletions(-)
52 +
53 +diff --git a/src/exiv2.cc b/src/exiv2.cc
54 +index 1dbe118..49b8e07 100644
55 +--- a/src/exiv2.cc
56 ++++ b/src/exiv2.cc
57 +@@ -25,6 +25,7 @@
58 + #include <exiv2/image.hpp>
59 + #include <exiv2/exif.hpp>
60 + #include <iostream>
61 ++#include <string>
62 +
63 + // EXIV2_TEST_VERSION is defined in Exiv2 0.15 and newer.
64 + #ifndef EXIV2_TEST_VERSION
65 +@@ -1140,8 +1141,9 @@ guchar *exif_get_preview(ExifData *exif, guint *data_len, gint requested_width,
66 +
67 + if (!exif->image()) return NULL;
68 +
69 ++ std::string const path = exif->image()->io().path();
70 + /* given image pathname, first do simple (and fast) file extension test */
71 +- gboolean is_raw = filter_file_class(exif->image()->io().path().c_str(), FORMAT_CLASS_RAWIMAGE);
72 ++ gboolean is_raw = filter_file_class(path.c_str(), FORMAT_CLASS_RAWIMAGE);
73 +
74 + if (!is_raw && requested_width == 0) return NULL;
75 +
76 +@@ -1241,10 +1243,10 @@ extern "C" guchar *exif_get_preview(ExifData *exif, guint *data_len, gint reques
77 + if (!exif) return NULL;
78 + if (!exif->image()) return NULL;
79 +
80 +- const char* path = exif->image()->io().path().c_str();
81 ++ std::string const path = exif->image()->io().path();
82 +
83 + /* given image pathname, first do simple (and fast) file extension test */
84 +- if (!filter_file_class(path, FORMAT_CLASS_RAWIMAGE)) return NULL;
85 ++ if (!filter_file_class(path.c_str(), FORMAT_CLASS_RAWIMAGE)) return NULL;
86 +
87 + try {
88 + struct stat st;
89 +@@ -1255,9 +1257,9 @@ extern "C" guchar *exif_get_preview(ExifData *exif, guint *data_len, gint reques
90 +
91 + RawFile rf(exif->image()->io());
92 + offset = rf.preview_offset();
93 +- DEBUG_1("%s: offset %lu", path, offset);
94 ++ DEBUG_1("%s: offset %lu", path.c_str(), offset);
95 +
96 +- fd = open(path, O_RDONLY);
97 ++ fd = open(path.c_str(), O_RDONLY);
98 + if (fd == -1)
99 + {
100 + return NULL;
101
102 diff --git a/media-gfx/geeqie/geeqie-1.3.ebuild b/media-gfx/geeqie/geeqie-1.3.ebuild
103 new file mode 100644
104 index 0000000..f278e24
105 --- /dev/null
106 +++ b/media-gfx/geeqie/geeqie-1.3.ebuild
107 @@ -0,0 +1,83 @@
108 +# Copyright 1999-2016 Gentoo Foundation
109 +# Distributed under the terms of the GNU General Public License v2
110 +# $Id$
111 +
112 +EAPI=6
113 +inherit autotools
114 +
115 +DESCRIPTION="A lightweight GTK image viewer forked from GQview"
116 +HOMEPAGE="http://www.geeqie.org"
117 +SRC_URI="http://www.geeqie.org/${P}.tar.xz"
118 +
119 +LICENSE="GPL-2"
120 +SLOT="0"
121 +KEYWORDS="~amd64 ~ppc ~x86"
122 +IUSE="debug doc exif gpu-accel gtk3 jpeg lcms lirc lua map tiff xmp"
123 +
124 +RDEPEND="gtk3? ( x11-libs/gtk+:3 )
125 + !gtk3? ( x11-libs/gtk+:2 )
126 + virtual/libintl
127 + doc? ( app-text/gnome-doc-utils )
128 + gpu-accel? ( media-libs/clutter-gtk )
129 + jpeg? ( virtual/jpeg:0 )
130 + lcms? ( media-libs/lcms:2 )
131 + lirc? ( app-misc/lirc )
132 + lua? ( >=dev-lang/lua-5.1:= )
133 + map? ( media-libs/libchamplain:0.12 )
134 + xmp? ( >=media-gfx/exiv2-0.17:=[xmp] )
135 + !xmp? ( exif? ( >=media-gfx/exiv2-0.17:= ) )
136 + tiff? ( media-libs/tiff:0 )"
137 +DEPEND="${RDEPEND}
138 + virtual/pkgconfig
139 + dev-util/intltool
140 + sys-devel/gettext"
141 +
142 +REQUIRED_USE="gpu-accel? ( gtk3 )
143 + map? ( gpu-accel )"
144 +
145 +PATCHES=(
146 + "${FILESDIR}"/${P}-stdstring.patch
147 +)
148 +
149 +src_prepare() {
150 + default
151 +
152 + eautoreconf
153 +}
154 +
155 +src_configure() {
156 + # clutter does not compile, gps depends on clutter
157 + local myconf="--disable-dependency-tracking
158 + --with-readmedir=/usr/share/doc/${PF}
159 + $(use_enable debug debug-log)
160 + $(use_enable gpu-accel)
161 + $(use_enable gtk3)
162 + $(use_enable jpeg)
163 + $(use_enable lcms)
164 + $(use_enable lua)
165 + $(use_enable lirc)
166 + $(use_enable map)
167 + $(use_enable tiff)"
168 +
169 + if use exif || use xmp; then
170 + myconf="${myconf} --enable-exiv2"
171 + else
172 + myconf="${myconf} --disable-exiv2"
173 + fi
174 +
175 + econf ${myconf}
176 +}
177 +
178 +src_install() {
179 + emake DESTDIR="${D}" install
180 +
181 + rm -f "${D}/usr/share/doc/${PF}/COPYING"
182 + # Application needs access to the uncompressed file
183 + docompress -x /usr/share/doc/${PF}/README
184 +}
185 +
186 +pkg_postinst() {
187 + elog "Some plugins may require additional packages"
188 + elog "- Image rotate plugin: media-gfx/fbida (JPEG), media-gfx/imagemagick (TIFF/PNG)"
189 + elog "- RAW images plugin: media-gfx/ufraw"
190 +}
191
192 diff --git a/media-gfx/geeqie/metadata.xml b/media-gfx/geeqie/metadata.xml
193 index b188953..4ccccdc 100644
194 --- a/media-gfx/geeqie/metadata.xml
195 +++ b/media-gfx/geeqie/metadata.xml
196 @@ -7,6 +7,8 @@
197 </maintainer>
198 <longdescription>Geeqie is a lightweight image viewer. It was forked from GQview. The development is focused on features for photo collection maintenance: raw format, Exif/IPTC/XMP metadata and integration with programs like UFraw, ImageMagick, Gimp, gPhoto or ExifTool</longdescription>
199 <use>
200 + <flag name="gpu-accel">Enable GPU acceleration support - experimental</flag>
201 <flag name="gtk3">Link against <pkg>x11-libs/gtk+</pkg>:3 instead of <pkg>x11-libs/gtk+</pkg>:2</flag>
202 + <flag name="map">Enable items map display - experimental</flag>
203 </use>
204 </pkgmetadata>