Accepting request 750428 from KDE:Extra
OBS-URL: https://build.opensuse.org/request/show/750428 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/digikam?expand=0&rev=185
This commit is contained in:
commit
0b0a210500
249
0001-Revert-Exiv2-is-now-released-with-exported-targets-u.patch
Normal file
249
0001-Revert-Exiv2-is-now-released-with-exported-targets-u.patch
Normal file
@ -0,0 +1,249 @@
|
||||
From 64454b942be9c61f3c981f7a18a77b332944d58a Mon Sep 17 00:00:00 2001
|
||||
From: Wolfgang Bauer <wbauer@tmo.at>
|
||||
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, <neundorf at kde dot org>
|
||||
+# Copyright (c) 2008-2019, Gilles Caulier, <caulier dot gilles at gmail dot com>
|
||||
+#
|
||||
+# 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($<TARGET_PROPERTY:exiv2lib,INTERFACE_COMPILE_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}
|
||||
$<TARGET_PROPERTY:Qt5::Gui,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
$<TARGET_PROPERTY:Qt5::Core,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
|
||||
$<TARGET_PROPERTY:KF5::ConfigCore,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
$<TARGET_PROPERTY:KF5::I18n,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
-
|
||||
- $<TARGET_PROPERTY:exiv2lib,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
)
|
||||
|
||||
add_library(dmetadata_src OBJECT ${libdmetadata_SRCS})
|
||||
--
|
||||
2.16.4
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:94dc05e3f9c08b83419010d1689c7b0398d4eced4fef42375249c974622874ba
|
||||
size 335641824
|
3
digikam-6.4.0.tar.xz
Normal file
3
digikam-6.4.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:775012ff515bdd25a0b894c95bf5d33e7122b523da9c0f3af260ec3eff498d6f
|
||||
size 340146992
|
@ -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 <normand@linux.vnet.ibm.com>
|
||||
|
||||
|
12
digikam.spec
12
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')
|
||||
|
Loading…
Reference in New Issue
Block a user