summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2017-11-29 19:37:29 +0100
committerAndreas Sturmlechner <asturm@gentoo.org>2017-11-29 19:59:57 +0100
commit1ea80d97051243f63b8ea8b128ef02eacfd10c97 (patch)
tree33c44d42dec513fb561b72a8345ba07ffd2bfc36 /media-gfx
parentnet-misc/curl: x86 stable (bug #638734) (diff)
downloadgentoo-1ea80d97051243f63b8ea8b128ef02eacfd10c97.tar.gz
gentoo-1ea80d97051243f63b8ea8b128ef02eacfd10c97.tar.bz2
gentoo-1ea80d97051243f63b8ea8b128ef02eacfd10c97.zip
media-gfx/digikam: Fix Qt-5.9.3 runtime issue w/ album view
See also: https://bugs.kde.org/show_bug.cgi?id=387373 Package-Manager: Portage-2.3.16, Repoman-2.3.6
Diffstat (limited to 'media-gfx')
-rw-r--r--media-gfx/digikam/Manifest2
-rw-r--r--media-gfx/digikam/digikam-5.7.0-r1.ebuild170
-rw-r--r--media-gfx/digikam/files/digikam-5.7.0-qt-5.9.3.patch31
3 files changed, 202 insertions, 1 deletions
diff --git a/media-gfx/digikam/Manifest b/media-gfx/digikam/Manifest
index c301533b1d9c..b7c758d7e77d 100644
--- a/media-gfx/digikam/Manifest
+++ b/media-gfx/digikam/Manifest
@@ -1,2 +1,2 @@
DIST digikam-5.5.0.tar.xz 129499600 SHA256 df9cbf1b8dbfb9235cebc97e77c02fcb1498c5a905c7fd3b9fb42fd7accc6252 SHA512 3c64774916d4804d932009ba3753d387ecf31e9e3d435c580497d3badb6cc3e57ab5ef1a2334a23379d0987d96dd107be4f01adbb63039f4510aa94ac6d71344 WHIRLPOOL e67b444975ad37e939b2f62bba949bcafb41eee2975470daa02e4ffdd62c6c792b6656edf4811daead52fdc1bf064951fbec7b687192e5d5ee542d5d706140be
-DIST digikam-5.7.0.tar.xz 123315064 SHA256 3605ffb5b6e8fbd6b725e5075f74f505d7edee7531789c2882d11df2d20150f5 SHA512 626c9854311c637b994325237f171adce3dba39159fb336dfe95f1de287e2d08a3aaddd611eea87e8018047d331aff252b555c382cfbe1d8e14413c51a3849f4 WHIRLPOOL b452919ce9bcf8ccc8434586ace23b96b68b76f49d7229d418b2dc5883e9646c79fb99ecd660d732b8d96efc3a49b70d218756b09a3f16ef9f7f2b174679be70
+DIST digikam-5.7.0.tar.xz 123315064 BLAKE2B 0879b25e674e39d204038ab629dec36757ae034e3dd7e9a0a3700f9703272c4a972a21c1db5a42c6c294247a1226b1cb9a8b980bb90cdcc12e0cd752459273ef SHA512 626c9854311c637b994325237f171adce3dba39159fb336dfe95f1de287e2d08a3aaddd611eea87e8018047d331aff252b555c382cfbe1d8e14413c51a3849f4
diff --git a/media-gfx/digikam/digikam-5.7.0-r1.ebuild b/media-gfx/digikam/digikam-5.7.0-r1.ebuild
new file mode 100644
index 000000000000..62c259e566c2
--- /dev/null
+++ b/media-gfx/digikam/digikam-5.7.0-r1.ebuild
@@ -0,0 +1,170 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+if [[ ${KDE_BUILD_TYPE} != live ]]; then
+ KDE_HANDBOOK="true"
+ KDE_TEST="true"
+fi
+CMAKE_MAKEFILE_GENERATOR="emake"
+inherit kde5 toolchain-funcs
+
+DESCRIPTION="Digital photo management application"
+HOMEPAGE="https://www.digikam.org/"
+
+LICENSE="GPL-2"
+IUSE="addressbook calendar gphoto2 jpeg2k +kipi +lensfun marble mediaplayer semantic-desktop mysql opengl openmp +panorama scanner X"
+
+if [[ ${KDE_BUILD_TYPE} != live ]]; then
+ KEYWORDS="~amd64 ~x86"
+ MY_PV=${PV/_/-}
+ MY_P=${PN}-${MY_PV}
+ SRC_BRANCH=stable
+ [[ ${PV} =~ beta[0-9]$ ]] && SRC_BRANCH=unstable
+ SRC_URI="mirror://kde/${SRC_BRANCH}/digikam/${MY_P}.tar.xz"
+ S="${WORKDIR}/${MY_P}/core"
+fi
+
+# TODO: Package QtAV http://www.qtav.org/
+# video? ( media-video/qtav )
+COMMON_DEPEND="
+ $(add_frameworks_dep kconfig)
+ $(add_frameworks_dep kconfigwidgets)
+ $(add_frameworks_dep kcoreaddons)
+ $(add_frameworks_dep ki18n)
+ $(add_frameworks_dep kiconthemes)
+ $(add_frameworks_dep kio)
+ $(add_frameworks_dep knotifications)
+ $(add_frameworks_dep knotifyconfig)
+ $(add_frameworks_dep kservice)
+ $(add_frameworks_dep kwidgetsaddons)
+ $(add_frameworks_dep kwindowsystem)
+ $(add_frameworks_dep kxmlgui)
+ $(add_frameworks_dep solid)
+ $(add_qt_dep qtconcurrent)
+ $(add_qt_dep qtdbus)
+ $(add_qt_dep qtgui '-gles2')
+ $(add_qt_dep qtprintsupport)
+ $(add_qt_dep qtsql 'mysql?')
+ $(add_qt_dep qtwebkit)
+ $(add_qt_dep qtwidgets)
+ $(add_qt_dep qtxml)
+ dev-libs/expat
+ >=media-gfx/exiv2-0.26:=
+ media-libs/lcms:2
+ media-libs/liblqr
+ media-libs/libpng:0=
+ media-libs/opencv:=[-qt4(-)]
+ || ( <media-libs/opencv-3.0.0 >=media-libs/opencv-3.1.0 )
+ media-libs/tiff:0
+ virtual/jpeg:0
+ addressbook? (
+ $(add_kdeapps_dep akonadi-contacts)
+ $(add_kdeapps_dep kcontacts)
+ )
+ calendar? ( $(add_kdeapps_dep kcalcore) )
+ gphoto2? ( media-libs/libgphoto2:= )
+ jpeg2k? ( media-libs/jasper:= )
+ kipi? ( $(add_kdeapps_dep libkipi '' '16.03.80') )
+ lensfun? ( media-libs/lensfun )
+ marble? (
+ $(add_frameworks_dep kbookmarks)
+ $(add_kdeapps_dep marble)
+ $(add_qt_dep qtconcurrent)
+ $(add_qt_dep qtnetwork)
+ )
+ mediaplayer? ( media-libs/qtav[opengl] )
+ mysql? ( virtual/mysql[server] )
+ opengl? (
+ $(add_qt_dep qtopengl)
+ virtual/opengl
+ )
+ panorama? ( $(add_frameworks_dep threadweaver) )
+ scanner? ( $(add_kdeapps_dep libksane) )
+ semantic-desktop? ( $(add_frameworks_dep kfilemetadata) )
+ X? (
+ $(add_qt_dep qtx11extras)
+ x11-libs/libX11
+ )
+"
+DEPEND="${COMMON_DEPEND}
+ dev-cpp/eigen:3
+ dev-libs/boost[threads]
+ sys-devel/gettext
+ panorama? (
+ sys-devel/bison
+ sys-devel/flex
+ )
+"
+RDEPEND="${COMMON_DEPEND}
+ media-plugins/kipi-plugins:5
+ panorama? ( media-gfx/hugin )
+ !media-gfx/digikam:4
+"
+
+RESTRICT=test
+# bug 366505
+
+PATCHES=( "${FILESDIR}/${P}-qt-5.9.3.patch" )
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+ kde5_pkg_pretend
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+ kde5_pkg_setup
+}
+
+# FIXME: Unbundle libraw (libs/rawengine/libraw)
+src_prepare() {
+ if [[ ${KDE_BUILD_TYPE} != live ]]; then
+ # prepare the translations
+ mv "${WORKDIR}/${MY_P}/po" po || die
+ find po -name "*.po" -and -not -name "digikam.po" -delete || die
+ echo "set_property(GLOBAL PROPERTY ALLOW_DUPLICATE_CUSTOM_TARGETS 1)" >> CMakeLists.txt || die
+ echo "find_package(Gettext REQUIRED)" >> CMakeLists.txt || die
+ echo "add_subdirectory( po )" >> CMakeLists.txt || die
+
+ if use handbook; then
+ # subdirs need to be preserved b/c relative paths...
+ # doc-translated is, in fact, broken, and ignored
+ mv "${WORKDIR}/${MY_P}/doc/${PN}" doc-default || die
+ echo "find_package(KF5DocTools REQUIRED)" >> CMakeLists.txt || die
+ echo "add_subdirectory( doc-default )" >> CMakeLists.txt || die
+ fi
+ fi
+
+ if ! use marble; then
+ punt_bogus_dep Qt5 Network
+ fi
+
+ kde5_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DENABLE_APPSTYLES=ON
+ -DENABLE_AKONADICONTACTSUPPORT=$(usex addressbook)
+ -DENABLE_MEDIAPLAYER=$(usex mediaplayer)
+ -DENABLE_MYSQLSUPPORT=$(usex mysql)
+ -DENABLE_OPENCV3=$(has_version ">=media-libs/opencv-3" && echo yes || echo no)
+ $(cmake-utils_use_find_package calendar KF5CalendarCore)
+ $(cmake-utils_use_find_package gphoto2 Gphoto2)
+ $(cmake-utils_use_find_package jpeg2k Jasper)
+ $(cmake-utils_use_find_package kipi KF5Kipi)
+ $(cmake-utils_use_find_package lensfun LensFun)
+ $(cmake-utils_use_find_package marble Marble)
+ $(cmake-utils_use_find_package mediaplayer QtAV)
+ $(cmake-utils_use_find_package opengl OpenGL)
+ $(cmake-utils_use_find_package openmp OpenMP)
+ $(cmake-utils_use_find_package panorama KF5ThreadWeaver)
+ $(cmake-utils_use_find_package scanner KF5Sane)
+ $(cmake-utils_use_find_package semantic-desktop KF5FileMetaData)
+ $(cmake-utils_use_find_package X X11)
+ )
+
+ kde5_src_configure
+}
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
new file mode 100644
index 000000000000..e2abe9be39cb
--- /dev/null
+++ b/media-gfx/digikam/files/digikam-5.7.0-qt-5.9.3.patch
@@ -0,0 +1,31 @@
+From 855ba5b7d4bc6337234720a72ea824ddd3b32e5b Mon Sep 17 00:00:00 2001
+From: Maik Qualmann <metzpinguin@gmail.com>
+Date: Tue, 28 Nov 2017 21:29:00 +0100
+Subject: try to fix the Qt-5.9.3 empty album problem CCBUGS: 387373
+
+---
+ libs/database/coredb/coredburl.cpp | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/libs/database/coredb/coredburl.cpp b/libs/database/coredb/coredburl.cpp
+index 2c0d0eb..b1bdf71 100644
+--- a/libs/database/coredb/coredburl.cpp
++++ b/libs/database/coredb/coredburl.cpp
+@@ -88,8 +88,13 @@ CoreDbUrl CoreDbUrl::fromAlbumAndName(const QString& name,
+ const DbEngineParameters& parameters)
+ {
+ CoreDbUrl url;
++ QString path(album);
+ url.setScheme(QLatin1String("digikamalbums"));
+- url.setPath(QLatin1Char('/') + album + QLatin1Char('/') + name);
++
++ if (path != QLatin1Char('/'))
++ path += QLatin1Char('/');
++
++ url.setPath(path + name);
+
+ QUrlQuery q(url);
+ q.addQueryItem(QLatin1String("albumRoot"), albumRoot.adjusted(QUrl::StripTrailingSlash).toLocalFile());
+--
+cgit v0.11.2
+