commit:     024c45ad4532e5a05ec7005e11c46875f79342ad
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 18 17:29:27 2021 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Dec 18 17:38:52 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=024c45ad

media-gfx/digikam: Add missing usedep, fix cmake (again)

Closes: https://bugs.gentoo.org/829539
Closes: https://bugs.gentoo.org/829571
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 media-gfx/digikam/digikam-7.3.0-r1.ebuild         | 149 ++++++++++++++++++++++
 media-gfx/digikam/digikam-7.4.0-r1.ebuild         | 147 +++++++++++++++++++++
 media-gfx/digikam/files/digikam-7.3.0-cmake.patch | 118 +++++++++++++++++
 3 files changed, 414 insertions(+)

diff --git a/media-gfx/digikam/digikam-7.3.0-r1.ebuild 
b/media-gfx/digikam/digikam-7.3.0-r1.ebuild
new file mode 100644
index 000000000000..7f3918113e25
--- /dev/null
+++ b/media-gfx/digikam/digikam-7.3.0-r1.ebuild
@@ -0,0 +1,149 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+KFMIN=5.74.0
+QTMIN=5.15.2
+inherit ecm kde.org toolchain-funcs
+
+if [[ ${KDE_BUILD_TYPE} != live ]]; then
+       MY_P=${PN}-${PV/_/-}
+       if [[ ${PV} =~ rc[0-9]*$ ]]; then
+               SRC_URI="mirror://kde/unstable/${PN}/"
+       else
+               SRC_URI="mirror://kde/stable/${PN}/${PV}/"
+       fi
+       SRC_URI+="${MY_P}.tar.xz"
+       KEYWORDS="amd64 x86"
+       S="${WORKDIR}/${MY_P}"
+fi
+
+DESCRIPTION="Digital photo management application"
+HOMEPAGE="https://www.digikam.org/";
+
+LICENSE="GPL-2"
+SLOT="5"
+IUSE="addressbook calendar gphoto2 heif +imagemagick +lensfun marble 
mediaplayer mysql opengl openmp +panorama scanner semantic-desktop X"
+
+# bug 366505
+RESTRICT+=" test"
+
+BDEPEND="
+       >=dev-util/cmake-3.14.3
+       sys-devel/gettext
+       panorama? (
+               sys-devel/bison
+               sys-devel/flex
+       )
+"
+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/qtprintsupport-${QTMIN}:5
+       >=dev-qt/qtsql-${QTMIN}:5[mysql?]
+       >=dev-qt/qtwebengine-${QTMIN}:5[widgets]
+       >=dev-qt/qtwidgets-${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:=[xmp]
+       media-libs/lcms:2
+       media-libs/liblqr
+       media-libs/libpng:0=
+       >=media-libs/opencv-3.3.0:=[contrib,contribdnn]
+       media-libs/tiff:0
+       virtual/jpeg:0
+       addressbook? (
+               >=kde-apps/akonadi-contacts-19.04.3:5
+               >=kde-frameworks/kcontacts-${KFMIN}:5
+       )
+       calendar? ( >=kde-frameworks/kcalendarcore-${KFMIN}:5 )
+       gphoto2? ( media-libs/libgphoto2:= )
+       heif? ( media-libs/x265:= )
+       imagemagick? ( media-gfx/imagemagick:= )
+       lensfun? ( media-libs/lensfun )
+       marble? (
+               >=dev-qt/qtconcurrent-${QTMIN}:5
+               >=kde-apps/marble-19.04.3:5
+               >=kde-frameworks/kbookmarks-${KFMIN}:5
+       )
+       mediaplayer? (
+               media-libs/qtav[opengl(+)]
+               media-video/ffmpeg:=
+       )
+       opengl? (
+               >=dev-qt/qtopengl-${QTMIN}:5
+               virtual/opengl
+       )
+       panorama? ( >=kde-frameworks/threadweaver-${KFMIN}:5 )
+       scanner? ( >=kde-apps/libksane-19.04.3:5 )
+       semantic-desktop? ( >=kde-frameworks/kfilemetadata-${KFMIN}:5 )
+       X? (
+               >=dev-qt/qtx11extras-${QTMIN}:5
+               x11-libs/libX11
+       )
+"
+DEPEND="${COMMON_DEPEND}
+       dev-cpp/eigen:3
+       dev-libs/boost[threads(+)]
+"
+RDEPEND="${COMMON_DEPEND}
+       mysql? ( virtual/mysql[server(+)] )
+       panorama? ( media-gfx/hugin )
+"
+
+PATCHES=( "${FILESDIR}/${P}-cmake.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_TESTING=OFF # bug 698192
+               -DENABLE_APPSTYLES=ON
+               -DCMAKE_DISABLE_FIND_PACKAGE_Jasper=ON
+               -DENABLE_QWEBENGINE=ON
+               -DENABLE_AKONADICONTACTSUPPORT=$(usex addressbook)
+               -DENABLE_KFILEMETADATASUPPORT=$(usex semantic-desktop)
+               $(cmake_use_find_package calendar KF5CalendarCore)
+               $(cmake_use_find_package gphoto2 Gphoto2)
+               $(cmake_use_find_package heif X265)
+               $(cmake_use_find_package imagemagick ImageMagick)
+               $(cmake_use_find_package lensfun LensFun)
+               $(cmake_use_find_package marble Marble)
+               -DENABLE_MEDIAPLAYER=$(usex mediaplayer)
+               $(cmake_use_find_package mediaplayer QtAV)
+               -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 X X11)
+       )
+
+       ecm_src_configure
+}

