From c8a77dfe4d3d307c1d5dd2650b7297447d8b609d Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 12 Jan 2019 16:58:08 +0000 Subject: gentoo resync : 12.01.2019 --- media-gfx/krita/files/krita-4.1.7-exiv2-0.27.patch | 354 --------------------- 1 file changed, 354 deletions(-) delete mode 100644 media-gfx/krita/files/krita-4.1.7-exiv2-0.27.patch (limited to 'media-gfx/krita/files') diff --git a/media-gfx/krita/files/krita-4.1.7-exiv2-0.27.patch b/media-gfx/krita/files/krita-4.1.7-exiv2-0.27.patch deleted file mode 100644 index 41b290852eb5..000000000000 --- a/media-gfx/krita/files/krita-4.1.7-exiv2-0.27.patch +++ /dev/null @@ -1,354 +0,0 @@ -From 6b6758bb37da4997be36a7e2a839b07278160559 Mon Sep 17 00:00:00 2001 -From: Andreas Sturmlechner -Date: Thu, 27 Dec 2018 22:40:44 +0100 -Subject: [PATCH] Fix building against exiv2-0.27 - -Summary: -Copied FindLibExiv2.cmake from ECM 5.53.0 until we raise min version. - -Thanks-to: Boudewijn Rempt -for final fix to kis_xmp_io.cpp. - -CCBUG: 402566 - -Test Plan: Built fine against exiv2-0.26 and exiv2-0.27. - -Reviewers: #krita, rempt - -Reviewed By: #krita, rempt - -Subscribers: pino - -Tags: #krita - -Differential Revision: https://phabricator.kde.org/D17810 ---- - CMakeLists.txt | 6 +- - cmake/modules/FindLibExiv2.cmake | 115 ++++++++++++++++++++++++++++++ - libs/ui/CMakeLists.txt | 3 +- - libs/ui/kisexiv2/kis_exif_io.cpp | 14 ++-- - libs/ui/kisexiv2/kis_exiv2.h | 2 +- - libs/ui/kisexiv2/kis_iptc_io.cpp | 4 +- - libs/ui/kisexiv2/kis_xmp_io.cpp | 6 +- - plugins/impex/jpeg/CMakeLists.txt | 5 +- - 8 files changed, 130 insertions(+), 25 deletions(-) - create mode 100644 cmake/modules/FindLibExiv2.cmake - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 5558088200..b2d2cd497e 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -607,11 +607,7 @@ set_package_properties(Eigen3 PROPERTIES - ## - ## Test for exiv2 - ## --find_package(Exiv2 0.16 REQUIRED) --set_package_properties(Exiv2 PROPERTIES -- DESCRIPTION "Image metadata library and tools" -- URL "http://www.exiv2.org" -- PURPOSE "Required by Krita") -+find_package(LibExiv2 0.16 REQUIRED) - - ## - ## Test for lcms -diff --git a/cmake/modules/FindLibExiv2.cmake b/cmake/modules/FindLibExiv2.cmake -new file mode 100644 -index 0000000000..935cee2c55 ---- /dev/null -+++ b/cmake/modules/FindLibExiv2.cmake -@@ -0,0 +1,115 @@ -+#.rst: -+# FindLibExiv2 -+# ------------ -+# -+# Try to find the Exiv2 library. -+# -+# This will define the following variables: -+# -+# ``LibExiv2_FOUND`` -+# System has LibExiv2. -+# -+# ``LibExiv2_VERSION`` -+# The version of LibExiv2. -+# -+# ``LibExiv2_INCLUDE_DIRS`` -+# This should be passed to target_include_directories() if -+# the target is not used for linking. -+# -+# ``LibExiv2_LIBRARIES`` -+# The LibExiv2 library. -+# This can be passed to target_link_libraries() instead of -+# the ``LibExiv2::LibExiv2`` target -+# -+# If ``LibExiv2_FOUND`` is TRUE, the following imported target -+# will be available: -+# -+# ``LibExiv2::LibExiv2`` -+# The Exiv2 library -+# -+# Since 5.53.0. -+# -+#============================================================================= -+# Copyright (c) 2018, Christophe Giboudeaux, -+# Copyright (c) 2010, Alexander Neundorf, -+# Copyright (c) 2008, Gilles Caulier, -+# -+# -+# Redistribution and use in source and binary forms, with or without -+# modification, are permitted provided that the following conditions -+# are met: -+# -+# 1. Redistributions of source code must retain the copyright -+# notice, this list of conditions and the following disclaimer. -+# 2. Redistributions in binary form must reproduce the copyright -+# notice, this list of conditions and the following disclaimer in the -+# documentation and/or other materials provided with the distribution. -+# 3. The name of the author may not be used to endorse or promote products -+# derived from this software without specific prior written permission. -+# -+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR -+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -+# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, -+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT -+# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -+#============================================================================= -+ -+find_package(PkgConfig QUIET) -+pkg_check_modules(PC_EXIV2 QUIET exiv2) -+ -+find_path(LibExiv2_INCLUDE_DIRS NAMES exiv2/exif.hpp -+ HINTS ${PC_EXIV2_INCLUDEDIR} -+) -+ -+find_library(LibExiv2_LIBRARIES NAMES exiv2 libexiv2 -+ HINTS ${PC_EXIV2_LIBRARY_DIRS} -+) -+ -+set(LibExiv2_VERSION ${PC_EXIV2_VERSION}) -+ -+if(NOT LibExiv2_VERSION AND DEFINED LibExiv2_INCLUDE_DIRS) -+ # With exiv >= 0.27, the version #defines are in exv_conf.h instead of version.hpp -+ foreach(_exiv2_version_file "version.hpp" "exv_conf.h") -+ if(EXISTS "${LibExiv2_INCLUDE_DIRS}/exiv2/${_exiv2_version_file}") -+ file(READ "${LibExiv2_INCLUDE_DIRS}/exiv2/${_exiv2_version_file}" _exiv_version_file_content) -+ string(REGEX MATCH "#define EXIV2_MAJOR_VERSION[ ]+\\([0-9]+\\)" EXIV2_MAJOR_VERSION_MATCH ${_exiv_version_file_content}) -+ string(REGEX MATCH "#define EXIV2_MINOR_VERSION[ ]+\\([0-9]+\\)" EXIV2_MINOR_VERSION_MATCH ${_exiv_version_file_content}) -+ string(REGEX MATCH "#define EXIV2_PATCH_VERSION[ ]+\\([0-9]+\\)" EXIV2_PATCH_VERSION_MATCH ${_exiv_version_file_content}) -+ if(EXIV2_MAJOR_VERSION_MATCH) -+ string(REGEX REPLACE ".*_MAJOR_VERSION[ ]+\\((.*)\\)" "\\1" EXIV2_MAJOR_VERSION ${EXIV2_MAJOR_VERSION_MATCH}) -+ string(REGEX REPLACE ".*_MINOR_VERSION[ ]+\\((.*)\\)" "\\1" EXIV2_MINOR_VERSION ${EXIV2_MINOR_VERSION_MATCH}) -+ string(REGEX REPLACE ".*_PATCH_VERSION[ ]+\\((.*)\\)" "\\1" EXIV2_PATCH_VERSION ${EXIV2_PATCH_VERSION_MATCH}) -+ endif() -+ endif() -+ endforeach() -+ -+ set(LibExiv2_VERSION "${EXIV2_MAJOR_VERSION}.${EXIV2_MINOR_VERSION}.${EXIV2_PATCH_VERSION}") -+endif() -+ -+include(FindPackageHandleStandardArgs) -+find_package_handle_standard_args(LibExiv2 -+ FOUND_VAR LibExiv2_FOUND -+ REQUIRED_VARS LibExiv2_LIBRARIES LibExiv2_INCLUDE_DIRS -+ VERSION_VAR LibExiv2_VERSION -+) -+ -+mark_as_advanced(LibExiv2_INCLUDE_DIRS LibExiv2_LIBRARIES) -+ -+if(LibExiv2_FOUND AND NOT TARGET LibExiv2::LibExiv2) -+ add_library(LibExiv2::LibExiv2 UNKNOWN IMPORTED) -+ set_target_properties(LibExiv2::LibExiv2 PROPERTIES -+ IMPORTED_LOCATION "${LibExiv2_LIBRARIES}" -+ INTERFACE_INCLUDE_DIRECTORIES "${LibExiv2_INCLUDE_DIRS}" -+ ) -+endif() -+ -+include(FeatureSummary) -+set_package_properties(LibExiv2 PROPERTIES -+ URL "http://www.exiv2.org" -+ DESCRIPTION "Image metadata support" -+) -diff --git a/libs/ui/CMakeLists.txt b/libs/ui/CMakeLists.txt -index f14d3591bc..ff57f53158 100644 ---- a/libs/ui/CMakeLists.txt -+++ b/libs/ui/CMakeLists.txt -@@ -1,6 +1,5 @@ - include_directories( - ${CMAKE_CURRENT_SOURCE_DIR}/qtlockedfile -- ${EXIV2_INCLUDE_DIR} - ) - - include_directories(SYSTEM -@@ -544,7 +543,7 @@ add_library(kritaui SHARED ${kritaui_HEADERS_MOC} ${kritaui_LIB_SRCS} ) - generate_export_header(kritaui BASE_NAME kritaui) - - target_link_libraries(kritaui KF5::CoreAddons KF5::Completion KF5::I18n KF5::ItemViews Qt5::Network -- kritaimpex kritacolor kritaimage kritalibbrush kritawidgets kritawidgetutils ${PNG_LIBRARIES} ${EXIV2_LIBRARIES} -+ kritaimpex kritacolor kritaimage kritalibbrush kritawidgets kritawidgetutils ${PNG_LIBRARIES} LibExiv2::LibExiv2 - ) - - if (HAVE_QT_MULTIMEDIA) -diff --git a/libs/ui/kisexiv2/kis_exif_io.cpp b/libs/ui/kisexiv2/kis_exif_io.cpp -index 1a01fedf33..4a7857aa9c 100644 ---- a/libs/ui/kisexiv2/kis_exif_io.cpp -+++ b/libs/ui/kisexiv2/kis_exif_io.cpp -@@ -438,11 +438,10 @@ bool KisExifIO::saveTo(KisMetaData::Store* store, QIODevice* ioDevice, HeaderTyp - if (entry.value().asArray().size() > 0) { - creator = entry.value().asArray()[0]; - } --#if EXIV2_MAJOR_VERSION == 0 && EXIV2_MINOR_VERSION <= 20 -+#if !EXIV2_TEST_VERSION(0,21,0) - v = kmdValueToExivValue(creator, Exiv2::ExifTags::tagType(exifKey.tag(), exifKey.ifdId())); - #else - v = kmdValueToExivValue(creator, exifKey.defaultTypeId()); -- - #endif - } else if (exivKey == "Exif.Photo.OECF") { - v = kmdOECFStructureToExifOECF(entry.value()); -@@ -456,13 +455,13 @@ bool KisExifIO::saveTo(KisMetaData::Store* store, QIODevice* ioDevice, HeaderTyp - Q_ASSERT(entry.value().type() == KisMetaData::Value::LangArray); - QMap langArr = entry.value().asLangArray(); - if (langArr.contains("x-default")) { --#if EXIV2_MAJOR_VERSION == 0 && EXIV2_MINOR_VERSION <= 20 -+#if !EXIV2_TEST_VERSION(0,21,0) - v = kmdValueToExivValue(langArr.value("x-default"), Exiv2::ExifTags::tagType(exifKey.tag(), exifKey.ifdId())); - #else - v = kmdValueToExivValue(langArr.value("x-default"), exifKey.defaultTypeId()); - #endif - } else if (langArr.size() > 0) { --#if EXIV2_MAJOR_VERSION == 0 && EXIV2_MINOR_VERSION <= 20 -+#if !EXIV2_TEST_VERSION(0,21,0) - v = kmdValueToExivValue(langArr.begin().value(), Exiv2::ExifTags::tagType(exifKey.tag(), exifKey.ifdId())); - #else - v = kmdValueToExivValue(langArr.begin().value(), exifKey.defaultTypeId()); -@@ -470,7 +469,7 @@ bool KisExifIO::saveTo(KisMetaData::Store* store, QIODevice* ioDevice, HeaderTyp - } - } else { - dbgMetaData << exifKey.tag(); --#if EXIV2_MAJOR_VERSION == 0 && EXIV2_MINOR_VERSION <= 20 -+#if !EXIV2_TEST_VERSION(0,21,0) - v = kmdValueToExivValue(entry.value(), Exiv2::ExifTags::tagType(exifKey.tag(), exifKey.ifdId())); - #else - v = kmdValueToExivValue(entry.value(), exifKey.defaultTypeId()); -@@ -487,7 +486,7 @@ bool KisExifIO::saveTo(KisMetaData::Store* store, QIODevice* ioDevice, HeaderTyp - dbgMetaData << "exiv error " << e.what(); - } - } --#if EXIV2_MAJOR_VERSION == 0 && EXIV2_MINOR_VERSION <= 17 -+#if !EXIV2_TEST_VERSION(0,18,0) - Exiv2::DataBuf rawData = exifData.copy(); - ioDevice->write((const char*) rawData.pData_, rawData.size_); - #else -@@ -514,7 +513,7 @@ bool KisExifIO::loadFrom(KisMetaData::Store* store, QIODevice* ioDevice) const - QByteArray arr = ioDevice->readAll(); - Exiv2::ExifData exifData; - Exiv2::ByteOrder byteOrder; --#if EXIV2_MAJOR_VERSION == 0 && EXIV2_MINOR_VERSION <= 17 -+#if !EXIV2_TEST_VERSION(0,18,0) - exifData.load((const Exiv2::byte*)arr.data(), arr.size()); - byteOrder = exifData.byteOrder(); - #else -@@ -529,7 +528,6 @@ bool KisExifIO::loadFrom(KisMetaData::Store* store, QIODevice* ioDevice) const - dbgKrita << "Received unknown exception trying to parse exiv data"; - return false; - } -- - #endif - dbgMetaData << "Byte order = " << byteOrder << ppVar(Exiv2::bigEndian) << ppVar(Exiv2::littleEndian); - dbgMetaData << "There are" << exifData.count() << " entries in the exif section"; -diff --git a/libs/ui/kisexiv2/kis_exiv2.h b/libs/ui/kisexiv2/kis_exiv2.h -index 9343265f1e..6b66aa7852 100644 ---- a/libs/ui/kisexiv2/kis_exiv2.h -+++ b/libs/ui/kisexiv2/kis_exiv2.h -@@ -21,7 +21,7 @@ - - - #include --#include -+#include - #include "kritaui_export.h" - - /// Convert an exiv value to a KisMetaData value -diff --git a/libs/ui/kisexiv2/kis_iptc_io.cpp b/libs/ui/kisexiv2/kis_iptc_io.cpp -index d2eb7c9b2f..0ac881f61b 100644 ---- a/libs/ui/kisexiv2/kis_iptc_io.cpp -+++ b/libs/ui/kisexiv2/kis_iptc_io.cpp -@@ -126,7 +126,7 @@ bool KisIptcIO::saveTo(KisMetaData::Store* store, QIODevice* ioDevice, HeaderTyp - } - } - } --#if EXIV2_MAJOR_VERSION == 0 && EXIV2_MINOR_VERSION <= 17 -+#if !EXIV2_TEST_VERSION(0,18,0) - Exiv2::DataBuf rawData = iptcData.copy(); - #else - Exiv2::DataBuf rawData = Exiv2::IptcParser::encode(iptcData); -@@ -167,7 +167,7 @@ bool KisIptcIO::loadFrom(KisMetaData::Store* store, QIODevice* ioDevice) const - ioDevice->open(QIODevice::ReadOnly); - QByteArray arr = ioDevice->readAll(); - Exiv2::IptcData iptcData; --#if EXIV2_MAJOR_VERSION == 0 && EXIV2_MINOR_VERSION <= 17 -+#if !EXIV2_TEST_VERSION(0,18,0) - iptcData.load((const Exiv2::byte*)arr.data(), arr.size()); - #else - Exiv2::IptcParser::decode(iptcData, (const Exiv2::byte*)arr.data(), arr.size()); -diff --git a/libs/ui/kisexiv2/kis_xmp_io.cpp b/libs/ui/kisexiv2/kis_xmp_io.cpp -index c4663efe7d..72fa5c5d38 100644 ---- a/libs/ui/kisexiv2/kis_xmp_io.cpp -+++ b/libs/ui/kisexiv2/kis_xmp_io.cpp -@@ -17,7 +17,6 @@ - #include "kis_xmp_io.h" - - #include --#include - - #include "kis_exiv2.h" - -@@ -277,9 +276,8 @@ bool KisXMPIO::loadFrom(KisMetaData::Store* store, QIODevice* ioDevice) const - const Exiv2::XmpArrayValue* xav = dynamic_cast(value.get()); - Q_ASSERT(xav); - QList array; -- for (std::vector< std::string >::const_iterator it = xav->value_.begin(); -- it != xav->value_.end(); ++it) { -- QString value = it->c_str(); -+ for (int i = 0; i < xav->size(); ++i) { -+ QString value = QString::fromStdString(xav->toString(i)); - if (parser) { - array.push_back(parser->parse(value)); - } else { -diff --git a/plugins/impex/jpeg/CMakeLists.txt b/plugins/impex/jpeg/CMakeLists.txt -index 347e46dbe3..50edb05c96 100644 ---- a/plugins/impex/jpeg/CMakeLists.txt -+++ b/plugins/impex/jpeg/CMakeLists.txt -@@ -4,7 +4,6 @@ set(ICCJPEG_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/lcms") - - include_directories( - ${ICCJPEG_SOURCE_DIR} -- ${EXIV2_INCLUDE_DIR} - ) - - include_directories(SYSTEM -@@ -25,7 +24,7 @@ set(kritajpegimport_SOURCES - - add_library(kritajpegimport MODULE ${kritajpegimport_SOURCES}) - --target_link_libraries(kritajpegimport kritaui ${JPEG_LIBRARIES} ${LCMS2_LIBRARIES} ${EXIV2_LIBRARIES} ) -+target_link_libraries(kritajpegimport kritaui ${JPEG_LIBRARIES} ${LCMS2_LIBRARIES} LibExiv2::LibExiv2 ) - - install(TARGETS kritajpegimport DESTINATION ${KRITA_PLUGIN_INSTALL_DIR}) - -@@ -38,7 +37,7 @@ ki18n_wrap_ui(kritajpegexport_SOURCES kis_wdg_options_jpeg.ui ) - - add_library(kritajpegexport MODULE ${kritajpegexport_SOURCES}) - --target_link_libraries(kritajpegexport kritaui kritaimpex ${JPEG_LIBRARIES} ${LCMS2_LIBRARIES} ${EXIV2_LIBRARIES} ) -+target_link_libraries(kritajpegexport kritaui kritaimpex ${JPEG_LIBRARIES} ${LCMS2_LIBRARIES} LibExiv2::LibExiv2 ) - - install(TARGETS kritajpegexport DESTINATION ${KRITA_PLUGIN_INSTALL_DIR}) - install( PROGRAMS krita_jpeg.desktop DESTINATION ${XDG_APPS_INSTALL_DIR}) --- -2.20.1 - -- cgit v1.2.3