--- /dev/null
+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
+