diff --git a/media-gfx/digikam/digikam-7.4.0-r1.ebuild 
b/media-gfx/digikam/digikam-7.4.0-r1.ebuild
new file mode 100644
index 000000000000..b9ebebffc487
--- /dev/null
+++ b/media-gfx/digikam/digikam-7.4.0-r1.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KFMIN=5.88.0
+QTMIN=5.15.2
+inherit ecm kde.org toolchain-funcs
+
+if [[ ${KDE_BUILD_TYPE} != live ]]; then
+       if [[ ${PV} =~ beta[0-9]$ ]]; then
+               SRC_URI="mirror://kde/unstable/${PN}/"
+       else
+               SRC_URI="mirror://kde/stable/${PN}/${PV}/"
+       fi
+       SRC_URI+="digiKam-${PV/_/-}.tar.xz"
+       KEYWORDS="~amd64 ~x86"
+       S="${WORKDIR}/${PN}-${PV/_/-}"
+fi
+
+DESCRIPTION="Digital photo management application"
+HOMEPAGE="https://www.digikam.org/";
+
+LICENSE="GPL-2"
+SLOT="5"
+IUSE="addressbook calendar gphoto2 heif +imagemagick +lensfun marble 
mediaplayer mysql opengl openmp +panorama scanner semantic-desktop X"
+
+# 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/qtprintsupport-${QTMIN}:5
+       >=dev-qt/qtsql-${QTMIN}:5[mysql?]
+       >=dev-qt/qtwebengine-${QTMIN}:5[widgets]
+       >=dev-qt/qtwidgets-${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:=[xmp]
+       media-libs/lcms:2
+       media-libs/liblqr
+       media-libs/libpng:0=
+       >=media-libs/opencv-3.3.0:=[contrib,contribdnn]
+       media-libs/tiff:0
+       virtual/jpeg:0
+       addressbook? (
+               >=kde-apps/akonadi-contacts-19.04.3:5
+               >=kde-frameworks/kcontacts-${KFMIN}:5
+       )
+       calendar? ( >=kde-frameworks/kcalendarcore-${KFMIN}:5 )
+       gphoto2? ( media-libs/libgphoto2:= )
+       heif? ( media-libs/x265:= )
+       imagemagick? ( media-gfx/imagemagick:= )
+       lensfun? ( media-libs/lensfun )
+       marble? (
+               >=dev-qt/qtconcurrent-${QTMIN}:5
+               >=kde-apps/marble-19.04.3:5
+               >=kde-frameworks/kbookmarks-${KFMIN}:5
+       )
+       mediaplayer? (
+               media-libs/qtav[opengl(+)]
+               media-video/ffmpeg:=
+       )
+       opengl? (
+               >=dev-qt/qtopengl-${QTMIN}:5
+               virtual/opengl
+       )
+       panorama? ( >=kde-frameworks/threadweaver-${KFMIN}:5 )
+       scanner? ( >=kde-apps/libksane-19.04.3:5 )
+       semantic-desktop? ( >=kde-frameworks/kfilemetadata-${KFMIN}:5 )
+       X? (
+               >=dev-qt/qtx11extras-${QTMIN}:5
+               x11-libs/libX11
+       )
+"
+DEPEND="${COMMON_DEPEND}
+       dev-cpp/eigen:3
+       dev-libs/boost[threads(+)]
+"
+RDEPEND="${COMMON_DEPEND}
+       mysql? ( virtual/mysql[server(+)] )
+       panorama? ( media-gfx/hugin )
+"
+BDEPEND="
+       sys-devel/gettext
+       panorama? (
+               sys-devel/bison
+               sys-devel/flex
+       )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-7.3.0-cmake.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_TESTING=OFF # bug 698192
+               -DENABLE_APPSTYLES=ON
+               -DCMAKE_DISABLE_FIND_PACKAGE_Jasper=ON
+               -DENABLE_QWEBENGINE=ON
+               -DENABLE_AKONADICONTACTSUPPORT=$(usex addressbook)
+               $(cmake_use_find_package calendar KF5CalendarCore)
+               $(cmake_use_find_package gphoto2 Gphoto2)
+               $(cmake_use_find_package heif X265)
+               $(cmake_use_find_package imagemagick ImageMagick)
+               $(cmake_use_find_package lensfun LensFun)
+               $(cmake_use_find_package marble Marble)
+               -DENABLE_MEDIAPLAYER=$(usex mediaplayer)
+               $(cmake_use_find_package mediaplayer QtAV)
+               -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 semantic-desktop KF5FileMetaData)
+               $(cmake_use_find_package X X11)
+       )
+
+       ecm_src_configure
+}

