summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEli Schwartz <eschwartz93@gmail.com>2024-05-07 20:52:26 -0400
committerSam James <sam@gentoo.org>2024-05-08 20:19:28 +0100
commitf69bcbfb3473aa317a114334847b617f30caee84 (patch)
treec858083454c7bcad5ad953747eaf0d23dd9794f2 /kde-apps
parentsys-libs/libseccomp: run elibtoolize in non-live ebuild (diff)
downloadgentoo-f69bcbfb3473aa317a114334847b617f30caee84.tar.gz
gentoo-f69bcbfb3473aa317a114334847b617f30caee84.tar.bz2
gentoo-f69bcbfb3473aa317a114334847b617f30caee84.zip
kde-apps/dolphin-plugins-subversion: backport patch to fix ODR violation
Closes: https://bugs.gentoo.org/926233 Signed-off-by: Eli Schwartz <eschwartz93@gmail.com> Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'kde-apps')
-rw-r--r--kde-apps/dolphin-plugins-subversion/dolphin-plugins-subversion-23.08.5-r1.ebuild68
-rw-r--r--kde-apps/dolphin-plugins-subversion/dolphin-plugins-subversion-24.02.2-r1.ebuild (renamed from kde-apps/dolphin-plugins-subversion/dolphin-plugins-subversion-24.02.2.ebuild)5
-rw-r--r--kde-apps/dolphin-plugins-subversion/files/772a4d712abcf1c6c86f25bd306785815132d886.patch78
3 files changed, 151 insertions, 0 deletions
diff --git a/kde-apps/dolphin-plugins-subversion/dolphin-plugins-subversion-23.08.5-r1.ebuild b/kde-apps/dolphin-plugins-subversion/dolphin-plugins-subversion-23.08.5-r1.ebuild
new file mode 100644
index 000000000000..47a4a3bb272a
--- /dev/null
+++ b/kde-apps/dolphin-plugins-subversion/dolphin-plugins-subversion-23.08.5-r1.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ECM_HANDBOOK="false"
+KDE_ORG_NAME="dolphin-plugins"
+MY_PLUGIN_NAME="svn"
+PVCUT=$(ver_cut 1-3)
+KFMIN=5.106.0
+QTMIN=5.15.9
+inherit ecm gear.kde.org
+
+DESCRIPTION="Dolphin plugin for Subversion integration"
+HOMEPAGE="https://apps.kde.org/dolphin_plugins/"
+
+LICENSE="GPL-2" # TODO: CHECK
+SLOT="5"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+IUSE=""
+
+DEPEND="
+ >=dev-qt/qtgui-${QTMIN}:5
+ >=dev-qt/qtwidgets-${QTMIN}:5
+ >=kde-apps/dolphin-${PVCUT}:5
+ >=kde-frameworks/kcoreaddons-${KFMIN}:5
+ >=kde-frameworks/ki18n-${KFMIN}:5
+ >=kde-frameworks/kio-${KFMIN}:5
+ >=kde-frameworks/ktextwidgets-${KFMIN}:5
+"
+RDEPEND="${DEPEND}
+ dev-vcs/subversion
+ >=kde-apps/kompare-${PVCUT}:*
+"
+
+PATCHES=(
+ # Backport patch to fix ODR: bug #926233
+ "${FILESDIR}"/772a4d712abcf1c6c86f25bd306785815132d886.patch
+)
+
+src_prepare() {
+ ecm_src_prepare
+ # solid, qtdbus only required by mountiso
+ ecm_punt_qt_module DBus
+ ecm_punt_kf_module Solid
+ # kxmlgui, qtnetwork only required by dropbox
+ ecm_punt_qt_module Network
+ ecm_punt_kf_module XmlGui
+ # delete non-${PN} translations
+ find po -type f -name "*po" -and -not -name "*${MY_PLUGIN_NAME}plugin" -delete || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_${MY_PLUGIN_NAME}=ON
+ -DBUILD_bazaar=OFF
+ -DBUILD_dropbox=OFF
+ -DBUILD_git=OFF
+ -DBUILD_hg=OFF
+ -DBUILD_mountiso=OFF
+ )
+ ecm_src_configure
+}
+
+src_install() {
+ ecm_src_install
+ rm "${D}"/usr/share/metainfo/org.kde.dolphin-plugins.metainfo.xml || die
+}
diff --git a/kde-apps/dolphin-plugins-subversion/dolphin-plugins-subversion-24.02.2.ebuild b/kde-apps/dolphin-plugins-subversion/dolphin-plugins-subversion-24.02.2-r1.ebuild
index 1ce897a0f471..27f2be1106ea 100644
--- a/kde-apps/dolphin-plugins-subversion/dolphin-plugins-subversion-24.02.2.ebuild
+++ b/kde-apps/dolphin-plugins-subversion/dolphin-plugins-subversion-24.02.2-r1.ebuild
@@ -32,6 +32,11 @@ RDEPEND="${DEPEND}
>=kde-apps/kompare-${PVCUT}:*
"
+PATCHES=(
+ # Backport patch to fix ODR: bug #926233
+ "${FILESDIR}"/772a4d712abcf1c6c86f25bd306785815132d886.patch
+)
+
src_prepare() {
ecm_src_prepare
# solid, qtdbus only required by mountiso
diff --git a/kde-apps/dolphin-plugins-subversion/files/772a4d712abcf1c6c86f25bd306785815132d886.patch b/kde-apps/dolphin-plugins-subversion/files/772a4d712abcf1c6c86f25bd306785815132d886.patch
new file mode 100644
index 000000000000..e2157f00fd34
--- /dev/null
+++ b/kde-apps/dolphin-plugins-subversion/files/772a4d712abcf1c6c86f25bd306785815132d886.patch
@@ -0,0 +1,78 @@
+From 772a4d712abcf1c6c86f25bd306785815132d886 Mon Sep 17 00:00:00 2001
+From: Nikolai Krasheninnikov <nkrasheninnikov@yandex.ru>
+Date: Tue, 2 Apr 2024 09:07:53 +0000
+Subject: [PATCH] svn: Fix gcc-13 One Definition Rule compilation error with
+ LTO enabled
+
+columns_t enum defined multiple times in different translation units. Although this
+should not be an error, we move the definition to a separate unnamed namespace.
+
+BUG: 482524
+---
+ svn/svncommitdialog.cpp | 10 +++++-----
+ svn/svnlogdialog.cpp | 14 +++++++-------
+ 2 files changed, 12 insertions(+), 12 deletions(-)
+
+diff --git a/svn/svncommitdialog.cpp b/svn/svncommitdialog.cpp
+index 41152434..f9a44265 100644
+--- a/svn/svncommitdialog.cpp
++++ b/svn/svncommitdialog.cpp
+@@ -54,6 +54,11 @@ QStringList makeContext(const QStringList &list, const QHash<QString, KVersionCo
+ return ret;
+ }
+
++enum columns_t {
++ columnPath,
++ columnStatus
++};
++
+ }
+
+ struct svnCommitEntryInfo_t {
+@@ -67,11 +72,6 @@ struct svnCommitEntryInfo_t {
+ };
+ Q_DECLARE_METATYPE(svnCommitEntryInfo_t);
+
+-enum columns_t {
+- columnPath,
+- columnStatus
+-};
+-
+ SvnCommitDialog::SvnCommitDialog(const QHash<QString, KVersionControlPlugin::ItemVersion> *versionInfo, const QStringList& context, QWidget *parent) :
+ QDialog(parent),
+ m_versionInfoHash(versionInfo),
+diff --git a/svn/svnlogdialog.cpp b/svn/svnlogdialog.cpp
+index 21abadaa..685f7ec5 100644
+--- a/svn/svnlogdialog.cpp
++++ b/svn/svnlogdialog.cpp
+@@ -49,6 +49,13 @@ bool resetAndRevertFileToRevision(const QString &filePath, ulong revision)
+ return true;
+ }
+
++enum columns_t {
++ columnRevision,
++ columnAuthor,
++ columnDate,
++ columnMessage
++};
++
+ }
+
+ struct svnLogEntryInfo_t {
+@@ -64,13 +71,6 @@ struct svnLogEntryInfo_t {
+ };
+ Q_DECLARE_METATYPE(svnLogEntryInfo_t);
+
+-enum columns_t {
+- columnRevision,
+- columnAuthor,
+- columnDate,
+- columnMessage
+-};
+-
+ SvnLogDialog::SvnLogDialog(const QString& contextDir, QWidget *parent) :
+ QDialog(parent),
+ m_contextDir(contextDir),
+--
+GitLab
+