From 60fb1138096d4ba9158cf9f2278ee133e7dd2028 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wolfgang=20St=C3=B6ggl?= Date: Mon, 9 Nov 2020 12:51:55 +0100 Subject: [PATCH] Add cppcheck-2.2-online-help_q_readonly.patch - Add patch from merged upstream PR concerning Qt online-help: https://github.com/danmar/cppcheck/pull/2890 - Remove workaround for timestamp of online-help.qch --- cppcheck-2.2-online-help_q_readonly.patch | 31 +++++++++++++++++++++++ cppcheck.spec | 16 ++++++------ 2 files changed, 39 insertions(+), 8 deletions(-) create mode 100644 cppcheck-2.2-online-help_q_readonly.patch diff --git a/cppcheck-2.2-online-help_q_readonly.patch b/cppcheck-2.2-online-help_q_readonly.patch new file mode 100644 index 0000000..d86ed93 --- /dev/null +++ b/cppcheck-2.2-online-help_q_readonly.patch @@ -0,0 +1,31 @@ +From 4a057c181373626f6e1538a2edf46cc4741fe7bf Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Wolfgang=20St=C3=B6ggl?= +Date: Sun, 8 Nov 2020 15:06:14 +0100 +Subject: [PATCH] Set _q_readonly property for online-help (#2890) + +- Setting _q_readonly disables the timestamp check of the registered + online-help.qch file +- This enables displaying of Contents and Index of the online help, + even if the timestamp of online-help.qch is slightly different. + Differences in the timestamp can result from packing online-help.qch + in a cab file, when building the installer (1 or 2 seconds) or from + installing the file under a different timezone under Linux etc. +- Remark: Qt 5.14 or newer is required to display Contents or Index, + when the help files are readonly +--- + gui/helpdialog.cpp | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/gui/helpdialog.cpp b/gui/helpdialog.cpp +index c158c8092f..ce24aa1c3a 100644 +--- a/gui/helpdialog.cpp ++++ b/gui/helpdialog.cpp +@@ -66,6 +66,8 @@ HelpDialog::HelpDialog(QWidget *parent) : + } + + mHelpEngine = new QHelpEngine(helpFile); ++ // Disable the timestamp check of online-help.qhc by setting _q_readonly ++ mHelpEngine->setProperty("_q_readonly", QVariant::fromValue(true)); + mHelpEngine->setupData(); + + mUi->contents->addWidget(mHelpEngine->contentWidget()); diff --git a/cppcheck.spec b/cppcheck.spec index ff3c7ec..6007af0 100644 --- a/cppcheck.spec +++ b/cppcheck.spec @@ -2,7 +2,7 @@ Name: cppcheck Version: 2.2 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Tool for static C/C++ code analysis License: GPLv3+ URL: http://cppcheck.wiki.sourceforge.net/ @@ -21,6 +21,8 @@ Patch3: cppcheck-2.2-exprengine.patch Patch4: cppcheck-2.2-online-help.patch # Fix for missing #include with gcc-11 Patch5: cppcheck-gcc11.patch +# https://github.com/danmar/cppcheck/pull/2890 +Patch6: cppcheck-2.2-online-help_q_readonly.patch BuildRequires: gcc-c++ BuildRequires: pcre-devel @@ -69,11 +71,12 @@ from xml files first generated using cppcheck. %patch3 -p1 -b .exprengine %patch4 -p1 -b .online-help %patch5 -p1 -b .gcc11 +%patch6 -p1 -b .online-help_q_readonly # Make sure bundled tinyxml is not used rm -r externals/tinyxml # Generate the Qt online-help file cd gui/help -TZ=UTC qhelpgenerator-qt5 online-help.qhcp -o online-help.qhc +qhelpgenerator-qt5 online-help.qhcp -o online-help.qhc %build # Manuals @@ -122,13 +125,10 @@ cd %{_vpath_builddir}/bin %files htmlreport %{_bindir}/cppcheck-htmlreport -%post -# Adjust the timestamp of online-help.qch to the value expected by online-help.qhc -# The rpm is built on servers using UTC. Get this UTC timestamp and apply it to the file under the local TZ -# https://github.com/danmar/cppcheck/commit/9693940dadfd54bb0bac2549e1b2d6804be9a1a8#commitcomment-43482215 -touch -a -m -t $(TZ=UTC date -r /usr/share/Cppcheck/help/online-help.qch +%Y%m%d%H%M.%%S) /usr/share/Cppcheck/help/online-help.qch - %changelog +* Sun Nov 08 2020 Wolfgang Stöggl - 2.2-5 +- Add cppcheck-2.2-online-help_q_readonly.patch + * Thu Oct 22 2020 Wolfgang Stöggl - 2.2-4 - Fix missing Contents and Index in Qt online-help file