From 872b1ad7b424e22814ca1264f7290af62ed6b29c8f4ac337c6ca3b3fcd1a3feb Mon Sep 17 00:00:00 2001 From: OBS User buildservice-autocommit Date: Sat, 30 Nov 2019 09:37:12 +0000 Subject: [PATCH] Updating link to change in openSUSE:Factory/digikam revision 185.0 OBS-URL: https://build.opensuse.org/package/show/KDE:Extra/digikam?expand=0&rev=5ac817c32157b505f778e9d016eb3502 --- ...now-released-with-exported-targets-u.patch | 249 ++++++++++++++++++ digikam-6.3.0.tar.xz | 3 - digikam-6.4.0.tar.xz | 3 + digikam.changes | 31 +++ digikam.spec | 12 +- 5 files changed, 292 insertions(+), 6 deletions(-) create mode 100644 0001-Revert-Exiv2-is-now-released-with-exported-targets-u.patch delete mode 100644 digikam-6.3.0.tar.xz create mode 100644 digikam-6.4.0.tar.xz diff --git a/0001-Revert-Exiv2-is-now-released-with-exported-targets-u.patch b/0001-Revert-Exiv2-is-now-released-with-exported-targets-u.patch new file mode 100644 index 0000000..a8295d1 --- /dev/null +++ b/0001-Revert-Exiv2-is-now-released-with-exported-targets-u.patch @@ -0,0 +1,249 @@ +From 64454b942be9c61f3c981f7a18a77b332944d58a Mon Sep 17 00:00:00 2001 +From: Wolfgang Bauer +Date: Tue, 12 Nov 2019 11:15:21 +0100 +Subject: [PATCH] Revert "Exiv2 is now released with exported targets using + cmake rules. No need to have a dedicated find exiv2 cmake script. Bump + minimal version to 0.27.1" + +This reverts commit 06e77271d72fe5e4abeb38641f3addc2cfbff126. + +Fixes build on Leap 15.x which only have exiv2 0.26. +As there haven't been any changes other than to rely on the new cmake +files in exiv2 0.27, there should be no problems with the older version. +--- + core/CMakeLists.txt | 14 +-- + core/app/DigikamCoreTarget.cmake | 2 +- + core/cmake/modules/FindExiv2.cmake | 116 ++++++++++++++++++++++++++++++++ + core/libs/metadataengine/CMakeLists.txt | 10 ++- + 4 files changed, 126 insertions(+), 16 deletions(-) + create mode 100644 core/cmake/modules/FindExiv2.cmake + +diff --git a/core/CMakeLists.txt b/core/CMakeLists.txt +index e31e267772..d14364dc1e 100644 +--- a/core/CMakeLists.txt ++++ b/core/CMakeLists.txt +@@ -56,7 +56,7 @@ set(ECM_MIN_VERSION "1.7.0") + set(KF5_MIN_VERSION "5.1.0") + set(QT_MIN_VERSION "5.6.0") + set(LENSFUN_MIN_VERSION "0.2.6.0") +-set(EXIV2_MIN_VERSION "0.27.0") ++set(EXIV2_MIN_VERSION "0.26") + set(OPENCV_MIN_VERSION "3.1.0") + set(QTAV_MIN_VERSION "1.12.0") + set(KSANE_MIN_VERSION "5.0.0") # For digital scanner support. +@@ -248,9 +248,9 @@ find_package(EXPAT) # For DNGWriter: XMP SDK need Expat library to compile. + find_package(Threads) # For DNGWriter and LibRaw which needs native threads support. + find_package(X265) # For HEIF encoding support. + +-find_package(exiv2 REQUIRED) ++find_package(Exiv2 ${EXIV2_MIN_VERSION} REQUIRED) + +-set_package_properties("exiv2" PROPERTIES ++set_package_properties("Exiv2" PROPERTIES + DESCRIPTION "Required to build digiKam" + URL "http://www.exiv2.org" + TYPE RECOMMENDED +@@ -257,10 +257,6 @@ set_package_properties("Exiv2" PROPERTIES + PURPOSE "Library to manage image metadata" + ) + +-if("${exiv2_VERSION}" VERSION_LESS ${EXIV2_MIN_VERSION}) +- message(FATAL_ERROR "Exiv2 version is too old (${exiv2_VERSION})! Minimal version required:${EXIV2_MIN_VERSION}.") +-endif() +- + # -- check Media player -------------------------------------------------------- + + find_package(FFmpeg COMPONENTS AVCODEC AVFILTER AVFORMAT AVUTIL SWSCALE) +@@ -585,7 +585,7 @@ PRINT_COMPONENT_COMPILE_STATUS("FacesEngine DNN Support" ENABLE_FACESENGINE_DNN) + # ============================================================================== + + PRINT_LIBRARY_STATUS("libboostgraph" "http://www.boost.org/doc/libs" "(version >= 1.43.0)" Boost_FOUND) +-PRINT_LIBRARY_STATUS("libexiv2" "http://www.exiv2.org" "(version >= ${EXIV2_MIN_VERSION}" exiv2_FOUND) ++PRINT_LIBRARY_STATUS("libexiv2" "http://www.exiv2.org" "(version >= ${EXIV2_MIN_VERSION}" Exiv2_FOUND) + PRINT_LIBRARY_STATUS("libexpat" "http://expat.sourceforge.net" "(version >= 2.0.0)" EXPAT_FOUND) + PRINT_LIBRARY_STATUS("libjpeg" "http://www.ijg.org" "(version >= 6b)" JPEG_FOUND) + PRINT_LIBRARY_STATUS("libkde" "http://www.kde.org" "(version >= ${KF5_MIN_VERSION})" KF5_FOUND) +@@ -627,7 +627,7 @@ PRINT_OPTIONAL_LIBRARY_STATUS("OpenGL" "https://www.mesa3d.org" + # ============================================================================== + + if(Boost_FOUND AND +- exiv2_FOUND AND ++ Exiv2_FOUND AND + EXPAT_FOUND AND + JPEG_FOUND AND + KF5_FOUND AND +diff --git a/core/app/DigikamCoreTarget.cmake b/core/app/DigikamCoreTarget.cmake +index 72b424cb36..7aa6dc5a1e 100644 +--- a/core/app/DigikamCoreTarget.cmake ++++ b/core/app/DigikamCoreTarget.cmake +@@ -116,7 +116,7 @@ target_link_libraries(digikamcore + ${TIFF_LIBRARIES} + PNG::PNG + ${JPEG_LIBRARIES} +- exiv2lib ++ ${EXIV2_LIBRARIES} + + ${FFMPEG_LIBRARIES} + +diff --git a/core/cmake/modules/FindExiv2.cmake b/core/cmake/modules/FindExiv2.cmake +new file mode 100644 +index 0000000000..912ffaee0c +--- /dev/null ++++ b/core/cmake/modules/FindExiv2.cmake +@@ -0,0 +1,116 @@ ++# - Try to find the Exiv2 library ++# ++# EXIV2_MIN_VERSION - You can set this variable to the minimum version you need ++# before doing FIND_PACKAGE(Exiv2). The default is 0.26. ++# ++# Once done this will define ++# ++# EXIV2_FOUND - system has libexiv2 ++# EXIV2_VERSION - the version of libexiv2 ++# EXIV2_INCLUDE_DIR - the libexiv2 include directory ++# EXIV2_LIBRARIES - Link these to use libexiv2 ++# EXIV2_DEFINITIONS - Compiler switches required for using libexiv2 ++# ++# The minimum required version of Exiv2 can be specified using the ++# standard syntax, e.g. find_package(Exiv2 0.26) ++# ++# For compatibility, also the variable EXIV2_MIN_VERSION can be set to the minimum version ++# you need before doing FIND_PACKAGE(Exiv2). The default is 0.26. ++# ++# Copyright (c) 2010, Alexander Neundorf, ++# Copyright (c) 2008-2019, Gilles Caulier, ++# ++# Redistribution and use is allowed according to the terms of the BSD license. ++# For details see the accompanying COPYING-CMAKE-SCRIPTS file. ++ ++# Support EXIV2_MIN_VERSION for compatibility: ++ ++if(NOT Exiv2_FIND_VERSION) ++ ++ set(Exiv2_FIND_VERSION "${EXIV2_MIN_VERSION}") ++ ++endif() ++ ++# The minimum version of exiv2 we require ++if(NOT Exiv2_FIND_VERSION) ++ ++ set(Exiv2_FIND_VERSION "0.26") ++ ++endif() ++ ++if(NOT WIN32) ++ ++ # use pkg-config to get the directories and then use these values ++ # in the FIND_PATH() and FIND_LIBRARY() calls ++ find_package(PkgConfig) ++ pkg_check_modules(PC_EXIV2 QUIET exiv2) ++ set(EXIV2_DEFINITIONS ${PC_EXIV2_CFLAGS_OTHER}) ++ ++endif() ++ ++find_path(EXIV2_INCLUDE_DIR NAMES exiv2/exif.hpp ++ HINTS ++ ${PC_EXIV2_INCLUDEDIR} ++ ${PC_EXIV2_INCLUDE_DIRS} ++ ) ++ ++find_library(EXIV2_LIBRARY NAMES exiv2 libexiv2 exiv2lib ++ HINTS ++ ${PC_EXIV2_LIBDIR} ++ ${PC_EXIV2_LIBRARY_DIRS} ++ ) ++ ++if (EXIV2_INCLUDE_DIR AND NOT EXIV2_VERSION) ++ ++ # For Exiv2 <= 0.26, get the version number from exiv2/version.hpp and store it in the cache: ++ ++ file(READ ${EXIV2_INCLUDE_DIR}/exiv2/version.hpp EXIV2_VERSION_CONTENT) ++ string(REGEX MATCH "#define EXIV2_MAJOR_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}") ++ set(EXIV2_VERSION_MAJOR "${CMAKE_MATCH_1}") ++ ++ string(REGEX MATCH "#define EXIV2_MINOR_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}") ++ set(EXIV2_VERSION_MINOR "${CMAKE_MATCH_1}") ++ ++ string(REGEX MATCH "#define EXIV2_PATCH_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}") ++ set(EXIV2_VERSION_PATCH "${CMAKE_MATCH_1}") ++ ++ if(NOT "${EXIV2_VERSION_MAJOR}" STREQUAL "" AND ++ NOT "${EXIV2_VERSION_MINOR}" STREQUAL "" AND ++ NOT "${EXIV2_VERSION_PATCH}" STREQUAL "") ++ ++ set(EXIV2_VERSION "${EXIV2_VERSION_MAJOR}.${EXIV2_VERSION_MINOR}.${EXIV2_VERSION_PATCH}" ++ CACHE STRING "Version number of Exiv2" FORCE) ++ else() ++ ++ # For Exiv2 >= 0.27, get the version number from exiv2/exv_conf.h and store it in the cache: ++ ++ file(READ ${EXIV2_INCLUDE_DIR}/exiv2/exv_conf.h EXIV2_VERSION_CONTENT) ++ string(REGEX MATCH "#define EXIV2_MAJOR_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}") ++ set(EXIV2_VERSION_MAJOR "${CMAKE_MATCH_1}") ++ ++ string(REGEX MATCH "#define EXIV2_MINOR_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}") ++ set(EXIV2_VERSION_MINOR "${CMAKE_MATCH_1}") ++ ++ string(REGEX MATCH "#define EXIV2_PATCH_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}") ++ set(EXIV2_VERSION_PATCH "${CMAKE_MATCH_1}") ++ ++ set(EXIV2_VERSION "${EXIV2_VERSION_MAJOR}.${EXIV2_VERSION_MINOR}.${EXIV2_VERSION_PATCH}" ++ CACHE STRING "Version number of Exiv2" FORCE) ++ ++ endif() ++ ++endif() ++ ++set(EXIV2_LIBRARIES "${EXIV2_LIBRARY}") ++ ++include(FindPackageHandleStandardArgs) ++find_package_handle_standard_args(Exiv2 REQUIRED_VARS EXIV2_LIBRARY EXIV2_INCLUDE_DIR ++ VERSION_VAR EXIV2_VERSION) ++ ++MESSAGE(STATUS "EXIV2_FOUND = ${EXIV2_FOUND}") ++MESSAGE(STATUS "EXIV2_VERSION = ${EXIV2_VERSION}") ++MESSAGE(STATUS "EXIV2_INCLUDE_DIR = ${EXIV2_INCLUDE_DIR}") ++MESSAGE(STATUS "EXIV2_LIBRARY = ${EXIV2_LIBRARY}") ++MESSAGE(STATUS "EXIV2_DEFINITIONS = ${EXIV2_DEFINITIONS}") ++ ++mark_as_advanced(EXIV2_INCLUDE_DIR EXIV2_LIBRARY) +diff --git a/core/libs/metadataengine/CMakeLists.txt b/core/libs/metadataengine/CMakeLists.txt +index 64754c882c..da6fac050a 100644 +--- a/core/libs/metadataengine/CMakeLists.txt ++++ b/core/libs/metadataengine/CMakeLists.txt +@@ -7,14 +7,13 @@ + + kde_enable_exceptions() + +-# TODO: How to extract exiv2lib definitions properties with cmake import interface? +-#add_definitions($) ++add_definitions(${EXIV2_DEFINITIONS}) + + if(WIN32) +- add_definitions(-DEXV_HAVE_DLL) ++ add_definitions( -DEXV_HAVE_DLL ) + endif() + +-if("${exiv2_VERSION}" VERSION_LESS "0.27.99") ++if("${EXIV2_VERSION}" VERSION_LESS "0.27.99") + + # Exiv2 version < 0.28 use auto_ptr instead unique_ptr which is deprecated. + DISABLE_GCC_COMPILER_WARNINGS("5.99.99" "-Wno-deprecated") +@@ -64,13 +63,12 @@ set(libdmetadata_SRCS + ) + + include_directories( ++ ${EXIV2_INCLUDE_DIR} + $ + $ + + $ + $ +- +- $ + ) + + add_library(dmetadata_src OBJECT ${libdmetadata_SRCS}) +-- +2.16.4 + diff --git a/digikam-6.3.0.tar.xz b/digikam-6.3.0.tar.xz deleted file mode 100644 index 45721ce..0000000 --- a/digikam-6.3.0.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:94dc05e3f9c08b83419010d1689c7b0398d4eced4fef42375249c974622874ba -size 335641824 diff --git a/digikam-6.4.0.tar.xz b/digikam-6.4.0.tar.xz new file mode 100644 index 0000000..6e1fbd9 --- /dev/null +++ b/digikam-6.4.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:775012ff515bdd25a0b894c95bf5d33e7122b523da9c0f3af260ec3eff498d6f +size 340146992 diff --git a/digikam.changes b/digikam.changes index cd4950d..7df4c10 100644 --- a/digikam.changes +++ b/digikam.changes @@ -1,3 +1,34 @@ +------------------------------------------------------------------- +Thu Nov 21 21:38:08 UTC 2019 - wbauer@tmo.at + +- Add patch to make it build with exiv2 0.26 on Leap 15: + * 0001-Revert-Exiv2-is-now-released-with-exported-targets-u.patch + (boo#1156937) +- Update to latest upstream 6.4.0 source tarball + +------------------------------------------------------------------- +Sat Nov 9 23:41:23 UTC 2019 - wbauer@tmo.at + +- Update to 6.4.0 + * https://www.digikam.org/news/2019-11-09-6.4.0_release_announcement/ +- New features (from NEWS): +General : new RawImport plugin interface to delegate Raw + decoding function to extra engine with ImageEditor. +General : new DImg plugin interface to externalize image loaders + from core implementation. +General : new HEIC image loader compatible with media generated + by Apple devices. +Import : add new option to convert on the fly to HEIC lossless + format while downloading. +ImageEditor: add new setting from setup dialog to select right Raw + Import plugin. +ImageEditor: add new clone tool to fix artifacts on image. +ImageEditor: add new tool to import RAW image using UFRaw. +ImageEditor: add new tool to import RAW image using RawTherapee. +ImageEditor: add new tool to import RAW image using DarkTable. +BQM : add new tool to convert to HEIC format. +- 75 bugs fixed + ------------------------------------------------------------------- Tue Oct 1 13:07:53 UTC 2019 - Michel Normand diff --git a/digikam.spec b/digikam.spec index a8ecbe3..ab2091b 100644 --- a/digikam.spec +++ b/digikam.spec @@ -19,15 +19,17 @@ %define soversion 6 %bcond_without lang Name: digikam -Version: 6.3.0 +Version: 6.4.0 Release: 0 Summary: A KDE Photo Manager License: GPL-2.0-or-later Group: Productivity/Graphics/Viewers -URL: http://www.digikam.org/ -Source0: http://download.kde.org/stable/%{name}/%{version}/%{name}-%{version}.tar.xz +URL: https://www.digikam.org/ +Source0: https://download.kde.org/stable/%{name}/%{version}/%{name}-%{version}.tar.xz # PATCH-FIX-OPENSUSE 0001-Disable-detection-of-OpenGL-for-GLES-platforms.patch -- The OpenGL slideshow depends on Desktop GL, see kde#383715 Patch0: 0001-Disable-detection-of-OpenGL-for-GLES-platforms.patch +# PATCH-FIX-OPENSUSE -- Lower minimum exiv2 version to 0.26 +Patch1: 0001-Revert-Exiv2-is-now-released-with-exported-targets-u.patch BuildRequires: QtAV-devel >= 1.12 BuildRequires: bison BuildRequires: boost-devel @@ -173,6 +175,10 @@ The main digikam libraries that are being shared between showfoto and digikam # Disable OpenGL slideshow on embedded platforms %patch0 -p1 %endif +%if 0%{?suse_version} <= 1500 +# Leap 15 only has exiv2 0.26 +%patch1 -p1 +%endif # Remove build time references so build-compare can do its work FAKE_BUILDDATE=$(LC_ALL=C date -u -r %{_sourcedir}/%{name}.changes '+%%b %%e %%Y')