summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2024-07-13 23:56:51 +0200
committerAndreas Sturmlechner <asturm@gentoo.org>2024-07-16 18:31:21 +0200
commit4d5db1ac3b81934e9f83f5885311259afcf1d406 (patch)
tree0fa4fe570ce3731a5d16803b2628cd6b62b7f615 /media-gfx/digikam
parentdev-vcs/breezy: Add missing RDEPEND on dev-python/tzlocal (diff)
downloadgentoo-4d5db1ac3b81934e9f83f5885311259afcf1d406.tar.gz
gentoo-4d5db1ac3b81934e9f83f5885311259afcf1d406.tar.bz2
gentoo-4d5db1ac3b81934e9f83f5885311259afcf1d406.zip
media-gfx/digikam: add 8.4.0
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'media-gfx/digikam')
-rw-r--r--media-gfx/digikam/Manifest1
-rw-r--r--media-gfx/digikam/digikam-8.4.0.ebuild147
-rw-r--r--media-gfx/digikam/files/digikam-8.4.0-cmake.patch199
3 files changed, 347 insertions, 0 deletions
diff --git a/media-gfx/digikam/Manifest b/media-gfx/digikam/Manifest
index a19232ea2344..279115e68d32 100644
--- a/media-gfx/digikam/Manifest
+++ b/media-gfx/digikam/Manifest
@@ -1 +1,2 @@
DIST digiKam-8.3.0-1.tar.xz 55664168 BLAKE2B 46b0f26bb781d370c1046fd6de6afb0a0878175f9722a2fc9ed23aad89eb0671f8b219bb7c169ccd22d440ce493d958304a5a527a733862fe4e2c5cd07da8a21 SHA512 c2fdcecafa68641f08b31286d1b9c44828164a0a0bea607fb64a71c73ff53417cdfefa110245adab164fae8ea0980ea86cd69d693dcd43a96bb188197dc78fcd
+DIST digiKam-8.4.0.tar.xz 58025616 BLAKE2B 33441e023cd9d6edba2e7c01e482a6eea7a6b1972b6bad0fc804fb3e94f97cc62e2663690137b2445fb7043789b7e942d830b71209385de77ccffe57d22d09ff SHA512 4342d18a7c04ab239821de3cf908f8e7d676598778f0174164aa336e8cfdc0a76327d31c64e6c4e47dcf0d6fbef46b01918312e4622ce3359888a9a94948a22b
diff --git a/media-gfx/digikam/digikam-8.4.0.ebuild b/media-gfx/digikam/digikam-8.4.0.ebuild
new file mode 100644
index 000000000000..a118da4e0919
--- /dev/null
+++ b/media-gfx/digikam/digikam-8.4.0.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KFMIN=5.115.0
+QTMIN=5.15.12
+inherit ecm kde.org toolchain-funcs
+
+if [[ ${KDE_BUILD_TYPE} != live ]]; then
+ TARNAME="digiKam-${PV/_/-}"
+ if [[ ${PV} =~ beta[0-9]$ ]]; then
+ SRC_URI="mirror://kde/unstable/${PN}/${TARNAME}.tar.xz"
+ else
+ SRC_URI="mirror://kde/stable/${PN}/${PV}/${TARNAME}.tar.xz"
+ fi
+ KEYWORDS="~amd64 ~arm64 ~x86"
+fi
+
+DESCRIPTION="Digital photo management application"
+HOMEPAGE="https://www.digikam.org/"
+
+LICENSE="GPL-2"
+SLOT="5"
+IUSE="addressbook calendar geolocation gphoto2 heif +imagemagick jpegxl +lensfun mysql opengl openmp +panorama scanner semantic-desktop spell"
+
+# bug 366505
+RESTRICT="test"
+
+COMMON_DEPEND="
+ dev-libs/expat
+ >=dev-qt/qtconcurrent-${QTMIN}:5
+ >=dev-qt/qtdbus-${QTMIN}:5
+ >=dev-qt/qtgui-${QTMIN}:5[-gles2-only]
+ >=dev-qt/qtnetwork-${QTMIN}:5
+ >=dev-qt/qtnetworkauth-${QTMIN}:5
+ >=dev-qt/qtprintsupport-${QTMIN}:5
+ >=dev-qt/qtsql-${QTMIN}:5[mysql?]
+ >=dev-qt/qtwebengine-${QTMIN}:5[widgets]
+ >=dev-qt/qtwidgets-${QTMIN}:5
+ >=dev-qt/qtx11extras-${QTMIN}:5
+ >=dev-qt/qtxml-${QTMIN}:5
+ >=dev-qt/qtxmlpatterns-${QTMIN}:5
+ >=kde-frameworks/kconfig-${KFMIN}:5
+ >=kde-frameworks/kconfigwidgets-${KFMIN}:5
+ >=kde-frameworks/kcoreaddons-${KFMIN}:5
+ >=kde-frameworks/ki18n-${KFMIN}:5
+ >=kde-frameworks/kiconthemes-${KFMIN}:5
+ >=kde-frameworks/kio-${KFMIN}:5
+ >=kde-frameworks/knotifications-${KFMIN}:5
+ >=kde-frameworks/knotifyconfig-${KFMIN}:5
+ >=kde-frameworks/kservice-${KFMIN}:5
+ >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
+ >=kde-frameworks/kwindowsystem-${KFMIN}:5
+ >=kde-frameworks/kxmlgui-${KFMIN}:5
+ >=kde-frameworks/solid-${KFMIN}:5
+ >=media-gfx/exiv2-0.27.1:=[xmp]
+ media-libs/lcms:2
+ media-libs/libjpeg-turbo:=
+ media-libs/liblqr
+ media-libs/libpng:=
+ >=media-libs/opencv-3.3.0:=[contrib,contribdnn,features2d]
+ media-libs/tiff:=
+ x11-libs/libX11
+ addressbook? (
+ >=kde-apps/akonadi-contacts-23.08.3:5
+ >=kde-frameworks/kcontacts-${KFMIN}:5
+ )
+ calendar? ( >=kde-frameworks/kcalendarcore-${KFMIN}:5 )
+ gphoto2? ( media-libs/libgphoto2:= )
+ heif? (
+ media-libs/libheif:=
+ media-libs/x265:=
+ )
+ imagemagick? ( media-gfx/imagemagick:= )
+ jpegxl? ( media-libs/libjxl:= )
+ lensfun? ( media-libs/lensfun )
+ opengl? (
+ >=dev-qt/qtopengl-${QTMIN}:5
+ virtual/opengl
+ )
+ panorama? ( >=kde-frameworks/threadweaver-${KFMIN}:5 )
+ scanner? ( >=kde-apps/libksane-23.08.3:5 )
+ semantic-desktop? ( >=kde-frameworks/kfilemetadata-${KFMIN}:5 )
+ spell? ( >=kde-frameworks/sonnet-${KFMIN}:5 )
+"
+DEPEND="${COMMON_DEPEND}
+ dev-cpp/eigen:3
+ dev-libs/boost
+ addressbook? ( >=kde-apps/akonadi-23.08.3:5 )
+"
+RDEPEND="${COMMON_DEPEND}
+ media-libs/exiftool
+ mysql? ( virtual/mysql[server(+)] )
+ panorama? ( media-gfx/hugin )
+"
+BDEPEND="
+ sys-devel/gettext
+ panorama? (
+ app-alternatives/lex
+ app-alternatives/yacc
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${P}-cmake.patch"
+ "${FILESDIR}/${PN}-8.3.0-cmake-addressbook.patch"
+)
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+ ecm_pkg_pretend
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+ ecm_pkg_setup
+}
+
+# FIXME: Unbundle libraw (libs/rawengine/libraw)
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_WITH_QT6=OFF # KF6 not stable upstream yet
+ -DBUILD_TESTING=OFF # bug 698192
+ -DENABLE_APPSTYLES=ON
+ -DCMAKE_DISABLE_FIND_PACKAGE_Jasper=ON
+ -DENABLE_MEDIAPLAYER=OFF # bug 758641; bundled as of 8.0, KDE-bug 448681
+ -DENABLE_SHOWFOTO=ON # built unconditionally so far, new option since 8.0
+ -DENABLE_AKONADICONTACTSUPPORT=$(usex addressbook)
+ $(cmake_use_find_package calendar KF5CalendarCore)
+ -DENABLE_GEOLOCATION=$(usex geolocation)
+ $(cmake_use_find_package gphoto2 Gphoto2)
+ $(cmake_use_find_package heif Libheif)
+ $(cmake_use_find_package imagemagick ImageMagick)
+ $(cmake_use_find_package jpegxl Libjxl)
+ $(cmake_use_find_package lensfun LensFun)
+ -DENABLE_MYSQLSUPPORT=$(usex mysql)
+ -DENABLE_INTERNALMYSQL=$(usex mysql)
+ $(cmake_use_find_package opengl OpenGL)
+ $(cmake_use_find_package panorama KF5ThreadWeaver)
+ $(cmake_use_find_package scanner KF5Sane)
+ $(cmake_use_find_package spell KF5Sonnet)
+ -DENABLE_KFILEMETADATASUPPORT=$(usex semantic-desktop)
+ )
+
+ ecm_src_configure
+}
diff --git a/media-gfx/digikam/files/digikam-8.4.0-cmake.patch b/media-gfx/digikam/files/digikam-8.4.0-cmake.patch
new file mode 100644
index 000000000000..4584d23182d1
--- /dev/null
+++ b/media-gfx/digikam/files/digikam-8.4.0-cmake.patch
@@ -0,0 +1,199 @@
+From c498aad87e42405ca25cb6f2f1b4068ed1862c27 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
+Date: Sun, 17 Feb 2019 23:51:03 +0100
+Subject: [PATCH] Un-break optional Qt/KF detection
+
+And if we enable an option, make the necessary libraries REQUIRED.
+---
+ core/cmake/rules/RulesKDEFramework.cmake | 60 ++++--------------------
+ core/cmake/rules/RulesQtFramework.cmake | 51 +++++---------------
+ core/cmake/rules/RulesX11.cmake | 7 +--
+ 3 files changed, 20 insertions(+), 98 deletions(-)
+
+diff --git a/core/cmake/rules/RulesKDEFramework.cmake b/core/cmake/rules/RulesKDEFramework.cmake
+index 775ae32fec..ec438f9673 100644
+--- a/core/cmake/rules/RulesKDEFramework.cmake
++++ b/core/cmake/rules/RulesKDEFramework.cmake
+@@ -26,43 +26,18 @@ find_package(KF${QT_VERSION_MAJOR} ${KF${QT_VERSION_MAJOR}_MIN_VERSION} QUIET
+ )
+
+ if(ENABLE_KFILEMETADATASUPPORT)
+-
+- find_package(KF${QT_VERSION_MAJOR} ${KF${QT_VERSION_MAJOR}_MIN_VERSION} QUIET
+- OPTIONAL_COMPONENTS
+- FileMetaData # For Plasma desktop file indexer support.
+- )
+-
++ # For Plasma desktop file indexer support.
++ find_package(KF${QT_VERSION_MAJOR}FileMetaData ${KF${QT_VERSION_MAJOR}_MIN_VERSION} REQUIRED)
+ endif()
+
+ if(ENABLE_AKONADICONTACTSUPPORT)
+-
++ find_package(KF${QT_VERSION_MAJOR}Contacts ${KF${QT_VERSION_MAJOR}_MIN_VERSION} REQUIRED) # API for contacts/address book data.
++ find_package(KPim${QT_VERSION_MAJOR}Akonadi ${AKONADI_MIN_VERSION} REQUIRED)
+ if(Qt6_FOUND)
+-
+- find_package(KPim${QT_VERSION_MAJOR} ${AKONADI_MIN_VERSION} QUIET
+- OPTIONAL_COMPONENTS
+- Akonadi
+- AkonadiContactCore # For KDE Mail Contacts support.
+- )
+- find_package(KF${QT_VERSION_MAJOR} ${AKONADI_MIN_VERSION} QUIET
+- OPTIONAL_COMPONENTS
+- Contacts # API for contacts/address book data.
+- )
+- find_package(KPim${QT_VERSION_MAJOR}Akonadi ${AKONADI_MIN_VERSION} QUIET)
+- find_package(KPim${QT_VERSION_MAJOR}AkonadiContactCore ${AKONADI_MIN_VERSION} QUIET)
+-
++ find_package(KPim${QT_VERSION_MAJOR}AkonadiContactCore ${AKONADI_MIN_VERSION} REQUIRED)
+ else()
+-
+- find_package(KF${QT_VERSION_MAJOR} ${AKONADI_MIN_VERSION} QUIET
+- OPTIONAL_COMPONENTS
+- Akonadi
+- AkonadiContact # For KDE Mail Contacts support.
+- Contacts # API for contacts/address book data.
+- )
+- find_package(KPim${QT_VERSION_MAJOR}Akonadi ${AKONADI_MIN_VERSION} QUIET)
+- find_package(KPim${QT_VERSION_MAJOR}AkonadiContact ${AKONADI_MIN_VERSION} QUIET)
+-
++ find_package(KPim${QT_VERSION_MAJOR}AkonadiContact ${AKONADI_MIN_VERSION} REQUIRED) # For KDE Mail Contacts support.
+ endif()
+-
+ endif()
+
+ if(Qt6_FOUND)
+@@ -71,17 +46,11 @@ if(Qt6_FOUND)
+
+ else()
+
+- find_package(KF${QT_VERSION_MAJOR} ${KSANE_MIN_VERSION} QUIET
+- OPTIONAL_COMPONENTS
+- Sane # For digital scanner support.
+- )
++ find_package(KF${QT_VERSION_MAJOR}Sane ${KSANE_MIN_VERSION} QUIET) # For digital scanner support.
+
+ endif()
+
+-find_package(KF${QT_VERSION_MAJOR} ${CALENDAR_MIN_VERSION} QUIET
+- OPTIONAL_COMPONENTS
+- CalendarCore # For Calendar tool.
+-)
++find_package(KF${QT_VERSION_MAJOR}CalendarCore ${CALENDAR_MIN_VERSION} QUIET) # For Calendar tool.
+
+ if ("${KF${QT_VERSION_MAJOR}CalendarCore_VERSION}" VERSION_GREATER 5.6.40)
+
+@@ -89,19 +58,6 @@ if ("${KF${QT_VERSION_MAJOR}CalendarCore_VERSION}" VERSION_GREATER 5.6.40)
+
+ endif()
+
+-if(ENABLE_AKONADICONTACTSUPPORT AND
+- (NOT (KPim${QT_VERSION_MAJOR}AkonadiContact_FOUND OR KPim${QT_VERSION_MAJOR}AkonadiContactCore_FOUND) OR NOT KF${QT_VERSION_MAJOR}Contacts_FOUND))
+-
+- set(ENABLE_AKONADICONTACTSUPPORT OFF)
+-
+-endif()
+-
+-if(ENABLE_KFILEMETADATASUPPORT AND NOT KF${QT_VERSION_MAJOR}FileMetaData_FOUND)
+-
+- set(ENABLE_KFILEMETADATASUPPORT OFF)
+-
+-endif()
+-
+ # Check if KIO have been compiled with KIOWidgets. digiKam only needs this one.
+
+ if(ENABLE_KIO)
+diff --git a/core/cmake/rules/RulesQtFramework.cmake b/core/cmake/rules/RulesQtFramework.cmake
+index 9fa839c414..9267c6651e 100644
+--- a/core/cmake/rules/RulesQtFramework.cmake
++++ b/core/cmake/rules/RulesQtFramework.cmake
+@@ -18,38 +18,17 @@ find_package(Qt${QT_VERSION_MAJOR} REQUIRED
+ Svg
+ )
+
+-find_package(Qt${QT_VERSION_MAJOR} REQUIRED
+- NO_MODULE
+- COMPONENTS
+- WebEngineWidgets
+-)
++find_package(Qt${QT_VERSION_MAJOR}WebEngineWidgets REQUIRED NO_MODULE)
+
+-find_package(Qt${QT_VERSION_MAJOR}
+- OPTIONAL_COMPONENTS
+- DBus
+- OpenGL
+-)
++find_package(Qt${QT_VERSION_MAJOR}DBus)
++find_package(Qt${QT_VERSION_MAJOR}OpenGL)
+
+ if(Qt6_FOUND)
+-
+- find_package(Qt${QT_VERSION_MAJOR} REQUIRED
+- NO_MODULE COMPONENTS
+- StateMachine
+- SvgWidgets
+- )
+-
+- find_package(Qt${QT_VERSION_MAJOR}
+- OPTIONAL_COMPONENTS
+- OpenGLWidgets
+- )
+-
++ find_package(Qt${QT_VERSION_MAJOR}StateMachine REQUIRED NO_MODULE)
++ find_package(Qt${QT_VERSION_MAJOR}SvgWidgets REQUIRED NO_MODULE)
++ find_package(Qt${QT_VERSION_MAJOR}OpenGLWidgets)
+ else()
+-
+- find_package(Qt${QT_VERSION_MAJOR}
+- OPTIONAL_COMPONENTS
+- XmlPatterns # For Rajce plugin
+- )
+-
++ find_package(Qt${QT_VERSION_MAJOR}XmlPatterns) # For Rajce plugin
+ endif()
+
+ if(ENABLE_DBUS)
+@@ -65,17 +44,9 @@ endif()
+ # Qt Dependencies For unit tests and CLI test tools
+
+ if(BUILD_TESTING)
++ find_package(Qt${QT_VERSION_MAJOR}Test REQUIRED NO_MODULE)
+
+- find_package(Qt${QT_VERSION_MAJOR} REQUIRED
+- NO_MODULE
+- COMPONENTS
+- Test
+- )
+-
+- find_package(Qt${QT_VERSION_MAJOR}
+- QUIET
+- OPTIONAL_COMPONENTS
+- Qml WebView # Optional, for 'sialis' O2 library test tool.
+- )
+-
++ # Optional, for 'sialis' O2 library test tool.
++ find_package(Qt${QT_VERSION_MAJOR}Qml QUIET NO_MODULE)
++ find_package(Qt${QT_VERSION_MAJOR}WebView QUIET NO_MODULE)
+ endif()
+diff --git a/core/cmake/rules/RulesX11.cmake b/core/cmake/rules/RulesX11.cmake
+index d7830f3923..4401a57c87 100644
+--- a/core/cmake/rules/RulesX11.cmake
++++ b/core/cmake/rules/RulesX11.cmake
+@@ -11,12 +11,7 @@ find_package(X11)
+ if(X11_FOUND)
+
+ if(NOT Qt6_FOUND)
+-
+- find_package(Qt5 ${QT_MIN_VERSION} NO_MODULE
+- COMPONENTS
+- X11Extras
+- )
+-
++ find_package(Qt5X11Extras ${QT_MIN_VERSION} NO_MODULE)
+ endif()
+
+ set(HAVE_X11 TRUE)
+--
+2.45.2
+