From cf12cd2a459f54156432312d1f91237ed3dec810 Mon Sep 17 00:00:00 2001 From: DistroBaker Date: Sat, 5 Dec 2020 21:13:50 +0000 Subject: [PATCH] Merged update from upstream sources This is an automated DistroBaker update from upstream sources. If you do not know what this is about or would like to opt out, contact the OSCI team. Source: https://src.fedoraproject.org/rpms/cppcheck.git#c17ed7fd3f3d3c40e706c9df0d8dd14e0ca358b0 --- .gitignore | 1 + cppcheck-2.2-exprengine.patch | 57 ------------ cppcheck-2.2-online-help.patch | 25 ------ cppcheck-2.2-online-help_q_readonly.patch | 31 ------- cppcheck-2.2-tinyxml.patch | 90 ------------------- ...ck-gcc11.patch => cppcheck-2.3-gcc11.patch | 24 ++--- cppcheck.spec | 38 +++----- sources | 2 +- 8 files changed, 28 insertions(+), 240 deletions(-) delete mode 100644 cppcheck-2.2-exprengine.patch delete mode 100644 cppcheck-2.2-online-help.patch delete mode 100644 cppcheck-2.2-online-help_q_readonly.patch delete mode 100644 cppcheck-2.2-tinyxml.patch rename cppcheck-gcc11.patch => cppcheck-2.3-gcc11.patch (64%) diff --git a/.gitignore b/.gitignore index fbc8aad..c5376e0 100644 --- a/.gitignore +++ b/.gitignore @@ -44,3 +44,4 @@ cppcheck-1.44.tar.bz2 /cppcheck-2.0.tar.gz /cppcheck-2.1.tar.gz /cppcheck-2.2.tar.gz +/cppcheck-2.3.tar.gz diff --git a/cppcheck-2.2-exprengine.patch b/cppcheck-2.2-exprengine.patch deleted file mode 100644 index 6b50be1..0000000 --- a/cppcheck-2.2-exprengine.patch +++ /dev/null @@ -1,57 +0,0 @@ -From b052843655f90a62526585db20fcf18660919cb6 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Daniel=20Marjam=C3=A4ki?= -Date: Sun, 4 Oct 2020 11:21:00 +0200 -Subject: [PATCH] exprengine: Use and tweak ExprEngine::ArrayValue::MAXSIZE - ---- - lib/exprengine.cpp | 2 +- - lib/exprengine.h | 2 +- - test/testexprengine.cpp | 4 ++-- - 3 files changed, 4 insertions(+), 4 deletions(-) - -diff --git a/lib/exprengine.cpp b/lib/exprengine.cpp -index 49ea76b4ab..21c6bd9a9f 100644 ---- a/lib/exprengine.cpp -+++ b/lib/exprengine.cpp -@@ -1506,7 +1506,7 @@ static ExprEngine::ValuePtr getValueRangeFromValueType(const ValueType *valueTyp - value = getValueRangeFromValueType(&vt, data); - } else - return ExprEngine::ValuePtr(); -- auto bufferSize = std::make_shared(data.getNewSymbolName(), 0, ~0U); -+ auto bufferSize = std::make_shared(data.getNewSymbolName(), 0, ExprEngine::ArrayValue::MAXSIZE); - return std::make_shared(data.getNewSymbolName(), bufferSize, value, false, false, false); - } - return getValueRangeFromValueType(data.getNewSymbolName(), valueType, *data.settings); -diff --git a/lib/exprengine.h b/lib/exprengine.h -index 46966d6108..889140fd85 100644 ---- a/lib/exprengine.h -+++ b/lib/exprengine.h -@@ -194,7 +194,7 @@ namespace ExprEngine { - // Array or pointer - class ArrayValue: public Value { - public: -- const int MAXSIZE = 0x100000; -+ enum { MAXSIZE = 0x7fffffff }; - - ArrayValue(const std::string &name, ValuePtr size, ValuePtr value, bool pointer, bool nullPointer, bool uninitPointer); - ArrayValue(DataBase *data, const Variable *var); -diff --git a/test/testexprengine.cpp b/test/testexprengine.cpp -index f403eae35c..d8965167a1 100644 ---- a/test/testexprengine.cpp -+++ b/test/testexprengine.cpp -@@ -328,13 +328,13 @@ class TestExprEngine : public TestFixture { - Settings settings; - LOAD_LIB_2(settings.library, "std.cfg"); - -- ASSERT_EQUALS("1:26: $3=0:ffffffff\n" -+ ASSERT_EQUALS("1:26: $3=0:2147483647\n" - "1:26: $2=-128:127\n" - "1:27: 0:{ s=($4,[$3],[:]=$2)}\n", - trackExecution("void foo() { std::string s; }", &settings)); - - -- ASSERT_EQUALS("1:52: $3=0:ffffffff\n" -+ ASSERT_EQUALS("1:52: $3=0:2147483647\n" - "1:52: $2=-128:127\n" - "1:66: 0:{ s=($4,[$3],[:]=$2)}\n", - trackExecution("std::string getName(int); void foo() { std::string s = getName(1); }", &settings)); diff --git a/cppcheck-2.2-online-help.patch b/cppcheck-2.2-online-help.patch deleted file mode 100644 index f26fb7f..0000000 --- a/cppcheck-2.2-online-help.patch +++ /dev/null @@ -1,25 +0,0 @@ -From df9f6f38be7ed385b0b56d5c6101e34f717e2318 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Wolfgang=20St=C3=B6ggl?= -Date: Sun, 11 Oct 2020 03:49:27 +0200 -Subject: [PATCH] Look for Qt online-help file also in FILESDIR (#2844) - ---- - gui/helpdialog.cpp | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/gui/helpdialog.cpp b/gui/helpdialog.cpp -index 706266968b..c158c8092f 100644 ---- a/gui/helpdialog.cpp -+++ b/gui/helpdialog.cpp -@@ -33,6 +33,11 @@ static QString getHelpFile() - << datadir - << (QApplication::applicationDirPath() + "/help") - << QApplication::applicationDirPath(); -+#ifdef FILESDIR -+ const QString filesdir = FILESDIR; -+ paths << (filesdir + "/help") -+ << filesdir; -+#endif - for (QString p: paths) { - QString filename = p + "/online-help.qhc"; - if (QFileInfo(filename).exists()) diff --git a/cppcheck-2.2-online-help_q_readonly.patch b/cppcheck-2.2-online-help_q_readonly.patch deleted file mode 100644 index d86ed93..0000000 --- a/cppcheck-2.2-online-help_q_readonly.patch +++ /dev/null @@ -1,31 +0,0 @@ -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-2.2-tinyxml.patch b/cppcheck-2.2-tinyxml.patch deleted file mode 100644 index 9a92c21..0000000 --- a/cppcheck-2.2-tinyxml.patch +++ /dev/null @@ -1,90 +0,0 @@ -diff -up cppcheck-2.2/cli/CMakeLists.txt.orig cppcheck-2.2/cli/CMakeLists.txt ---- cppcheck-2.2/cli/CMakeLists.txt.orig 2020-10-03 11:05:53.000000000 +0200 -+++ cppcheck-2.2/cli/CMakeLists.txt 2020-10-04 06:47:29.867450500 +0200 -@@ -1,5 +1,4 @@ - include_directories(${PROJECT_SOURCE_DIR}/lib/) --include_directories(SYSTEM ${PROJECT_SOURCE_DIR}/externals/tinyxml/) - include_directories(${PROJECT_SOURCE_DIR}/externals/simplecpp/) - - file(GLOB hdrs "*.h") -@@ -8,7 +7,7 @@ file(GLOB mainfile "main.cpp") - list(REMOVE_ITEM srcs ${mainfile}) - - add_library(cli_objs OBJECT ${hdrs} ${srcs}) --add_executable(cppcheck ${hdrs} ${mainfile} $ $ $ $) -+add_executable(cppcheck ${hdrs} ${mainfile} $ $ $) - if (HAVE_RULES) - target_link_libraries(cppcheck ${PCRE_LIBRARY}) - endif() -@@ -18,6 +17,7 @@ endif() - if (WIN32 AND NOT BORLAND) - target_link_libraries(cppcheck Shlwapi.lib) - endif() -+target_link_libraries(cppcheck tinyxml2) - - install(TARGETS cppcheck - RUNTIME DESTINATION ${CMAKE_INSTALL_FULL_BINDIR} -diff -up cppcheck-2.2/CMakeLists.txt.orig cppcheck-2.2/CMakeLists.txt ---- cppcheck-2.2/CMakeLists.txt.orig 2020-10-03 11:05:53.000000000 +0200 -+++ cppcheck-2.2/CMakeLists.txt 2020-10-04 06:48:18.324566600 +0200 -@@ -23,7 +23,6 @@ if (BUILD_TESTS) - enable_testing() - endif() - --add_subdirectory(externals/tinyxml) - add_subdirectory(externals/simplecpp) - add_subdirectory(lib) # CppCheck Library - add_subdirectory(cli) # Client application -diff -up cppcheck-2.2/gui/CMakeLists.txt.orig cppcheck-2.2/gui/CMakeLists.txt ---- cppcheck-2.2/gui/CMakeLists.txt.orig 2020-10-03 11:05:53.000000000 +0200 -+++ cppcheck-2.2/gui/CMakeLists.txt 2020-10-04 07:36:13.199769100 +0200 -@@ -10,7 +10,6 @@ if (BUILD_GUI) - endif() - - include_directories(${PROJECT_SOURCE_DIR}/lib/) -- include_directories(SYSTEM ${PROJECT_SOURCE_DIR}/externals/tinyxml/) - - file(GLOB hdrs "*.h") - file(GLOB srcs "*.cpp") -@@ -20,14 +19,14 @@ if (BUILD_GUI) - QT5_ADD_RESOURCES(resources "gui.qrc") - QT5_ADD_TRANSLATION(qms ${tss}) - -- add_executable(cppcheck-gui ${hdrs} ${srcs} ${uis_hdrs} ${resources} ${qms} $ $ $) -+ add_executable(cppcheck-gui ${hdrs} ${srcs} ${uis_hdrs} ${resources} ${qms} $ $) - if (HAVE_RULES) - target_link_libraries(cppcheck-gui ${PCRE_LIBRARY}) - endif() - if (USE_Z3) - target_link_libraries(cppcheck-gui ${Z3_LIBRARIES}) - endif() -- target_link_libraries(cppcheck-gui Qt5::Core Qt5::Gui Qt5::Widgets Qt5::PrintSupport Qt5::Help) -+ target_link_libraries(cppcheck-gui tinyxml2 Qt5::Core Qt5::Gui Qt5::Widgets Qt5::PrintSupport Qt5::Help) - if(WITH_QCHART) - target_compile_definitions (cppcheck-gui PRIVATE HAVE_QCHART ) - target_link_libraries(cppcheck-gui Qt5::Charts) -diff -up cppcheck-2.2/test/CMakeLists.txt.orig cppcheck-2.2/test/CMakeLists.txt ---- cppcheck-2.2/test/CMakeLists.txt.orig 2020-10-03 11:05:53.000000000 +0200 -+++ cppcheck-2.2/test/CMakeLists.txt 2020-10-04 06:55:33.660775300 +0200 -@@ -13,19 +13,19 @@ if (BUILD_TESTS) - add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND} --output-on-failure -j ${CTEST_PARALLEL_LEVEL} -C ${CMAKE_CFG_INTDIR} --timeout 90) - - include_directories(${PROJECT_SOURCE_DIR}/lib/ ${PROJECT_SOURCE_DIR}/cli/) -- include_directories(SYSTEM ${PROJECT_SOURCE_DIR}/externals/tinyxml) - include_directories(${PROJECT_SOURCE_DIR}/externals/simplecpp/) - - file(GLOB hdrs "*.h") - file(GLOB srcs "*.cpp") - -- add_executable(testrunner ${hdrs} ${srcs} $ $ $ $) -+ add_executable(testrunner ${hdrs} ${srcs} $ $ $) - if (HAVE_RULES) - target_link_libraries(testrunner ${PCRE_LIBRARY}) - endif() - if (USE_Z3) - target_link_libraries(testrunner ${Z3_LIBRARIES}) - endif() -+ target_link_libraries(testrunner tinyxml2) - - if (NOT CMAKE_DISABLE_PRECOMPILE_HEADERS) - target_precompile_headers(testrunner PRIVATE precompiled.h) diff --git a/cppcheck-gcc11.patch b/cppcheck-2.3-gcc11.patch similarity index 64% rename from cppcheck-gcc11.patch rename to cppcheck-2.3-gcc11.patch index a9b127a..391dc9c 100644 --- a/cppcheck-gcc11.patch +++ b/cppcheck-2.3-gcc11.patch @@ -1,24 +1,24 @@ diff --git a/lib/programmemory.cpp b/lib/programmemory.cpp -index 6b0e2d8..785c9cf 100644 +index 753a5c846..bb9569624 100644 --- a/lib/programmemory.cpp +++ b/lib/programmemory.cpp -@@ -6,6 +6,7 @@ +@@ -5,6 +5,7 @@ + #include "symboldatabase.h" #include #include - #include +#include + #include void ProgramMemory::setValue(nonneg int varid, const ValueFlow::Value &value) - { diff --git a/test/testsymboldatabase.cpp b/test/testsymboldatabase.cpp -index 4d378d5..ced44ab 100644 +index 1d2bc8d54..399ea7593 100644 --- a/test/testsymboldatabase.cpp +++ b/test/testsymboldatabase.cpp -@@ -38,6 +38,7 @@ - #include - #include - #include +@@ -31,6 +31,7 @@ + #include + #include + #include +#include - - struct InternalError; - + #include + #include + #include diff --git a/cppcheck.spec b/cppcheck.spec index 6007af0..eed6295 100644 --- a/cppcheck.spec +++ b/cppcheck.spec @@ -1,28 +1,19 @@ %undefine __cmake_in_source_build Name: cppcheck -Version: 2.2 -Release: 5%{?dist} +Version: 2.3 +Release: 1%{?dist} Summary: Tool for static C/C++ code analysis License: GPLv3+ URL: http://cppcheck.wiki.sourceforge.net/ Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz -# Use system tinyxml2 -Patch0: cppcheck-2.2-tinyxml.patch # Fix location of translations -Patch1: cppcheck-2.2-translations.patch +Patch0: cppcheck-2.2-translations.patch # Select python3 explicitly -Patch2: cppcheck-1.88-htmlreport-python3.patch -# https://github.com/danmar/cppcheck/commit/b052843 -Patch3: cppcheck-2.2-exprengine.patch -# Look for Qt online-help file also in FILESDIR -# https://github.com/danmar/cppcheck/commit/df9f6f3 -Patch4: cppcheck-2.2-online-help.patch +Patch1: cppcheck-1.88-htmlreport-python3.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 +Patch2: cppcheck-2.3-gcc11.patch BuildRequires: gcc-c++ BuildRequires: pcre-devel @@ -65,15 +56,11 @@ from xml files first generated using cppcheck. %prep %setup -q -%patch0 -p1 -b .tinyxml -%patch1 -p1 -b .translations -%patch2 -p1 -b .python3 -%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 +%patch0 -p1 -b .translations +%patch1 -p1 -b .python3 +%patch2 -p1 -b .gcc11 +# Make sure bundled tinyxml2 is not used +rm -r externals/tinyxml2 # Generate the Qt online-help file cd gui/help qhelpgenerator-qt5 online-help.qhcp -o online-help.qhc @@ -86,7 +73,7 @@ pandoc man/reference-cfg-format.md -o man/reference-cfg-format.html -s --number- # Binaries # Upstream doesn't support shared libraries (unversioned solib) -%cmake -DCMAKE_BUILD_TYPE=Release -DUSE_MATCHCOMPILER=yes -DUSE_Z3=yes -DHAVE_RULES=yes -DBUILD_GUI=1 -DBUILD_SHARED_LIBS:BOOL=OFF -DBUILD_TESTS=yes -DFILESDIR=%{_datadir}/Cppcheck +%cmake -DCMAKE_BUILD_TYPE=Release -DUSE_MATCHCOMPILER=yes -DUSE_Z3=yes -DHAVE_RULES=yes -DBUILD_GUI=1 -DBUILD_SHARED_LIBS:BOOL=OFF -DBUILD_TESTS=yes -DFILESDIR=%{_datadir}/Cppcheck -DUSE_BUNDLED_TINYXML2=OFF %cmake_build %install @@ -126,6 +113,9 @@ cd %{_vpath_builddir}/bin %{_bindir}/cppcheck-htmlreport %changelog +* Sat Dec 05 2020 Wolfgang Stöggl - 2.3-1 +- Update to 2.3. + * Sun Nov 08 2020 Wolfgang Stöggl - 2.2-5 - Add cppcheck-2.2-online-help_q_readonly.patch diff --git a/sources b/sources index 564f13b..73d8988 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (cppcheck-2.2.tar.gz) = 510dccba09530cb19a7d736966aeaac8683c9eb37ff1a347e1310f775b312c6c1598347b01f06343dbeab04d1fdc774aafa6800ee054b2f2f50a68ba4606c353 +SHA512 (cppcheck-2.3.tar.gz) = ee15890f77c58847d4add7d555398e4bb83e3a73e942f218413b9830f05b2c975b49bf0aeb0092e0467f0cd7f26b9f05013f701dd80ee5e2aa3d2ef81945c4ed