Gentoo Archives: gentoo-commits

From: Andreas Sturmlechner <asturm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-gfx/digikam/files/, media-gfx/digikam/
Date: Wed, 29 Nov 2017 19:00:16
Message-Id: 1511981997.1ea80d97051243f63b8ea8b128ef02eacfd10c97.asturm@gentoo
1 commit: 1ea80d97051243f63b8ea8b128ef02eacfd10c97
2 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
3 AuthorDate: Wed Nov 29 18:37:29 2017 +0000
4 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
5 CommitDate: Wed Nov 29 18:59:57 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1ea80d97
7
8 media-gfx/digikam: Fix Qt-5.9.3 runtime issue w/ album view
9
10 See also: https://bugs.kde.org/show_bug.cgi?id=387373
11
12 Package-Manager: Portage-2.3.16, Repoman-2.3.6
13
14 media-gfx/digikam/Manifest | 2 +-
15 media-gfx/digikam/digikam-5.7.0-r1.ebuild | 170 +++++++++++++++++++++
16 .../digikam/files/digikam-5.7.0-qt-5.9.3.patch | 31 ++++
17 3 files changed, 202 insertions(+), 1 deletion(-)
18
19 diff --git a/media-gfx/digikam/Manifest b/media-gfx/digikam/Manifest
20 index c301533b1d9..b7c758d7e77 100644
21 --- a/media-gfx/digikam/Manifest
22 +++ b/media-gfx/digikam/Manifest
23 @@ -1,2 +1,2 @@
24 DIST digikam-5.5.0.tar.xz 129499600 SHA256 df9cbf1b8dbfb9235cebc97e77c02fcb1498c5a905c7fd3b9fb42fd7accc6252 SHA512 3c64774916d4804d932009ba3753d387ecf31e9e3d435c580497d3badb6cc3e57ab5ef1a2334a23379d0987d96dd107be4f01adbb63039f4510aa94ac6d71344 WHIRLPOOL e67b444975ad37e939b2f62bba949bcafb41eee2975470daa02e4ffdd62c6c792b6656edf4811daead52fdc1bf064951fbec7b687192e5d5ee542d5d706140be
25 -DIST digikam-5.7.0.tar.xz 123315064 SHA256 3605ffb5b6e8fbd6b725e5075f74f505d7edee7531789c2882d11df2d20150f5 SHA512 626c9854311c637b994325237f171adce3dba39159fb336dfe95f1de287e2d08a3aaddd611eea87e8018047d331aff252b555c382cfbe1d8e14413c51a3849f4 WHIRLPOOL b452919ce9bcf8ccc8434586ace23b96b68b76f49d7229d418b2dc5883e9646c79fb99ecd660d732b8d96efc3a49b70d218756b09a3f16ef9f7f2b174679be70
26 +DIST digikam-5.7.0.tar.xz 123315064 BLAKE2B 0879b25e674e39d204038ab629dec36757ae034e3dd7e9a0a3700f9703272c4a972a21c1db5a42c6c294247a1226b1cb9a8b980bb90cdcc12e0cd752459273ef SHA512 626c9854311c637b994325237f171adce3dba39159fb336dfe95f1de287e2d08a3aaddd611eea87e8018047d331aff252b555c382cfbe1d8e14413c51a3849f4
27
28 diff --git a/media-gfx/digikam/digikam-5.7.0-r1.ebuild b/media-gfx/digikam/digikam-5.7.0-r1.ebuild
29 new file mode 100644
30 index 00000000000..62c259e566c
31 --- /dev/null
32 +++ b/media-gfx/digikam/digikam-5.7.0-r1.ebuild
33 @@ -0,0 +1,170 @@
34 +# Copyright 1999-2017 Gentoo Foundation
35 +# Distributed under the terms of the GNU General Public License v2
36 +
37 +EAPI=6
38 +
39 +if [[ ${KDE_BUILD_TYPE} != live ]]; then
40 + KDE_HANDBOOK="true"
41 + KDE_TEST="true"
42 +fi
43 +CMAKE_MAKEFILE_GENERATOR="emake"
44 +inherit kde5 toolchain-funcs
45 +
46 +DESCRIPTION="Digital photo management application"
47 +HOMEPAGE="https://www.digikam.org/"
48 +
49 +LICENSE="GPL-2"
50 +IUSE="addressbook calendar gphoto2 jpeg2k +kipi +lensfun marble mediaplayer semantic-desktop mysql opengl openmp +panorama scanner X"
51 +
52 +if [[ ${KDE_BUILD_TYPE} != live ]]; then
53 + KEYWORDS="~amd64 ~x86"
54 + MY_PV=${PV/_/-}
55 + MY_P=${PN}-${MY_PV}
56 + SRC_BRANCH=stable
57 + [[ ${PV} =~ beta[0-9]$ ]] && SRC_BRANCH=unstable
58 + SRC_URI="mirror://kde/${SRC_BRANCH}/digikam/${MY_P}.tar.xz"
59 + S="${WORKDIR}/${MY_P}/core"
60 +fi
61 +
62 +# TODO: Package QtAV http://www.qtav.org/
63 +# video? ( media-video/qtav )
64 +COMMON_DEPEND="
65 + $(add_frameworks_dep kconfig)
66 + $(add_frameworks_dep kconfigwidgets)
67 + $(add_frameworks_dep kcoreaddons)
68 + $(add_frameworks_dep ki18n)
69 + $(add_frameworks_dep kiconthemes)
70 + $(add_frameworks_dep kio)
71 + $(add_frameworks_dep knotifications)
72 + $(add_frameworks_dep knotifyconfig)
73 + $(add_frameworks_dep kservice)
74 + $(add_frameworks_dep kwidgetsaddons)
75 + $(add_frameworks_dep kwindowsystem)
76 + $(add_frameworks_dep kxmlgui)
77 + $(add_frameworks_dep solid)
78 + $(add_qt_dep qtconcurrent)
79 + $(add_qt_dep qtdbus)
80 + $(add_qt_dep qtgui '-gles2')
81 + $(add_qt_dep qtprintsupport)
82 + $(add_qt_dep qtsql 'mysql?')
83 + $(add_qt_dep qtwebkit)
84 + $(add_qt_dep qtwidgets)
85 + $(add_qt_dep qtxml)
86 + dev-libs/expat
87 + >=media-gfx/exiv2-0.26:=
88 + media-libs/lcms:2
89 + media-libs/liblqr
90 + media-libs/libpng:0=
91 + media-libs/opencv:=[-qt4(-)]
92 + || ( <media-libs/opencv-3.0.0 >=media-libs/opencv-3.1.0 )
93 + media-libs/tiff:0
94 + virtual/jpeg:0
95 + addressbook? (
96 + $(add_kdeapps_dep akonadi-contacts)
97 + $(add_kdeapps_dep kcontacts)
98 + )
99 + calendar? ( $(add_kdeapps_dep kcalcore) )
100 + gphoto2? ( media-libs/libgphoto2:= )
101 + jpeg2k? ( media-libs/jasper:= )
102 + kipi? ( $(add_kdeapps_dep libkipi '' '16.03.80') )
103 + lensfun? ( media-libs/lensfun )
104 + marble? (
105 + $(add_frameworks_dep kbookmarks)
106 + $(add_kdeapps_dep marble)
107 + $(add_qt_dep qtconcurrent)
108 + $(add_qt_dep qtnetwork)
109 + )
110 + mediaplayer? ( media-libs/qtav[opengl] )
111 + mysql? ( virtual/mysql[server] )
112 + opengl? (
113 + $(add_qt_dep qtopengl)
114 + virtual/opengl
115 + )
116 + panorama? ( $(add_frameworks_dep threadweaver) )
117 + scanner? ( $(add_kdeapps_dep libksane) )
118 + semantic-desktop? ( $(add_frameworks_dep kfilemetadata) )
119 + X? (
120 + $(add_qt_dep qtx11extras)
121 + x11-libs/libX11
122 + )
123 +"
124 +DEPEND="${COMMON_DEPEND}
125 + dev-cpp/eigen:3
126 + dev-libs/boost[threads]
127 + sys-devel/gettext
128 + panorama? (
129 + sys-devel/bison
130 + sys-devel/flex
131 + )
132 +"
133 +RDEPEND="${COMMON_DEPEND}
134 + media-plugins/kipi-plugins:5
135 + panorama? ( media-gfx/hugin )
136 + !media-gfx/digikam:4
137 +"
138 +
139 +RESTRICT=test
140 +# bug 366505
141 +
142 +PATCHES=( "${FILESDIR}/${P}-qt-5.9.3.patch" )
143 +
144 +pkg_pretend() {
145 + [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
146 + kde5_pkg_pretend
147 +}
148 +
149 +pkg_setup() {
150 + [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
151 + kde5_pkg_setup
152 +}
153 +
154 +# FIXME: Unbundle libraw (libs/rawengine/libraw)
155 +src_prepare() {
156 + if [[ ${KDE_BUILD_TYPE} != live ]]; then
157 + # prepare the translations
158 + mv "${WORKDIR}/${MY_P}/po" po || die
159 + find po -name "*.po" -and -not -name "digikam.po" -delete || die
160 + echo "set_property(GLOBAL PROPERTY ALLOW_DUPLICATE_CUSTOM_TARGETS 1)" >> CMakeLists.txt || die
161 + echo "find_package(Gettext REQUIRED)" >> CMakeLists.txt || die
162 + echo "add_subdirectory( po )" >> CMakeLists.txt || die
163 +
164 + if use handbook; then
165 + # subdirs need to be preserved b/c relative paths...
166 + # doc-translated is, in fact, broken, and ignored
167 + mv "${WORKDIR}/${MY_P}/doc/${PN}" doc-default || die
168 + echo "find_package(KF5DocTools REQUIRED)" >> CMakeLists.txt || die
169 + echo "add_subdirectory( doc-default )" >> CMakeLists.txt || die
170 + fi
171 + fi
172 +
173 + if ! use marble; then
174 + punt_bogus_dep Qt5 Network
175 + fi
176 +
177 + kde5_src_prepare
178 +}
179 +
180 +src_configure() {
181 + local mycmakeargs=(
182 + -DENABLE_APPSTYLES=ON
183 + -DENABLE_AKONADICONTACTSUPPORT=$(usex addressbook)
184 + -DENABLE_MEDIAPLAYER=$(usex mediaplayer)
185 + -DENABLE_MYSQLSUPPORT=$(usex mysql)
186 + -DENABLE_OPENCV3=$(has_version ">=media-libs/opencv-3" && echo yes || echo no)
187 + $(cmake-utils_use_find_package calendar KF5CalendarCore)
188 + $(cmake-utils_use_find_package gphoto2 Gphoto2)
189 + $(cmake-utils_use_find_package jpeg2k Jasper)
190 + $(cmake-utils_use_find_package kipi KF5Kipi)
191 + $(cmake-utils_use_find_package lensfun LensFun)
192 + $(cmake-utils_use_find_package marble Marble)
193 + $(cmake-utils_use_find_package mediaplayer QtAV)
194 + $(cmake-utils_use_find_package opengl OpenGL)
195 + $(cmake-utils_use_find_package openmp OpenMP)
196 + $(cmake-utils_use_find_package panorama KF5ThreadWeaver)
197 + $(cmake-utils_use_find_package scanner KF5Sane)
198 + $(cmake-utils_use_find_package semantic-desktop KF5FileMetaData)
199 + $(cmake-utils_use_find_package X X11)
200 + )
201 +
202 + kde5_src_configure
203 +}
204
205 diff --git a/media-gfx/digikam/files/digikam-5.7.0-qt-5.9.3.patch b/media-gfx/digikam/files/digikam-5.7.0-qt-5.9.3.patch
206 new file mode 100644
207 index 00000000000..e2abe9be39c
208 --- /dev/null
209 +++ b/media-gfx/digikam/files/digikam-5.7.0-qt-5.9.3.patch
210 @@ -0,0 +1,31 @@
211 +From 855ba5b7d4bc6337234720a72ea824ddd3b32e5b Mon Sep 17 00:00:00 2001
212 +From: Maik Qualmann <metzpinguin@×××××.com>
213 +Date: Tue, 28 Nov 2017 21:29:00 +0100
214 +Subject: try to fix the Qt-5.9.3 empty album problem CCBUGS: 387373
215 +
216 +---
217 + libs/database/coredb/coredburl.cpp | 7 ++++++-
218 + 1 file changed, 6 insertions(+), 1 deletion(-)
219 +
220 +diff --git a/libs/database/coredb/coredburl.cpp b/libs/database/coredb/coredburl.cpp
221 +index 2c0d0eb..b1bdf71 100644
222 +--- a/libs/database/coredb/coredburl.cpp
223 ++++ b/libs/database/coredb/coredburl.cpp
224 +@@ -88,8 +88,13 @@ CoreDbUrl CoreDbUrl::fromAlbumAndName(const QString& name,
225 + const DbEngineParameters& parameters)
226 + {
227 + CoreDbUrl url;
228 ++ QString path(album);
229 + url.setScheme(QLatin1String("digikamalbums"));
230 +- url.setPath(QLatin1Char('/') + album + QLatin1Char('/') + name);
231 ++
232 ++ if (path != QLatin1Char('/'))
233 ++ path += QLatin1Char('/');
234 ++
235 ++ url.setPath(path + name);
236 +
237 + QUrlQuery q(url);
238 + q.addQueryItem(QLatin1String("albumRoot"), albumRoot.adjusted(QUrl::StripTrailingSlash).toLocalFile());
239 +--
240 +cgit v0.11.2
241 +