summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2018-12-30 14:19:43 +0100
committerAndreas Sturmlechner <asturm@gentoo.org>2018-12-30 14:21:51 +0100
commit4368fe063eb2065a56ccc943a8cabacb80735ba3 (patch)
treed33f4ba2eced24dbe1b69c46d6d0b41f64694a0d /kde-apps/gwenview
parentmedia-gfx/photoqt: Fix metadata typo (diff)
downloadgentoo-4368fe063eb2065a56ccc943a8cabacb80735ba3.tar.gz
gentoo-4368fe063eb2065a56ccc943a8cabacb80735ba3.tar.bz2
gentoo-4368fe063eb2065a56ccc943a8cabacb80735ba3.zip
kde-apps/gwenview: Fix build with exiv2-0.27
Apply conditionally for now while patch is in review upstream. Package-Manager: Portage-2.3.52, Repoman-2.3.12 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'kde-apps/gwenview')
-rw-r--r--kde-apps/gwenview/files/gwenview-18.12.0-exiv2-0.27.patch216
-rw-r--r--kde-apps/gwenview/gwenview-18.12.0.ebuild1
2 files changed, 217 insertions, 0 deletions
diff --git a/kde-apps/gwenview/files/gwenview-18.12.0-exiv2-0.27.patch b/kde-apps/gwenview/files/gwenview-18.12.0-exiv2-0.27.patch
new file mode 100644
index 000000000000..fa0d62d84b74
--- /dev/null
+++ b/kde-apps/gwenview/files/gwenview-18.12.0-exiv2-0.27.patch
@@ -0,0 +1,216 @@
+From 7e4cd5e91d7434448b7227ee8cf3307435cc7d00 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
+Date: Sun, 30 Dec 2018 12:59:05 +0100
+Subject: [PATCH 1/2] Include exiv2.hpp instead of individual headers
+
+Headers are subject to refactoring upstream, using exiv2.hpp per recommendation.
+---
+ lib/cms/cmsprofile.h | 2 +-
+ lib/document/document.h | 2 +-
+ lib/exiv2imageloader.cpp | 4 ----
+ lib/exiv2imageloader.h | 2 +-
+ lib/imagemetainfomodel.cpp | 4 +---
+ lib/jpegcontent.cpp | 4 ----
+ lib/timeutils.cpp | 4 ----
+ tests/auto/documenttest.cpp | 2 --
+ tests/auto/imagemetainfomodeltest.cpp | 2 --
+ 9 files changed, 4 insertions(+), 22 deletions(-)
+
+diff --git a/lib/cms/cmsprofile.h b/lib/cms/cmsprofile.h
+index a2a38a87..bc378ff9 100644
+--- a/lib/cms/cmsprofile.h
++++ b/lib/cms/cmsprofile.h
+@@ -30,7 +30,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Cambridge, MA 02110-1301, USA
+ #include <QSharedData>
+
+ // Exiv2
+-#include <exiv2/image.hpp>
++#include <exiv2/exiv2.hpp>
+
+ class QByteArray;
+ class QString;
+diff --git a/lib/document/document.h b/lib/document/document.h
+index c0bb454b..8e32c044 100644
+--- a/lib/document/document.h
++++ b/lib/document/document.h
+@@ -23,7 +23,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ #include <lib/gwenviewlib_export.h>
+
+ #include <string.h>
+-#include <exiv2/image.hpp>
++#include <exiv2/exiv2.hpp>
+
+ // Qt
+ #include <QObject>
+diff --git a/lib/exiv2imageloader.cpp b/lib/exiv2imageloader.cpp
+index f2830f81..f12b7383 100644
+--- a/lib/exiv2imageloader.cpp
++++ b/lib/exiv2imageloader.cpp
+@@ -28,10 +28,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+ // KDE
+
+-// Exiv2
+-#include <exiv2/error.hpp>
+-#include <exiv2/types.hpp>
+-
+ // Local
+
+ namespace Gwenview
+diff --git a/lib/exiv2imageloader.h b/lib/exiv2imageloader.h
+index 57ef24d2..866e7fac 100644
+--- a/lib/exiv2imageloader.h
++++ b/lib/exiv2imageloader.h
+@@ -29,7 +29,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+ // Exiv2
+ #include <string.h>
+-#include <exiv2/image.hpp>
++#include <exiv2/exiv2.hpp>
+
+ // Local
+
+diff --git a/lib/imagemetainfomodel.cpp b/lib/imagemetainfomodel.cpp
+index d7b89ab2..58f1c13d 100644
+--- a/lib/imagemetainfomodel.cpp
++++ b/lib/imagemetainfomodel.cpp
+@@ -33,9 +33,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ #include <KFormat>
+
+ // Exiv2
+-#include <exiv2/exif.hpp>
+-#include <exiv2/image.hpp>
+-#include <exiv2/iptc.hpp>
++#include <exiv2/exiv2.hpp>
+
+ // Local
+ #ifdef HAVE_FITS
+diff --git a/lib/jpegcontent.cpp b/lib/jpegcontent.cpp
+index bb810dd4..a628e8a8 100644
+--- a/lib/jpegcontent.cpp
++++ b/lib/jpegcontent.cpp
+@@ -41,10 +41,6 @@ extern "C" {
+ // KDE
+ #include <KLocalizedString>
+
+-// Exiv2
+-#include <exiv2/exif.hpp>
+-#include <exiv2/image.hpp>
+-
+ // Local
+ #include "jpegerrormanager.h"
+ #include "iodevicejpegsourcemanager.h"
+diff --git a/lib/timeutils.cpp b/lib/timeutils.cpp
+index 9e8836a9..19befff5 100644
+--- a/lib/timeutils.cpp
++++ b/lib/timeutils.cpp
+@@ -29,10 +29,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Cambridge, MA 02110-1301, USA
+ // KDE
+ #include <KFileItem>
+
+-// Exiv2
+-#include <exiv2/exif.hpp>
+-#include <exiv2/image.hpp>
+-
+ // Local
+ #include <lib/exiv2imageloader.h>
+ #include <lib/urlutils.h>
+diff --git a/tests/auto/documenttest.cpp b/tests/auto/documenttest.cpp
+index 9373641f..496346f0 100644
+--- a/tests/auto/documenttest.cpp
++++ b/tests/auto/documenttest.cpp
+@@ -39,8 +39,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ #include "../lib/transformimageoperation.h"
+ #include "testutils.h"
+
+-#include <exiv2/exif.hpp>
+-
+ #include "documenttest.h"
+
+ QTEST_MAIN(DocumentTest)
+diff --git a/tests/auto/imagemetainfomodeltest.cpp b/tests/auto/imagemetainfomodeltest.cpp
+index e3ec8d30..c4467a73 100644
+--- a/tests/auto/imagemetainfomodeltest.cpp
++++ b/tests/auto/imagemetainfomodeltest.cpp
+@@ -28,8 +28,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ #include "../lib/imagemetainfomodel.h"
+ #include "testutils.h"
+
+-#include <exiv2/exif.hpp>
+-
+ #include "imagemetainfomodeltest.h"
+
+ QTEST_MAIN(ImageMetaInfoModelTest)
+--
+2.20.1
+
+
+From 7d6c5d95cf4e4d7c857f5d659a58f82bdc46259c Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
+Date: Sun, 30 Dec 2018 11:31:20 +0100
+Subject: [PATCH 2/2] Fix build with exiv2-0.27
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Summary:
+Include exiv2.hpp instead of individual headers
+
+Headers are subject to refactoring upstream, using exiv2.hpp per recommendation.
+
+Enable exceptions globally - otherwise, lots of the following error:
+
+In file included from /usr/include/exiv2/types.hpp:34,
+ from /usr/include/exiv2/image.hpp:28,
+ from gwenview-18.12.0/lib/cms/cmsprofile.h:33,
+ from gwenview-18.12.0/lib/cms/cmsprofile.cpp:22:
+/usr/include/exiv2/slice.hpp: In constructor ‘Exiv2::Internal::SliceBase::SliceBase(size_t, size_t)’:
+/usr/include/exiv2/slice.hpp:99:77: error: exception handling disabled, use -fexceptions to enable
+ throw std::out_of_range("Begin must be smaller than end");
+ ^
+
+Test Plan: Built fine with exiv2-0.27
+
+Reviewers: #gwenview, cgiboudeaux
+
+Tags: #gwenview
+
+Differential Revision: https://phabricator.kde.org/D17869
+---
+ CMakeLists.txt | 2 ++
+ lib/CMakeLists.txt | 6 ------
+ 2 files changed, 2 insertions(+), 6 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f44f9afc..b85ba4bc 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -126,6 +126,8 @@ include_directories(${CMAKE_CURRENT_BINARY_DIR})
+
+ add_definitions(-DQT_NO_URL_CAST_FROM_STRING)
+
++kde_enable_exceptions()
++
+ ## dirs to build
+ add_subdirectory(lib)
+ add_subdirectory(app)
+diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
+index 169df3c6..f7e9f71f 100644
+--- a/lib/CMakeLists.txt
++++ b/lib/CMakeLists.txt
+@@ -220,12 +220,6 @@ if (GWENVIEW_SEMANTICINFO_BACKEND_BALOO)
+ )
+ endif()
+
+-kde_source_files_enable_exceptions(
+- exiv2imageloader.cpp
+- imagemetainfomodel.cpp
+- timeutils.cpp
+- )
+-
+ ki18n_wrap_ui(gwenviewlib_SRCS
+ crop/cropwidget.ui
+ documentview/messageview.ui
+--
+2.20.1
+
diff --git a/kde-apps/gwenview/gwenview-18.12.0.ebuild b/kde-apps/gwenview/gwenview-18.12.0.ebuild
index a580d5a58ccd..22f5b406075b 100644
--- a/kde-apps/gwenview/gwenview-18.12.0.ebuild
+++ b/kde-apps/gwenview/gwenview-18.12.0.ebuild
@@ -73,6 +73,7 @@ RDEPEND="${COMMON_DEPEND}
src_prepare() {
kde5_src_prepare
+ has_version ">=media-gfx/exiv2-0.27" && eapply "${FILESDIR}/${P}-exiv2-0.27.patch"
if ! use mpris; then
# FIXME: upstream a better solution
sed -e "/set(HAVE_QTDBUS/s/\${Qt5DBus_FOUND}/0/" -i CMakeLists.txt || die