Gentoo Archives: gentoo-commits

From: Andreas Sturmlechner <asturm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: kde-apps/gwenview/files/, kde-apps/gwenview/
Date: Thu, 07 Feb 2019 13:01:08
Message-Id: 1549544397.498bb8f66868ec99e1a971fb4815edb2781d226d.asturm@gentoo
1 commit: 498bb8f66868ec99e1a971fb4815edb2781d226d
2 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
3 AuthorDate: Wed Feb 6 22:51:42 2019 +0000
4 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
5 CommitDate: Thu Feb 7 12:59:57 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=498bb8f6
7
8 kde-apps/gwenview: Backport exiv2-0.27 support to 18.08.3
9
10 Refresh patch for 18.12.x as well.
11
12 Package-Manager: Portage-2.3.59, Repoman-2.3.12
13 Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
14
15 .../files/gwenview-18.12.1-exiv2-0.27.patch | 142 ++++++++++++++++++---
16 kde-apps/gwenview/gwenview-18.08.3-r1.ebuild | 112 ++++++++++++++++
17 2 files changed, 237 insertions(+), 17 deletions(-)
18
19 diff --git a/kde-apps/gwenview/files/gwenview-18.12.1-exiv2-0.27.patch b/kde-apps/gwenview/files/gwenview-18.12.1-exiv2-0.27.patch
20 index 66ed9ed8345..3e528e49285 100644
21 --- a/kde-apps/gwenview/files/gwenview-18.12.1-exiv2-0.27.patch
22 +++ b/kde-apps/gwenview/files/gwenview-18.12.1-exiv2-0.27.patch
23 @@ -1,7 +1,7 @@
24 -From 61543b42289fc986e580f2e3443719f3334f17b5 Mon Sep 17 00:00:00 2001
25 +From 3637438dd1a772ee65e6b3091087bde89dc91db0 Mon Sep 17 00:00:00 2001
26 From: =?UTF-8?q?Stefan=20Br=C3=BCns?= <stefan.bruens@×××××××××××.de>
27 Date: Sun, 30 Dec 2018 02:46:28 +0100
28 -Subject: [PATCH 1/2] Use forward declaration for Exiv2::Image, port to
29 +Subject: [PATCH 1/4] Use forward declaration for Exiv2::Image, port to
30 std::unique_ptr
31
32 Summary:
33 @@ -104,7 +104,7 @@ index d841ae5f..d3d0002c 100644
34
35 void AbstractDocumentImpl::setDocumentDownSampledImage(const QImage& image, int invertedZoom)
36 diff --git a/lib/document/abstractdocumentimpl.h b/lib/document/abstractdocumentimpl.h
37 -index 1f427e60..86e6bfd2 100644
38 +index 5d6862b8..6c6be825 100644
39 --- a/lib/document/abstractdocumentimpl.h
40 +++ b/lib/document/abstractdocumentimpl.h
41 @@ -34,6 +34,11 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
42 @@ -129,7 +129,7 @@ index 1f427e60..86e6bfd2 100644
43 void setDocumentCmsProfile(Cms::Profile::Ptr profile);
44 void setDocumentErrorString(const QString&);
45 diff --git a/lib/document/document.cpp b/lib/document/document.cpp
46 -index 18756700..afa9ed03 100644
47 +index c760be96..27003b3e 100644
48 --- a/lib/document/document.cpp
49 +++ b/lib/document/document.cpp
50 @@ -31,6 +31,9 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
51 @@ -155,7 +155,7 @@ index 18756700..afa9ed03 100644
52 emit metaInfoUpdated();
53 }
54 diff --git a/lib/document/document.h b/lib/document/document.h
55 -index c0bb454b..4b40a6e1 100644
56 +index 782111d9..4b2b3d48 100644
57 --- a/lib/document/document.h
58 +++ b/lib/document/document.h
59 @@ -22,8 +22,8 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
60 @@ -191,7 +191,7 @@ index c0bb454b..4b40a6e1 100644
61 void switchToImpl(AbstractDocumentImpl* impl);
62 void setErrorString(const QString&);
63 diff --git a/lib/document/document_p.h b/lib/document/document_p.h
64 -index 78e0ac6e..4de25f15 100644
65 +index 00c6f7ff..2701440f 100644
66 --- a/lib/document/document_p.h
67 +++ b/lib/document/document_p.h
68 @@ -21,6 +21,9 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Cambridge, MA 02110-1301, USA
69 @@ -226,7 +226,7 @@ index 78e0ac6e..4de25f15 100644
70 QByteArray mFormat;
71 ImageMetaInfoModel mImageMetaInfoModel;
72 diff --git a/lib/document/loadingdocumentimpl.cpp b/lib/document/loadingdocumentimpl.cpp
73 -index 07675783..766a1831 100644
74 +index 713ef32c..3bcf613a 100644
75 --- a/lib/document/loadingdocumentimpl.cpp
76 +++ b/lib/document/loadingdocumentimpl.cpp
77 @@ -24,6 +24,9 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
78 @@ -248,7 +248,7 @@ index 07675783..766a1831 100644
79 std::unique_ptr<JpegContent> mJpegContent;
80 QImage mImage;
81 Cms::Profile::Ptr mCmsProfile;
82 -@@ -486,7 +489,7 @@ void LoadingDocumentImpl::slotMetaInfoLoaded()
83 +@@ -488,7 +491,7 @@ void LoadingDocumentImpl::slotMetaInfoLoaded()
84
85 setDocumentFormat(d->mFormat);
86 setDocumentImageSize(d->mImageSize);
87 @@ -258,7 +258,7 @@ index 07675783..766a1831 100644
88
89 d->mMetaInfoLoaded = true;
90 diff --git a/lib/exiv2imageloader.cpp b/lib/exiv2imageloader.cpp
91 -index f2830f81..f13dff7a 100644
92 +index c298c9c3..49bdf2c8 100644
93 --- a/lib/exiv2imageloader.cpp
94 +++ b/lib/exiv2imageloader.cpp
95 @@ -29,8 +29,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
96 @@ -288,7 +288,7 @@ index f2830f81..f13dff7a 100644
97 + d->mImage.reset(Exiv2::ImageFactory::open(filePathByteArray.constData()).release());
98 d->mImage->readMetadata();
99 } catch (const Exiv2::Error& error) {
100 - d->mErrorMessage = QString::fromUtf8(error.what());
101 + d->mErrorMessage = error.what();
102 @@ -69,7 +68,7 @@ bool Exiv2ImageLoader::load(const QString& filePath)
103 bool Exiv2ImageLoader::load(const QByteArray& data)
104 {
105 @@ -297,7 +297,7 @@ index f2830f81..f13dff7a 100644
106 + d->mImage.reset(Exiv2::ImageFactory::open((unsigned char*)data.constData(), data.size()).release());
107 d->mImage->readMetadata();
108 } catch (const Exiv2::Error& error) {
109 - d->mErrorMessage = QString::fromUtf8(error.what());
110 + d->mErrorMessage = error.what();
111 @@ -83,9 +82,9 @@ QString Exiv2ImageLoader::errorMessage() const
112 return d->mErrorMessage;
113 }
114 @@ -345,7 +345,7 @@ index 57ef24d2..12a45b68 100644
115 private:
116 Exiv2ImageLoaderPrivate* const d;
117 diff --git a/lib/jpegcontent.cpp b/lib/jpegcontent.cpp
118 -index bb810dd4..a8cf909f 100644
119 +index d203da5a..989a1a54 100644
120 --- a/lib/jpegcontent.cpp
121 +++ b/lib/jpegcontent.cpp
122 @@ -42,8 +42,7 @@ extern "C" {
123 @@ -384,7 +384,7 @@ index bb810dd4..a8cf909f 100644
124 // Store Exif info
125 image->setExifData(d->mExifData);
126 diff --git a/lib/timeutils.cpp b/lib/timeutils.cpp
127 -index 9e8836a9..3c519098 100644
128 +index 1fcecc98..ecce3891 100644
129 --- a/lib/timeutils.cpp
130 +++ b/lib/timeutils.cpp
131 @@ -21,6 +21,9 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Cambridge, MA 02110-1301, USA
132 @@ -476,10 +476,10 @@ index e3ec8d30..5a286b00 100644
133 2.20.1
134
135
136 -From b81eed1dc4d879f06d651ea0954bee1b46c7947e Mon Sep 17 00:00:00 2001
137 +From fa287bfbd0bc95856c6a98bab2d81199a1618526 Mon Sep 17 00:00:00 2001
138 From: =?UTF-8?q?Stefan=20Br=C3=BCns?= <stefan.bruens@×××××××××××.de>
139 Date: Sat, 29 Dec 2018 23:39:30 +0100
140 -Subject: [PATCH 2/2] Compile more files with enabled exceptions, required for
141 +Subject: [PATCH 2/4] Compile more files with enabled exceptions, required for
142 exiv2 0.27
143
144 Summary:
145 @@ -504,10 +504,10 @@ Differential Revision: https://phabricator.kde.org/D17873
146 1 file changed, 5 insertions(+)
147
148 diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
149 -index d60ae47f..229eac2a 100644
150 +index 5f135a4d..365bcb86 100644
151 --- a/lib/CMakeLists.txt
152 +++ b/lib/CMakeLists.txt
153 -@@ -224,6 +224,11 @@ kde_source_files_enable_exceptions(
154 +@@ -227,6 +227,11 @@ kde_source_files_enable_exceptions(
155 exiv2imageloader.cpp
156 imagemetainfomodel.cpp
157 timeutils.cpp
158 @@ -521,3 +521,111 @@ index d60ae47f..229eac2a 100644
159 ki18n_wrap_ui(gwenviewlib_SRCS
160 --
161 2.20.1
162 +
163 +
164 +From 6b3407024e1d297ed8466d1e7710a9f7804dc265 Mon Sep 17 00:00:00 2001
165 +From: Andreas Sturmlechner <asturm@g.o>
166 +Date: Wed, 6 Feb 2019 22:38:55 +0100
167 +Subject: [PATCH 4/4] Switch to FindLibExiv2 in ECM 5.54
168 +
169 +---
170 + CMakeLists.txt | 3 +-
171 + app/CMakeLists.txt | 2 +-
172 + cmake/FindExiv2.cmake | 117 --------------------------------------
173 + importer/CMakeLists.txt | 2 +-
174 + lib/CMakeLists.txt | 4 +-
175 + part/CMakeLists.txt | 2 +-
176 + tests/auto/CMakeLists.txt | 2 +-
177 + 7 files changed, 7 insertions(+), 125 deletions(-)
178 + delete mode 100644 cmake/FindExiv2.cmake
179 +
180 +diff --git a/CMakeLists.txt b/CMakeLists.txt
181 +index f8bb85e7..7181f6c9 100644
182 +--- a/CMakeLists.txt
183 ++++ b/CMakeLists.txt
184 +@@ -97,8 +97,7 @@ set_package_properties(JPEG PROPERTIES URL "http://libjpeg.sourceforge.net/" DES
185 + find_package(PNG)
186 + set_package_properties(PNG PROPERTIES URL "http://www.libpng.org" DESCRIPTION "PNG image manipulation support" TYPE REQUIRED)
187 +
188 +-find_package(Exiv2)
189 +-set_package_properties(Exiv2 PROPERTIES URL "http://www.exiv2.org" DESCRIPTION "image metadata support" TYPE REQUIRED)
190 ++find_package(LibExiv2)
191 +
192 + find_package(CFitsio)
193 + set_package_properties(CFitsio PROPERTIES URL "http://heasarc.gsfc.nasa.gov/fitsio/fitsio.html" DESCRIPTION "FITS format support" TYPE OPTIONAL)
194 +diff --git a/app/CMakeLists.txt b/app/CMakeLists.txt
195 +index 5fe34d69..eabd494d 100644
196 +--- a/app/CMakeLists.txt
197 ++++ b/app/CMakeLists.txt
198 +@@ -1,6 +1,6 @@
199 + include_directories(
200 + ${CMAKE_CURRENT_SOURCE_DIR}/..
201 +- ${EXIV2_INCLUDE_DIR}
202 ++ ${LibExiv2_INCLUDE_DIRS}
203 + )
204 +
205 + # For lib/gwenviewconfig.h and config-gwenview.h
206 +diff --git a/importer/CMakeLists.txt b/importer/CMakeLists.txt
207 +index 81e585c1..39e219b7 100644
208 +--- a/importer/CMakeLists.txt
209 ++++ b/importer/CMakeLists.txt
210 +@@ -3,7 +3,7 @@ project(importer)
211 + include_directories(
212 + ${CMAKE_CURRENT_SOURCE_DIR}/..
213 + ${CMAKE_CURRENT_BINARY_DIR}/..
214 +- ${EXIV2_INCLUDE_DIR}
215 ++ ${LibExiv2_INCLUDE_DIRS}
216 + )
217 +
218 + set(importer_SRCS
219 +diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
220 +index 365bcb86..dcf9757c 100644
221 +--- a/lib/CMakeLists.txt
222 ++++ b/lib/CMakeLists.txt
223 +@@ -53,7 +53,7 @@ include_directories(
224 + ${CMAKE_CURRENT_SOURCE_DIR}/${GV_JPEG_DIR}
225 + ${CMAKE_CURRENT_SOURCE_DIR}/..
226 + ${CMAKE_CURRENT_BINARY_DIR}
227 +- ${EXIV2_INCLUDE_DIR}
228 ++ ${LibExiv2_INCLUDE_DIRS}
229 + ${JPEG_INCLUDE_DIR}
230 + ${PNG_INCLUDE_DIRS}
231 + )
232 +@@ -265,7 +265,7 @@ target_link_libraries(gwenviewlib
233 + KF5::WindowSystem
234 + KF5::IconThemes
235 + ${JPEG_LIBRARY}
236 +- ${EXIV2_LIBRARIES}
237 ++ LibExiv2::LibExiv2
238 + ${PNG_LIBRARIES}
239 + ${LCMS2_LIBRARIES}
240 + ${PHONON_LIBRARY}
241 +diff --git a/part/CMakeLists.txt b/part/CMakeLists.txt
242 +index 9d17eed2..03dcf92f 100644
243 +--- a/part/CMakeLists.txt
244 ++++ b/part/CMakeLists.txt
245 +@@ -2,7 +2,7 @@ add_definitions(-DTRANSLATION_DOMAIN="gwenview")
246 +
247 + include_directories(
248 + ${CMAKE_CURRENT_SOURCE_DIR}/..
249 +- ${EXIV2_INCLUDE_DIR}
250 ++ ${LibExiv2_INCLUDE_DIRS}
251 + )
252 +
253 + set(gvpart_SRCS
254 +diff --git a/tests/auto/CMakeLists.txt b/tests/auto/CMakeLists.txt
255 +index d5d3f015..9cc0e3b5 100644
256 +--- a/tests/auto/CMakeLists.txt
257 ++++ b/tests/auto/CMakeLists.txt
258 +@@ -14,7 +14,7 @@ endmacro(gv_add_unit_test)
259 + include_directories(
260 + ${gwenview_SOURCE_DIR}
261 + ${importer_SOURCE_DIR}
262 +- ${EXIV2_INCLUDE_DIR}
263 ++ ${LibExiv2_INCLUDE_DIRS}
264 + )
265 +
266 + # For config-gwenview.h
267 +--
268 +2.20.1
269 +
270
271 diff --git a/kde-apps/gwenview/gwenview-18.08.3-r1.ebuild b/kde-apps/gwenview/gwenview-18.08.3-r1.ebuild
272 new file mode 100644
273 index 00000000000..09a5bab1ab7
274 --- /dev/null
275 +++ b/kde-apps/gwenview/gwenview-18.08.3-r1.ebuild
276 @@ -0,0 +1,112 @@
277 +# Copyright 1999-2019 Gentoo Authors
278 +# Distributed under the terms of the GNU General Public License v2
279 +
280 +EAPI=6
281 +
282 +FRAMEWORKS_MINIMAL="5.54.0"
283 +KDE_HANDBOOK="true"
284 +KDE_TEST="true"
285 +inherit kde5
286 +
287 +DESCRIPTION="Image viewer by KDE"
288 +HOMEPAGE="
289 + https://www.kde.org/applications/graphics/gwenview/
290 + https://userbase.kde.org/Gwenview
291 +"
292 +
293 +LICENSE="GPL-2+ handbook? ( FDL-1.2 )"
294 +KEYWORDS="~amd64 ~x86"
295 +IUSE="activities fits kipi +mpris raw semantic-desktop X"
296 +
297 +# requires running environment
298 +RESTRICT+=" test"
299 +
300 +COMMON_DEPEND="
301 + $(add_frameworks_dep kcompletion)
302 + $(add_frameworks_dep kconfig)
303 + $(add_frameworks_dep kconfigwidgets)
304 + $(add_frameworks_dep kcoreaddons)
305 + $(add_frameworks_dep ki18n)
306 + $(add_frameworks_dep kiconthemes)
307 + $(add_frameworks_dep kio)
308 + $(add_frameworks_dep kitemmodels)
309 + $(add_frameworks_dep kitemviews)
310 + $(add_frameworks_dep kjobwidgets)
311 + $(add_frameworks_dep knotifications)
312 + $(add_frameworks_dep kparts)
313 + $(add_frameworks_dep kservice)
314 + $(add_frameworks_dep kwidgetsaddons)
315 + $(add_frameworks_dep kxmlgui)
316 + $(add_frameworks_dep solid)
317 + $(add_qt_dep qtgui)
318 + $(add_qt_dep qtopengl)
319 + $(add_qt_dep qtprintsupport)
320 + $(add_qt_dep qtsvg)
321 + $(add_qt_dep qtwidgets)
322 + media-gfx/exiv2:=
323 + media-libs/lcms:2
324 + media-libs/libpng:0=
325 + media-libs/phonon[qt5(+)]
326 + virtual/jpeg:0
327 + activities? ( $(add_frameworks_dep kactivities) )
328 + fits? ( sci-libs/cfitsio )
329 + kipi? ( $(add_kdeapps_dep libkipi '' '' '5=') )
330 + mpris? ( $(add_qt_dep qtdbus) )
331 + raw? ( $(add_kdeapps_dep libkdcraw) )
332 + semantic-desktop? (
333 + $(add_frameworks_dep baloo)
334 + $(add_frameworks_dep kfilemetadata)
335 + )
336 + X? (
337 + $(add_qt_dep qtx11extras)
338 + x11-libs/libX11
339 + )
340 +"
341 +DEPEND="${COMMON_DEPEND}
342 + $(add_frameworks_dep kwindowsystem)
343 + $(add_qt_dep qtconcurrent)
344 +"
345 +RDEPEND="${COMMON_DEPEND}
346 + $(add_frameworks_dep kimageformats)
347 + $(add_qt_dep qtimageformats)
348 + kipi? ( media-plugins/kipi-plugins:5 )
349 +"
350 +
351 +PATCHES=(
352 + "${FILESDIR}/${PN}-18.07.90-activities-optional.patch"
353 + "${FILESDIR}/${PN}-18.12.1-exiv2-0.27.patch"
354 +)
355 +
356 +src_prepare() {
357 + kde5_src_prepare
358 + if ! use mpris; then
359 + # FIXME: upstream a better solution
360 + sed -e "/set(HAVE_QTDBUS/s/\${Qt5DBus_FOUND}/0/" -i CMakeLists.txt || die
361 + fi
362 +}
363 +
364 +src_configure() {
365 + local mycmakeargs=(
366 + $(cmake-utils_use_find_package activities KF5Activities)
367 + $(cmake-utils_use_find_package fits CFitsio)
368 + $(cmake-utils_use_find_package kipi KF5Kipi)
369 + $(cmake-utils_use_find_package raw KF5KDcraw)
370 + $(cmake-utils_use_find_package X X11)
371 + )
372 +
373 + if use semantic-desktop; then
374 + mycmakeargs+=( -DGWENVIEW_SEMANTICINFO_BACKEND=Baloo )
375 + else
376 + mycmakeargs+=( -DGWENVIEW_SEMANTICINFO_BACKEND=None )
377 + fi
378 +
379 + kde5_src_configure
380 +}
381 +
382 +pkg_postinst() {
383 + kde5_pkg_postinst
384 +
385 + if [[ -z "${REPLACING_VERSIONS}" ]] && ! has_version kde-apps/svgpart:${SLOT} ; then
386 + elog "For SVG support, install kde-apps/svgpart:${SLOT}"
387 + fi
388 +}