commit:     302c4780e18256bf4a5e33f58665a7d6081f940a
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon Nov  6 22:40:48 2017 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Mon Nov  6 22:41:14 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=302c4780

media-libs/gexiv2: Fix build w/ >=media-gfx/exiv2-0.26

Closes: https://bugs.gentoo.org/636700
Package-Manager: Portage-2.3.13, Repoman-2.3.4

 .../gexiv2/files/gexiv2-0.10.3-exiv-0.26.patch     | 53 ++++++++++++++++++++++
 media-libs/gexiv2/gexiv2-0.10.3.ebuild             |  1 +
 media-libs/gexiv2/gexiv2-0.10.5-r1.ebuild          |  1 +
 3 files changed, 55 insertions(+)

diff --git a/media-libs/gexiv2/files/gexiv2-0.10.3-exiv-0.26.patch 
b/media-libs/gexiv2/files/gexiv2-0.10.3-exiv-0.26.patch
new file mode 100644
index 00000000000..c3fd932e2a2
--- /dev/null
+++ b/media-libs/gexiv2/files/gexiv2-0.10.3-exiv-0.26.patch
@@ -0,0 +1,53 @@
+From f295c5ce9d0a87ee0c2cc793ca191369e05b7cf1 Mon Sep 17 00:00:00 2001
+From: Jens Georg <[email protected]>
+Date: Fri, 12 May 2017 19:50:58 +0200
+Subject: iostream: Adapt to new Exiv2 API in 0.26
+
+https://bugzilla.gnome.org/show_bug.cgi?id=782449
+---
+ gexiv2/gexiv2-stream-io.cpp | 4 ++--
+ gexiv2/gexiv2-stream-io.h   | 8 +++++++-
+ 2 files changed, 9 insertions(+), 3 deletions(-)
+
+diff --git a/gexiv2/gexiv2-stream-io.cpp b/gexiv2/gexiv2-stream-io.cpp
+index 0ae3324..abfb843 100644
+--- a/gexiv2/gexiv2-stream-io.cpp
++++ b/gexiv2/gexiv2-stream-io.cpp
+@@ -142,7 +142,7 @@ long StreamIo::tell () const {
+     return cb->Position (cb->handle);
+ }
+ 
+-long StreamIo::size () const {
++StreamIo::size_type StreamIo::size () const {
+     return cb->Length (cb->handle);
+ }
+ 
+diff --git a/gexiv2/gexiv2-stream-io.h b/gexiv2/gexiv2-stream-io.h
+index 76621a9..a26f4e6 100644
+--- a/gexiv2/gexiv2-stream-io.h
++++ b/gexiv2/gexiv2-stream-io.h
+@@ -25,6 +25,12 @@ public:
+ 
+       StreamIo (ManagedStreamCallbacks* cb);
+ 
++#if EXIV2_TEST_VERSION(0,26,0)
++    typedef size_t size_type;
++#else
++    typedef long size_type;
++#endif
++
+       virtual ~StreamIo ();
+       virtual int open ();
+       virtual int close ();
+@@ -39,7 +45,7 @@ public:
+       virtual Exiv2::byte* mmap (bool isWriteable = false);
+       virtual int munmap ();
+       virtual long tell () const;
+-      virtual long size () const;
++      virtual size_type size () const;
+       virtual bool isopen () const;
+       virtual int error () const;
+       virtual bool eof () const;
+-- 
+cgit v0.12
+

diff --git a/media-libs/gexiv2/gexiv2-0.10.3.ebuild 
b/media-libs/gexiv2/gexiv2-0.10.3.ebuild
index 6941e825179..4efc11740ce 100644
--- a/media-libs/gexiv2/gexiv2-0.10.3.ebuild
+++ b/media-libs/gexiv2/gexiv2-0.10.3.ebuild
@@ -30,6 +30,7 @@ DEPEND="${RDEPEND}
 src_prepare() {
        xdg_environment_reset
        tc-export CXX
+       epatch "${FILESDIR}/${P}-exiv-0.26.patch"
 }
 
 src_configure() {

diff --git a/media-libs/gexiv2/gexiv2-0.10.5-r1.ebuild 
b/media-libs/gexiv2/gexiv2-0.10.5-r1.ebuild
index 8ba9a36dfba..888a67d1ee9 100644
--- a/media-libs/gexiv2/gexiv2-0.10.5-r1.ebuild
+++ b/media-libs/gexiv2/gexiv2-0.10.5-r1.ebuild
@@ -32,6 +32,7 @@ DEPEND="${RDEPEND}
 
 PATCHES=(
        "${FILESDIR}"/${PN}-0.10.5-stdexcept.patch
+       "${FILESDIR}"/${PN}-0.10.3-exiv-0.26.patch
 )
 
 src_prepare() {

Reply via email to