diff --git a/media-gfx/digikam/files/digikam-7.3.0-cmake.patch 
b/media-gfx/digikam/files/digikam-7.3.0-cmake.patch
new file mode 100644
index 000000000000..2b580f92a1cc
--- /dev/null
+++ b/media-gfx/digikam/files/digikam-7.3.0-cmake.patch
@@ -0,0 +1,118 @@
+From 370308fb8381b55e7ebfcdd77f1361b49a288f88 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <[email protected]>
+Date: Sun, 17 Feb 2019 23:51:03 +0100
+Subject: [PATCH] Un-break optional Qt5/KF5 detection
+
+---
+ core/CMakeLists.txt | 58 ++++++++++++++++-----------------------------
+ 1 file changed, 20 insertions(+), 38 deletions(-)
+
+diff --git a/core/CMakeLists.txt b/core/CMakeLists.txt
+index 16bba83335..b8cdc59baa 100644
+--- a/core/CMakeLists.txt
++++ b/core/CMakeLists.txt
+@@ -65,17 +65,14 @@ find_package(Qt5 ${QT_MIN_VERSION} REQUIRED
+ )
+ 
+ if(ENABLE_QWEBENGINE)
+-    find_package(Qt5 ${QT_MIN_VERSION} REQUIRED NO_MODULE COMPONENTS 
WebEngineWidgets)
++    find_package(Qt5WebEngineWidgets ${QT_MIN_VERSION} REQUIRED NO_MODULE)
+ else()
+-    find_package(Qt5 ${QT_MIN_VERSION} REQUIRED NO_MODULE COMPONENTS 
WebKitWidgets)
++    find_package(Qt5WebKitWidgets ${QT_MIN_VERSION} REQUIRED NO_MODULE)
+ endif()
+ 
+-find_package(Qt5 ${QT_MIN_VERSION}
+-             OPTIONAL_COMPONENTS
+-             DBus
+-             OpenGL
+-             XmlPatterns                # For Rajce plugin
+-)
++find_package(Qt5DBus ${QT_MIN_VERSION})
++find_package(Qt5OpenGL ${QT_MIN_VERSION})
++find_package(Qt5XmlPatterns ${QT_MIN_VERSION}) # For Rajce plugin
+ 
+ if(ENABLE_DBUS)
+     if(NOT Qt5DBus_FOUND)
+@@ -86,16 +83,11 @@ endif()
+ # Dependencies For unit tests and CLI test tools
+ 
+ if(BUILD_TESTING)
+-    find_package(Qt5 ${QT_MIN_VERSION} REQUIRED
+-                 NO_MODULE COMPONENTS
+-                 Test
+-    )
+-
+-    find_package(Qt5 ${QT_MIN_VERSION}
+-                 QUIET
+-                 OPTIONAL_COMPONENTS
+-                 Qml WebView  # Optional, for 'sialis' O2 library test tool.
+-    )
++    find_package(Qt5Test ${QT_MIN_VERSION} NO_MODULE)
++    
++    # Optional, for 'sialis' O2 library test tool.
++    find_package(Qt5Qml ${QT_MIN_VERSION} QUIET NO_MODULE)
++    find_package(Qt5WebView ${QT_MIN_VERSION} QUIET NO_MODULE)
+ endif()
+ 
+ find_package(KF5 ${KF5_MIN_VERSION} REQUIRED
+@@ -113,38 +105,28 @@ find_package(KF5 ${KF5_MIN_VERSION} QUIET
+              OPTIONAL_COMPONENTS
+              KIO                    # For Desktop integration (Widgets only).
+              IconThemes             # For Desktop integration.
+-             FileMetaData           # For KDE file indexer support.
+              ThreadWeaver           # For Panorama tool.
+              NotifyConfig           # KDE desktop application notify 
configuration.
+              Notifications          # KDE desktop notifications integration.
+ )
+ 
+-find_package(KF5 ${AKONADI_MIN_VERSION} QUIET
+-             OPTIONAL_COMPONENTS
+-             AkonadiContact         # For KDE Mail Contacts support.
+-             Contacts               # API for contacts/address book data.
+-)
++find_package(KF5Sane ${KSANE_MIN_VERSION} QUIET) # For digital scanner 
support.
+ 
+-find_package(KF5 ${KSANE_MIN_VERSION} QUIET
+-             OPTIONAL_COMPONENTS
+-             Sane                   # For digital scanner support.
+-)
+-
+-find_package(KF5 ${CALENDAR_MIN_VERSION} QUIET
+-             OPTIONAL_COMPONENTS
+-             CalendarCore           # For Calendar tool.
+-)
++find_package(KF5CalendarCore ${CALENDAR_MIN_VERSION} QUIET) # For Calendar 
tool.
+ 
+ if ("${KF5CalendarCore_VERSION}" VERSION_GREATER 5.6.40)
+     set(HAVE_KCALENDAR_QDATETIME TRUE)
+ endif()
+ 
+-if(ENABLE_AKONADICONTACTSUPPORT AND (NOT KF5AkonadiContact_FOUND OR NOT 
KF5Contacts_FOUND))
+-    set(ENABLE_AKONADICONTACTSUPPORT OFF)
++if(ENABLE_AKONADICONTACTSUPPORT)
++    find_package(KF5 ${AKONADI_MIN_VERSION} REQUIRED
++                AkonadiContact         # For KDE Mail Contacts support.
++                Contacts               # API for contacts/address book data.
++    )
+ endif()
+ 
+-if(ENABLE_KFILEMETADATASUPPORT AND NOT KF5FileMetaData_FOUND)
+-    set(ENABLE_KFILEMETADATASUPPORT OFF)
++if(ENABLE_KFILEMETADATASUPPORT)
++    find_package(KF5FileMetaData ${KF5_MIN_VERSION} REQUIRED) # For KDE file 
indexer support.
+ endif()
+ 
+ # Check if KIO have been compiled with KIOWidgets. digiKam only needs this 
one.
+@@ -275,7 +257,7 @@ endif()
+ find_package(X11)
+ 
+ if(X11_FOUND)
+-    find_package(Qt5 ${QT_MIN_VERSION} NO_MODULE COMPONENTS X11Extras)
++    find_package(Qt5X11Extras ${QT_MIN_VERSION} NO_MODULE)
+     set(HAVE_X11 TRUE)
+ else()
+     set(HAVE_X11 FALSE)
+-- 
+2.34.1
+

Reply via email to