public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: kde-frameworks/kfilemetadata/files/, kde-frameworks/kfilemetadata/
@ 2019-05-01  9:39 Andreas Sturmlechner
  0 siblings, 0 replies; 2+ messages in thread
From: Andreas Sturmlechner @ 2019-05-01  9:39 UTC (permalink / raw
  To: gentoo-commits

commit:     4a44b133f79c25e8f67691f592aa04004b4ecf60
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Wed May  1 09:37:49 2019 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed May  1 09:39:04 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4a44b133

kde-frameworks/kfilemetadata: Fix crashing over .spx binary files

KDE-Bug: https://bugs.kde.org/show_bug.cgi?id=403902
Package-Manager: Portage-2.3.66, Repoman-2.3.12
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 ...filemetadata-5.57.0-non-speex-files-crash.patch | 46 +++++++++++++++
 .../kfilemetadata/kfilemetadata-5.57.0-r1.ebuild   | 68 ++++++++++++++++++++++
 2 files changed, 114 insertions(+)

diff --git a/kde-frameworks/kfilemetadata/files/kfilemetadata-5.57.0-non-speex-files-crash.patch b/kde-frameworks/kfilemetadata/files/kfilemetadata-5.57.0-non-speex-files-crash.patch
new file mode 100644
index 00000000000..5664cf024b2
--- /dev/null
+++ b/kde-frameworks/kfilemetadata/files/kfilemetadata-5.57.0-non-speex-files-crash.patch
@@ -0,0 +1,46 @@
+From 61b1916c3e87c3b8f4fc3d1f1d19bf427b9247da Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Stefan=20Br=C3=BCns?= <stefan.bruens@rwth-aachen.de>
+Date: Tue, 30 Apr 2019 03:51:14 +0200
+Subject: [TagLibExtractor] Fix crash on invalid Speex files
+
+Summary:
+TagLib::Ogg::Speex::File::isValid() returns true even for invalid files,
+but tag() only returns a valid XiphComment when the file is valid.
+
+Other TagLib::Ogg::* classes properly clear the valid flag when
+encountering files.
+
+See https://github.com/taglib/taglib/issues/902
+
+BUG: 403902
+
+Reviewers: #baloo, #frameworks, ngraham, astippich
+
+Reviewed By: #baloo, ngraham, astippich
+
+Subscribers: kde-frameworks-devel
+
+Tags: #frameworks, #baloo
+
+Differential Revision: https://phabricator.kde.org/D20913
+---
+ src/extractors/taglibextractor.cpp | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/src/extractors/taglibextractor.cpp b/src/extractors/taglibextractor.cpp
+index 1954cac..e355907 100644
+--- a/src/extractors/taglibextractor.cpp
++++ b/src/extractors/taglibextractor.cpp
+@@ -476,7 +476,9 @@ void TagLibExtractor::extract(ExtractionResult* result)
+         }
+     } else if (mimeType == QLatin1String("audio/speex") || mimeType == QLatin1String("audio/x-speex+ogg")) {
+         TagLib::Ogg::Speex::File file(&stream, true);
+-        if (file.isValid()) {
++        // Workaround for buggy taglib:
++        // isValid() returns true for invalid files, but XiphComment* tag() returns a nullptr
++        if (file.isValid() && file.tag()) {
+             extractAudioProperties(&file, result);
+             readGenericProperties(file.properties(), result);
+         }
+-- 
+cgit v1.1

diff --git a/kde-frameworks/kfilemetadata/kfilemetadata-5.57.0-r1.ebuild b/kde-frameworks/kfilemetadata/kfilemetadata-5.57.0-r1.ebuild
new file mode 100644
index 00000000000..92679579c66
--- /dev/null
+++ b/kde-frameworks/kfilemetadata/kfilemetadata-5.57.0-r1.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python{2_7,3_{5,6,7}} )
+inherit kde5 python-any-r1
+
+DESCRIPTION="Library for extracting file metadata"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE="epub exif ffmpeg kernel_linux libav office pdf taglib"
+
+BDEPEND="
+	test? ( ${PYTHON_DEPS} )
+"
+RDEPEND="
+	$(add_frameworks_dep kcoreaddons)
+	$(add_frameworks_dep ki18n)
+	$(add_qt_dep qtxml)
+	epub? ( app-text/ebook-tools )
+	exif? ( media-gfx/exiv2:= )
+	ffmpeg? (
+		libav? ( >=media-video/libav-12.2:= )
+		!libav? ( media-video/ffmpeg:0= )
+	)
+	office? ( $(add_frameworks_dep karchive) )
+	pdf? ( app-text/poppler[qt5] )
+	taglib? ( media-libs/taglib )
+"
+DEPEND="${RDEPEND}
+	kernel_linux? ( sys-apps/attr )
+"
+
+PATCHES=( "${FILESDIR}/${P}-non-speex-files-crash.patch" )
+
+pkg_setup() {
+	use test && python-any-r1_pkg_setup
+	kde5_pkg_setup
+}
+
+src_configure() {
+	local mycmakeargs=(
+		$(cmake-utils_use_find_package epub EPub)
+		$(cmake-utils_use_find_package exif LibExiv2)
+		$(cmake-utils_use_find_package ffmpeg FFmpeg)
+		$(cmake-utils_use_find_package office KF5Archive)
+		$(cmake-utils_use_find_package pdf Poppler)
+		$(cmake-utils_use_find_package taglib Taglib)
+	)
+
+	kde5_src_configure
+}
+
+src_test() {
+	# FIXME: bug 644650, fails on tmpfs (but not for everyone)
+	local myctestargs=( -E "(usermetadatawritertest)" )
+	kde5_src_test
+}
+
+pkg_postinst() {
+	kde5_pkg_postinst
+
+	if ! has_version app-text/catdoc || ! has_version dev-libs/libxls; then
+		elog "To get additional features, optional runtime dependencies may be installed:"
+		elog "app-text/catdoc - indexing of Microsoft Word or Powerpoint files"
+		elog "dev-libs/libxls - indexing of Microsoft Excel files"
+	fi
+}


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: kde-frameworks/kfilemetadata/files/, kde-frameworks/kfilemetadata/
@ 2024-08-10  8:18 Andreas Sturmlechner
  0 siblings, 0 replies; 2+ messages in thread
From: Andreas Sturmlechner @ 2024-08-10  8:18 UTC (permalink / raw
  To: gentoo-commits

commit:     8583678db11e3f57898839d741762c206f30a802
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 10 08:15:42 2024 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Aug 10 08:17:44 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8583678d

kde-frameworks/kfilemetadata: Fix libexecdir path

KDE-bug: https://bugs.kde.org/show_bug.cgi?id=491462

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

 .../files/kfilemetadata-6.5.0-libexecdir.patch     | 31 ++++++++++
 .../kfilemetadata/kfilemetadata-6.5.0-r1.ebuild    | 68 ++++++++++++++++++++++
 2 files changed, 99 insertions(+)

diff --git a/kde-frameworks/kfilemetadata/files/kfilemetadata-6.5.0-libexecdir.patch b/kde-frameworks/kfilemetadata/files/kfilemetadata-6.5.0-libexecdir.patch
new file mode 100644
index 000000000000..b5c4b684b29f
--- /dev/null
+++ b/kde-frameworks/kfilemetadata/files/kfilemetadata-6.5.0-libexecdir.patch
@@ -0,0 +1,31 @@
+From 6708b9acf81b69e82166ac65893241235513c026 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Sat, 10 Aug 2024 10:03:37 +0200
+Subject: [PATCH] cmake: Use KDE_INSTALL_FULL_LIBEXECDIR_KF instead of manual
+ path mangling
+
+KDE_INSTALL_LIBEXECDIR_KF is not guaranteed to be relative.
+
+BUG: 491462
+
+Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
+---
+ src/config-kfilemetadata.h.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/config-kfilemetadata.h.in b/src/config-kfilemetadata.h.in
+index ad54c71..984bfd4 100644
+--- a/src/config-kfilemetadata.h.in
++++ b/src/config-kfilemetadata.h.in
+@@ -6,7 +6,7 @@
+ 
+ #ifndef CONFIGKFILEMETADATA_H
+ #define CONFIGKFILEMETADATA_H
+-#define LIBEXEC_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/${KDE_INSTALL_LIBEXECDIR_KF}"
++#define LIBEXEC_INSTALL_DIR "${KDE_INSTALL_FULL_LIBEXECDIR_KF}"
+ 
+ #cmakedefine01 HAVE_AVSTREAM_CODECPAR
+ 
+-- 
+2.45.2
+

diff --git a/kde-frameworks/kfilemetadata/kfilemetadata-6.5.0-r1.ebuild b/kde-frameworks/kfilemetadata/kfilemetadata-6.5.0-r1.ebuild
new file mode 100644
index 000000000000..d6db84563ad5
--- /dev/null
+++ b/kde-frameworks/kfilemetadata/kfilemetadata-6.5.0-r1.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+PVCUT=$(ver_cut 1-2)
+QTMIN=6.6.2
+inherit ecm frameworks.kde.org optfeature python-any-r1
+
+DESCRIPTION="Library for extracting file metadata"
+
+LICENSE="LGPL-2+"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="epub exif ffmpeg mobi pdf taglib"
+
+RESTRICT="test"
+
+RDEPEND="
+	>=dev-qt/qtbase-${QTMIN}:6[gui,xml]
+	=kde-frameworks/karchive-${PVCUT}*:6
+	=kde-frameworks/kcodecs-${PVCUT}*:6
+	=kde-frameworks/kcoreaddons-${PVCUT}*:6
+	=kde-frameworks/ki18n-${PVCUT}*:6
+	epub? ( app-text/ebook-tools )
+	exif? ( media-gfx/exiv2:= )
+	ffmpeg? ( media-video/ffmpeg:0= )
+	mobi? ( kde-apps/kdegraphics-mobipocket:6 )
+	pdf? ( app-text/poppler[qt6(-)] )
+	taglib? ( media-libs/taglib:= )
+"
+DEPEND="${RDEPEND}
+	kernel_linux? ( sys-apps/attr )
+"
+BDEPEND="test? ( ${PYTHON_DEPS} )"
+
+CMAKE_SKIP_TESTS=(
+	# FIXME: bug 644650, fails on tmpfs (but not for everyone)
+	usermetadatawritertest
+)
+
+PATCHES=( "${FILESDIR}/${P}-libexecdir.patch" ) # KDE-bug 491462
+
+pkg_setup() {
+	use test && python-any-r1_pkg_setup
+	ecm_pkg_setup
+}
+
+src_configure() {
+	local mycmakeargs=(
+		$(cmake_use_find_package epub EPub)
+		$(cmake_use_find_package exif LibExiv2)
+		$(cmake_use_find_package ffmpeg FFmpeg)
+		$(cmake_use_find_package mobi QMobipocket6)
+		$(cmake_use_find_package pdf Poppler)
+		$(cmake_use_find_package taglib Taglib)
+	)
+
+	ecm_src_configure
+}
+
+pkg_postinst() {
+	if [[ -z "${REPLACING_VERSIONS}" ]]; then
+		optfeature "Microsoft Word/Powerpoint file indexing" app-text/catdoc
+		optfeature "Microsoft Excel file indexing" dev-libs/libxls
+	fi
+	ecm_pkg_postinst
+}


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-08-10  8:18 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-05-01  9:39 [gentoo-commits] repo/gentoo:master commit in: kde-frameworks/kfilemetadata/files/, kde-frameworks/kfilemetadata/ Andreas Sturmlechner
  -- strict thread matches above, loose matches on Subject: below --
2024-08-10  8:18 Andreas Sturmlechner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox