public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Andreas Sturmlechner" <asturm@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: media-gfx/digikam/files/, media-gfx/digikam/
Date: Sat,  8 Jul 2023 16:06:24 +0000 (UTC)	[thread overview]
Message-ID: <1688832274.9c8928dd8769b0fefb6549b17b498643e23d778f.asturm@gentoo> (raw)

commit:     9c8928dd8769b0fefb6549b17b498643e23d778f
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Jul  6 17:54:25 2023 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Jul  8 16:04:34 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9c8928dd

media-gfx/digikam: add 8.1.0

Fixes build with media-gfx/exiv2-0.28.0 (too many commits to backport to 7.10).

Bug: https://bugs.gentoo.org/906463
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 media-gfx/digikam/Manifest                        |   1 +
 media-gfx/digikam/digikam-8.1.0.ebuild            | 151 ++++++++++++++++++
 media-gfx/digikam/files/digikam-8.1.0-cmake.patch | 179 ++++++++++++++++++++++
 3 files changed, 331 insertions(+)

diff --git a/media-gfx/digikam/Manifest b/media-gfx/digikam/Manifest
index a5cb4eae2133..95b47c54690a 100644
--- a/media-gfx/digikam/Manifest
+++ b/media-gfx/digikam/Manifest
@@ -1 +1,2 @@
 DIST digiKam-7.10.0.tar.xz 349238192 BLAKE2B 527d0c3ca2e2cc2ac4d3eff11ab4e6556d21f29c78b13f92c7a80ab2775c2ba838b0d94f1fd402533dc249148049be365e7f3798eb9a973ee9d38d682f33df64 SHA512 1a5f045161253d73c4012fa949ec718fcc6c6b292ee0557c8015bea81c95fa39d3034ad46a40fdb64221f59832dc8ecdc724e93929ad2c0e35cc51fc82d28f27
+DIST digiKam-8.1.0.tar.xz 35712348 BLAKE2B 0feaa66ec27b0c2a9e776f26c02987554e8653cda29ca1982182ec1a0f70783808cd2e269dcee1f2b65e6e29ba3bc483a2284a6a485c0b7cc46ae80dd2f87069 SHA512 cbf5a776b4138f4f05d074721324b046dfa07ddc01259f569ae46c46a6d5b0b00824ef0962a09041081703348e4defecf15cff800b2c6cf5e04a0e7e963a3ef4

diff --git a/media-gfx/digikam/digikam-8.1.0.ebuild b/media-gfx/digikam/digikam-8.1.0.ebuild
new file mode 100644
index 000000000000..eeb2f032ad56
--- /dev/null
+++ b/media-gfx/digikam/digikam-8.1.0.ebuild
@@ -0,0 +1,151 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KFMIN=5.106.0
+QTMIN=5.15.9
+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 mysql opengl openmp +panorama scanner semantic-desktop spell 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/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/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:=
+	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/libheif:=
+		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
+	)
+	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 )
+	spell? ( >=kde-frameworks/sonnet-${KFMIN}:5 )
+	X? (
+		>=dev-qt/qtx11extras-${QTMIN}:5
+		x11-libs/libX11
+	)
+"
+DEPEND="${COMMON_DEPEND}
+	dev-cpp/eigen:3
+	dev-libs/boost
+	addressbook? ( >=kde-apps/akonadi-19.04.3:5 )
+"
+RDEPEND="${COMMON_DEPEND}
+	mysql? ( virtual/mysql[server(+)] )
+	panorama? ( media-gfx/hugin )
+"
+BDEPEND="
+	sys-devel/gettext
+	panorama? (
+		sys-devel/bison
+		sys-devel/flex
+	)
+"
+
+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_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_QWEBENGINE=ON
+		-DENABLE_AKONADICONTACTSUPPORT=$(usex addressbook)
+		$(cmake_use_find_package calendar KF5CalendarCore)
+		$(cmake_use_find_package gphoto2 Gphoto2)
+		$(cmake_use_find_package heif Libheif)
+		$(cmake_use_find_package imagemagick ImageMagick)
+		$(cmake_use_find_package lensfun LensFun)
+		$(cmake_use_find_package marble Marble)
+		-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)
+		$(cmake_use_find_package X X11)
+	)
+
+	ecm_src_configure
+}

