extra/digikam to 5.7.0-3

This commit is contained in:
Kevin Mihelich 2017-11-29 01:22:15 +00:00
parent 193ebe185f
commit f72d4bfd43
2 changed files with 90 additions and 4 deletions

View file

@ -11,9 +11,9 @@ pkgbase=digikam
pkgname=('digikam' 'kipi-plugins')
_pkgver=5.7.0
pkgver=${_pkgver//-/_} # for beta versions
pkgrel=1
pkgdesc="Digital photo management application for KDE"
arch=('i686' 'x86_64')
pkgrel=3
pkgdesc="An advanced digital photo management application"
arch=('x86_64')
license=('GPL')
url="http://www.digikam.org/"
makedepends=('extra-cmake-modules' 'libkipi' 'libksane' 'liblqr' 'opencv' 'boost'
@ -21,8 +21,12 @@ makedepends=('extra-cmake-modules' 'libkipi' 'libksane' 'liblqr' 'opencv' 'boost
'kfilemetadata' 'akonadi-contacts' 'qtav' 'threadweaver' 'kcalcore'
'knotifyconfig' 'libmediawiki' 'libkvkontakte')
source=("http://download.kde.org/stable/${pkgname}/${pkgname}-${_pkgver}.tar.xz"
'0001-optionally-enable-OpenGL.patch')
digikam-kcalcore-17.12.patch
digikam-qt-5.9.3.patch::"https://cgit.kde.org/digikam.git/patch/?id=855ba5b7"
0001-optionally-enable-OpenGL.patch)
sha256sums=('3605ffb5b6e8fbd6b725e5075f74f505d7edee7531789c2882d11df2d20150f5'
'61648bdeb88dcb94d2896b9d9211c6a6b50a39a143701e04465aa040a60053c0'
'03822e596321028d0971ec82351337dad76abeda93c9cef3b1d2a31807e02661'
'f6f234f430f02e058e12e48577f9d8441959e84b42f4e50d733706be8b214bf5')
prepare() {
@ -32,6 +36,11 @@ prepare() {
sed -e '/sv/d' -i $pkgname-$pkgver/doc-translated/CMakeLists.txt
# fix conflicts with libkvkontakte
rm $pkgbase-$pkgver/po/*/libkvkontakte.po
# fix build with kcalcore 17.12
cd $pkgname-$_pkgver/core
patch -p1 -i "$srcdir"/digikam-kcalcore-17.12.patch
# fix thumbnails with Qt 5.9.3
patch -p1 -i "$srcdir"/digikam-qt-5.9.3.patch
# OpenGL switch
cd $pkgbase-$pkgver/core

View file

@ -0,0 +1,77 @@
From dad750fadc926b62603cc9d64009ee5072a46d97 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Daniel=20Vr=C3=A1til?= <dvratil@kde.org>
Date: Wed, 13 Sep 2017 16:51:14 +0200
Subject: Adapt to KCalCore API changes
This change supports both old (pre-QDateTime) and new version.
Differential Revision: https://phabricator.kde.org/D7802
---
CMakeLists.txt | 3 +++
app/utils/digikam_config.h.cmake.in | 3 +++
utilities/assistants/calendar/print/calsettings.cpp | 14 ++++++++++----
3 files changed, 16 insertions(+), 4 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3ad686d..e2f28a7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -174,6 +174,9 @@ find_package(KF5 ${CALENDAR_MIN_VERSION} QUIET
OPTIONAL_COMPONENTS
CalendarCore # For Calendar tool.
)
+if ("${KF5CalendarCore_VERSION}" VERSION_GREATER 5.6.40)
+ set(HAVE_KCALENDAR_QDATETIME TRUE)
+endif()
if(ENABLE_AKONADICONTACTSUPPORT AND NOT KF5AkonadiContact_FOUND)
set(ENABLE_KFILEMETADATASUPPORT OFF)
diff --git a/app/utils/digikam_config.h.cmake.in b/app/utils/digikam_config.h.cmake.in
index 8a2e8e5..ffd3a22 100644
--- a/app/utils/digikam_config.h.cmake.in
+++ b/app/utils/digikam_config.h.cmake.in
@@ -75,6 +75,9 @@
/* Define to 1 if you have KCalendar core shared libraries installed */
#cmakedefine HAVE_KCALENDAR 1
+/* Define to 1 if you have KCalendar core shared libraries with QDateTime support installed */
+#cmakedefine HAVE_KCALENDAR_QDATETIME 1
+
/* Define to 1 if Panorama tool is supported */
#cmakedefine HAVE_PANORAMA 1
diff --git a/utilities/assistants/calendar/print/calsettings.cpp b/utilities/assistants/calendar/print/calsettings.cpp
index 46e995d..c6554ef 100644
--- a/utilities/assistants/calendar/print/calsettings.cpp
+++ b/utilities/assistants/calendar/print/calsettings.cpp
@@ -290,7 +290,13 @@ void CalSettings::loadSpecial(const QUrl& url, const QColor& color)
return;
}
- KCalCore::MemoryCalendar::Ptr memCal(new KCalCore::MemoryCalendar(QString::fromLatin1("UTC")));
+#if HAVE_KCALENDAR_QDATETIME
+ KCalCore::MemoryCalendar::Ptr memCal(new KCalCore::MemoryCalendar(QTimeZone::utc()));
+ using DateTime = QDateTime;
+#else
+ KCalCore::MemoryCalendar::Ptr memCal(new KCalCore::MemoryCalendar(QString::fromLatin1("UTC")));
+ using DateTime = KDateTime;
+#endif
KCalCore::FileStorage::Ptr fileStorage(new KCalCore::FileStorage(memCal, url.toLocalFile(), new KCalCore::ICalFormat));
qCDebug(DIGIKAM_GENERAL_LOG) << "Loading calendar from file " << url.toLocalFile();
@@ -308,9 +309,9 @@ void CalSettings::loadSpecial(const QUrl& url, const QColor& color)
qLast = calSys.date(params.year + 1, 1, 1);
qLast = qLast.addDays(-1);
- KDateTime dtFirst(qFirst);
- KDateTime dtLast(qLast);
- KDateTime dtCurrent;
+ DateTime dtFirst(qFirst, QTime(0, 0));
+ DateTime dtLast(qLast, QTime(0, 0));
+ DateTime dtCurrent;
int counter = 0;
KCalCore::Event::List list = memCal->rawEvents(qFirst, qLast);
--
cgit v0.11.2