commit:     0f8be8520d3495bd57ed7638671d288c8855cea9
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun May 14 10:00:55 2017 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun May 14 10:13:38 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0f8be852

kde-misc/kdiff3: Fix missing cli options

Thanks-to: Peter Urbanec <bugs.gentoo.org <AT> urbanec.net>
Gentoo-bug: 546494

Package-Manager: Portage-2.3.5, Repoman-2.3.1

 .../files/kdiff3-0.9.98_p20170219-cli-args.patch   | 51 ++++++++++++++++++++++
 kde-misc/kdiff3/kdiff3-0.9.98_p20170219-r1.ebuild  | 37 ++++++++++++++++
 2 files changed, 88 insertions(+)

diff --git a/kde-misc/kdiff3/files/kdiff3-0.9.98_p20170219-cli-args.patch 
b/kde-misc/kdiff3/files/kdiff3-0.9.98_p20170219-cli-args.patch
new file mode 100644
index 00000000000..3312b504e58
--- /dev/null
+++ b/kde-misc/kdiff3/files/kdiff3-0.9.98_p20170219-cli-args.patch
@@ -0,0 +1,51 @@
+commit b849851d3317903a8ab7c040966921384d9e6508
+Author: Peter Urbanec <git.u...@urbanec.net>
+Date:   Thu May 11 16:09:12 2017 +1000
+
+    Implement most of the missing command line options
+    
+    A number of command line options were missing, which caused kdiff3 from
+    failing to work properly when used as the mergetool in git. In particular,
+    git relies on the -L group of options and without those it would fail.
+    
+    Signed-off-by: Peter Urbanec <git.u...@urbanec.net>
+
+diff --git a/src/main.cpp b/src/main.cpp
+index 3549c92..fed486d 100644
+--- a/src/main.cpp
++++ b/src/main.cpp
+@@ -67,24 +67,23 @@ int main(int argc, char *argv[])
+     
parser.addOption(QCommandLineOption(QStringList()<<QStringLiteral("b")<<QStringLiteral("base"),i18n("Explicit
 base file. For compatibility with certain tools."),QStringLiteral("file")));
+     
parser.addOption(QCommandLineOption(QStringList()<<QStringLiteral("o")<<QStringLiteral("out")<<QStringLiteral("output"),i18n("Output
 file. Implies -m."),QStringLiteral("file")));
+     parser.addOption(QCommandLineOption(QStringLiteral("auto"),i18n("No GUI 
if all conflicts are auto-solvable. Needs -o file.")));
++    parser.addOption(QCommandLineOption(QStringLiteral("qall"),i18n("Don't 
solve conflicts automatically.")));
++    parser.addOption(QCommandLineOption(QStringLiteral("L1"),i18n("Visible 
name replacement for input file 1 (base)."),QStringLiteral("alias1")));
++    parser.addOption(QCommandLineOption(QStringLiteral("L2"),i18n("Visible 
name replacement for input file 2."),QStringLiteral("alias2")));
++    parser.addOption(QCommandLineOption(QStringLiteral("L3"),i18n("Visible 
name replacement for input file 3."),QStringLiteral("alias3")));
++    
parser.addOption(QCommandLineOption(QStringList()<<QStringLiteral("L")<<QStringLiteral("fname"),i18n("Alternative
 visible name replacement. Supply this once for every 
input."),QStringLiteral("alias")));
++    parser.addOption(QCommandLineOption(QStringLiteral("cs"),i18n("Override a 
config setting. Use once for every setting. E.g.: --cs 
\"AutoAdvance=1\""),QStringLiteral("string")));
++    
parser.addOption(QCommandLineOption(QStringLiteral("confighelp"),i18n("Show 
list of config settings and current values.")));
+     parser.addPositionalArgument(QStringLiteral("file1"), i18n("File1 to open 
(base, if not specified via --base)."));
+     parser.addPositionalArgument(QStringLiteral("file2"), i18n("File2 to 
open."));
+     parser.addPositionalArgument(QStringLiteral("file3"), i18n("File3 to open 
(optional)."));
+ 
+-    aboutData.setupCommandLine(&parser);
+-    parser.process(app);
+-    aboutData.processCommandLine(&parser);
+-
+ // TODO KF5
+-//    options.add( "qall",        ki18n("Don't solve conflicts 
automatically.") );
+-//    options.add( "L1 alias1",   ki18n("Visible name replacement for input 
file 1 (base).") );
+-//    options.add( "L2 alias2",   ki18n("Visible name replacement for input 
file 2.") );
+-//    options.add( "L3 alias3",   ki18n("Visible name replacement for input 
file 3.") );
+-//    options.add( "L" ).add( "fname alias", ki18n("Alternative visible name 
replacement. Supply this once for every input.") );
+-//    options.add( "cs string",   ki18n("Override a config setting. Use once 
for every setting. E.g.: --cs \"AutoAdvance=1\"") );
+-//    options.add( "confighelp",  ki18n("Show list of config settings and 
current values.") );
+ //    options.add( "config file", ki18n("Use a different config file.") );
+ 
++    aboutData.setupCommandLine(&parser);
++    parser.process(app);
++    aboutData.processCommandLine(&parser);
+ 
+     KDiff3Shell *p = new KDiff3Shell(&parser);
+     p->show();

diff --git a/kde-misc/kdiff3/kdiff3-0.9.98_p20170219-r1.ebuild 
b/kde-misc/kdiff3/kdiff3-0.9.98_p20170219-r1.ebuild
new file mode 100644
index 00000000000..04a916f8c4b
--- /dev/null
+++ b/kde-misc/kdiff3/kdiff3-0.9.98_p20170219-r1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit kde5
+
+DESCRIPTION="Frontend to diff3 based on Qt/KF5"
+HOMEPAGE="http://kdiff3.sourceforge.net/
+https://cgit.kde.org/scratch/thomasfischer/kdiff3.git/log/?h=kf5";
+SRC_URI="http://dev.gentoo.org/~asturm/distfiles/${P}.tar.xz";
+
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="
+       $(add_frameworks_dep kconfig)
+       $(add_frameworks_dep kconfigwidgets)
+       $(add_frameworks_dep kcoreaddons)
+       $(add_frameworks_dep kcrash)
+       $(add_frameworks_dep ki18n)
+       $(add_frameworks_dep kiconthemes)
+       $(add_frameworks_dep kio)
+       $(add_frameworks_dep kparts)
+       $(add_frameworks_dep kwidgetsaddons)
+       $(add_frameworks_dep kxmlgui)
+       $(add_qt_dep qtgui)
+       $(add_qt_dep qtprintsupport)
+       $(add_qt_dep qtwidgets)
+"
+RDEPEND="${DEPEND}
+       !kde-misc/kdiff3:4
+       sys-apps/diffutils
+"
+
+PATCHES=( "${FILESDIR}/${P}-cli-args.patch" )

Reply via email to