diff --git a/media-gfx/digikam/files/digikam-8.1.0-cmake.patch b/media-gfx/digikam/files/digikam-8.1.0-cmake.patch
new file mode 100644
index 000000000000..16c1ffa5c37d
--- /dev/null
+++ b/media-gfx/digikam/files/digikam-8.1.0-cmake.patch
@@ -0,0 +1,179 @@
+From 05b6e81bd4ceca8d6166aa0a000919cde2bfde3e 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/KF5 detection
+
+And if we enable an option, make the necessary libraries REQUIRED.
+---
+ core/cmake/rules/RulesKDEFramework.cmake | 34 +++-----------
+ core/cmake/rules/RulesQtFramework.cmake  | 58 +++++-------------------
+ core/cmake/rules/RulesX11.cmake          |  7 +--
+ 3 files changed, 18 insertions(+), 81 deletions(-)
+
+diff --git a/core/cmake/rules/RulesKDEFramework.cmake b/core/cmake/rules/RulesKDEFramework.cmake
+index 610033425c..2d8acc7956 100644
+--- a/core/cmake/rules/RulesKDEFramework.cmake
++++ b/core/cmake/rules/RulesKDEFramework.cmake
+@@ -26,19 +26,15 @@ find_package(KF5 ${KF5_MIN_VERSION} QUIET
+ )
+ 
+ if(ENABLE_KFILEMETADATASUPPORT)
+-
+-    find_package(KF5 ${KF5_MIN_VERSION} QUIET
+-                                        OPTIONAL_COMPONENTS
+-                                        FileMetaData            # For Plasma destop file indexer support.
+-    )
+-
++    # For Plasma desktop file indexer support.
++    find_package(KF5FileMetaData ${KF5_MIN_VERSION} REQUIRED)
+ endif()
+ 
+ 
+ if(ENABLE_AKONADICONTACTSUPPORT)
+ 
+-    find_package(KF5 ${AKONADI_MIN_VERSION} QUIET
+-                                            OPTIONAL_COMPONENTS
++    find_package(KF5 ${AKONADI_MIN_VERSION} REQUIRED
++                                            COMPONENTS
+                                             Akonadi
+                                             AkonadiContact      # For KDE Mail Contacts support.
+                                             Contacts            # API for contacts/address book data.
+@@ -46,15 +42,9 @@ if(ENABLE_AKONADICONTACTSUPPORT)
+ 
+ endif()
+ 
+-find_package(KF5 ${KSANE_MIN_VERSION} QUIET
+-                                      OPTIONAL_COMPONENTS
+-                                      Sane                      # For digital scanner support.
+-)
++find_package(KF5Sane ${KSANE_MIN_VERSION} QUIET) # 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)
+ 
+@@ -62,18 +52,6 @@ if ("${KF5CalendarCore_VERSION}" VERSION_GREATER 5.6.40)
+ 
+ endif()
+ 
+-if(ENABLE_AKONADICONTACTSUPPORT AND (NOT KF5AkonadiContact_FOUND OR NOT KF5Contacts_FOUND))
+-
+-    set(ENABLE_AKONADICONTACTSUPPORT OFF)
+-
+-endif()
+-
+-if(ENABLE_KFILEMETADATASUPPORT AND NOT KF5FileMetaData_FOUND)
+-
+-    set(ENABLE_KFILEMETADATASUPPORT OFF)
+-
+-endif()
+-
+ # Check if KIO have been compiled with KIOWidgets. digiKam only needs this one.
+ 
+ if(KF5KIO_FOUND)
+diff --git a/core/cmake/rules/RulesQtFramework.cmake b/core/cmake/rules/RulesQtFramework.cmake
+index e6e1670ed3..1ab57af4d4 100644
+--- a/core/cmake/rules/RulesQtFramework.cmake
++++ b/core/cmake/rules/RulesQtFramework.cmake
+@@ -18,47 +18,19 @@ find_package(Qt${QT_VERSION_MAJOR} REQUIRED
+ )
+ 
+ if(ENABLE_QWEBENGINE)
+-
+-    find_package(Qt${QT_VERSION_MAJOR} REQUIRED
+-                                       NO_MODULE
+-                                       COMPONENTS
+-                                       WebEngineWidgets
+-    )
+-
++    find_package(Qt${QT_VERSION_MAJOR}WebEngineWidgets REQUIRED NO_MODULE)
+ else()
+-
+-    find_package(Qt${QT_VERSION_MAJOR} REQUIRED
+-                                       NO_MODULE
+-                                       COMPONENTS
+-                                       WebKitWidgets
+-    )
+-
++    find_package(Qt${QT_VERSION_MAJOR}WebKitWidgets REQUIRED NO_MODULE)
+ endif()
+ 
+-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
+-    )
+-    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}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)
+@@ -74,17 +46,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 d7659eed34..9c145970b2 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.41.0
+


             reply	other threads:[~2023-07-08 16:06 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-08 16:06 Andreas Sturmlechner [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-08-06 23:04 [gentoo-commits] repo/gentoo:master commit in: media-gfx/digikam/files/, media-gfx/digikam/ Andreas Sturmlechner
2024-07-23 16:11 Andreas Sturmlechner
2024-04-22 17:07 Andreas Sturmlechner
2023-07-25 10:02 Andreas Sturmlechner
2023-04-30 13:48 Andreas Sturmlechner
2023-04-25 15:35 Andreas Sturmlechner
2022-10-12 19:41 Andreas Sturmlechner
2021-11-26 10:27 Andreas Sturmlechner
2020-11-12 20:57 Andreas Sturmlechner
2020-06-30 21:44 Andreas Sturmlechner
2019-08-22 14:16 Andreas Sturmlechner
2019-02-17 22:59 Andreas Sturmlechner
2018-05-02 19:12 Johannes Huber
2017-12-18 18:48 Andreas Sturmlechner
2017-12-06 22:08 Andreas Sturmlechner
2017-11-29 19:00 Andreas Sturmlechner
2016-12-08 17:44 Johannes Huber
2015-12-29 16:02 Michael Palimaka

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1688832274.9c8928dd8769b0fefb6549b17b498643e23d778f.asturm@gentoo \
    --to=asturm@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox