diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2018-09-21 18:00:10 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2018-09-21 18:00:10 +0100 |
commit | 265dbe5dbc14c199299496c6db8fce3f76647015 (patch) | |
tree | ab18b5617d138f6684566b619405090989d55a2c /dev-util/cppcheck | |
parent | 586819755b4dbfdffdc8a725ab7c0f86095b8489 (diff) |
gentoo resync : 21.09.2018
Diffstat (limited to 'dev-util/cppcheck')
-rw-r--r-- | dev-util/cppcheck/Manifest | 2 | ||||
-rw-r--r-- | dev-util/cppcheck/cppcheck-1.84-r1.ebuild | 110 | ||||
-rw-r--r-- | dev-util/cppcheck/files/cppcheck-1.84-char-signedness.patch | 88 |
3 files changed, 200 insertions, 0 deletions
diff --git a/dev-util/cppcheck/Manifest b/dev-util/cppcheck/Manifest index d406818de50c..f197b24f4912 100644 --- a/dev-util/cppcheck/Manifest +++ b/dev-util/cppcheck/Manifest @@ -1,7 +1,9 @@ AUX cppcheck-1.75-tinyxml2.patch 2294 BLAKE2B 78763d10fdddb3d7f0cdaca9271007e97cd981ce1a5a39a91c928def6611cc379b411f9f8380d8f3b4b23554277cfc5a9c6e0797a80378d6e956ee2668dcbc5a SHA512 5eebe4e85649a5e9e0fd312dbaf4284a68327125322f1c6b905ec93b1d445978dd532c4c8c18ad0478f29a50c77761fed1d0ecb2dca3148c0c7c747d391e7f07 +AUX cppcheck-1.84-char-signedness.patch 4839 BLAKE2B 8ee84544dace4ac35a80b7356d44e30a5f9b5a738d2904728f2c9decd744a6230345a0bfd9515c682f7d577c5b100f7d33a43a9e77bf2ae464ce502bc9e7d305 SHA512 2203665c60e4fa121b18af90f390a8810b772d6b608a1d0d4804d475ca21de02b10f6f543443e81e0cc49980d9f71323800c3cb2256064c4519c93b6c8d366f8 DIST cppcheck-1.81.tar.bz2 1514741 BLAKE2B 2f23dfe4bdb26e203411f0bf9bc569303a4d59f96911b32a8a5f9cc9a6a7fa75e5d87c328cb0bf8cc46bd8f38747a4663c33243b8385355cc5630e1fcf6c891f SHA512 22e7b63c35e71b2784065faca06aec8c286e3173f182ac10995073cc3d61fd0bfaf353c51ad9207d3bd2c6134ab1a3990a37668709505b657c2816d561f8af92 DIST cppcheck-1.84.tar.gz 2051244 BLAKE2B 8e4b4c71da969addec6d1cb2919c39625054797ae730c85555695e872f87295c20e4564db2eadf536a762ca018882285d5d329f9a5789608e14ef17f1069753d SHA512 7f971f9097db6d2fee7483634afc697bddff499a7b09c4be0bfdc3f8e502d47202a8d4f4fc1a330d0fb1d34a7772065b96419b4b4f4f1467b997e62459304526 EBUILD cppcheck-1.81.ebuild 2199 BLAKE2B 1eb2f1a4a41981bb77cbb125baca20ced0c3cbbaab514fba64183780f80dfb148cf6c84a4471c20f276a11a79954b52adf7f0d3861e172ec2eea32440b14470d SHA512 b62076fa8e84ddf38a61ed396fab9d4ee91cdc668e8b9ad8ede52f8f7e8451e3e8d38293adb221585baad7caf2ea810dd8add22ce200b9bda499aaf71495a581 +EBUILD cppcheck-1.84-r1.ebuild 2382 BLAKE2B fe170aa38fbef3ad33d396ea74b33edbe7101bad9b7f2dda1779068411045b9f1eb7601fa0b9e1f89207d4162bc8a75d3bfde9a66714e1a5569abe80eeeb7683 SHA512 fd3bf998cc319a7aa2472f8214417ef2c3f1af6e0edc43763acad0bb8f89b02b3be8d484c532a0472d328925c32163a4d4f60b15c6c598e2cd2d40260604f95f EBUILD cppcheck-1.84.ebuild 2326 BLAKE2B dede88da8145164fa86946ab19e69aa4a8ab284df9dbe888922330084a383cb3c4f5700e0c7c6d2fb3dffefc154a965d79e5c2a6b02db2a8e021bd2b7ea04808 SHA512 57307a88b07ec02b0b2344f43873547cb9931bee8e6ac987310d9c79bc008f88b04c7e9491dc3b9c828f275427f5f51074ef81bfa4d0e835b5500a0c0913ae30 EBUILD cppcheck-9999.ebuild 2271 BLAKE2B 8e254632480771a07b58d0c28026801dc20e9ddd864c44a6fb956b86cd2745793f2cb84ee3aed63b72605f6c9a47f91bd8fc94a4d59614873adc7842f3601af1 SHA512 dd14de11d4138d6bc4113c025d033215ceb7a3958f289f113eebf82a86c793fb59901e856748c8da49ae5b8639fe5a09d6bfd938c955ef85484f54c6962af6a5 MISC metadata.xml 397 BLAKE2B 4ed8f4270fb9d5cccf84c6eaa6feed2ea1bd662f50b85bd39afa0c715e535be35dd67efa462477d43e5b2c118838b11b9b613638d330be7999d4dc3d59193c42 SHA512 63aebce854e81f3fb0584e47f75b416f33a6ff8cae55652d952c89b546ef28312ad44ab01113e9bedaf1b1181137930d066344c11773bb263baff7f27b7a313e diff --git a/dev-util/cppcheck/cppcheck-1.84-r1.ebuild b/dev-util/cppcheck/cppcheck-1.84-r1.ebuild new file mode 100644 index 000000000000..82a4ecbe4b9c --- /dev/null +++ b/dev-util/cppcheck/cppcheck-1.84-r1.ebuild @@ -0,0 +1,110 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} ) + +inherit distutils-r1 flag-o-matic qmake-utils toolchain-funcs + +DESCRIPTION="Static analyzer of C/C++ code" +HOMEPAGE="http://cppcheck.sourceforge.net" +SRC_URI="https://github.com/danmar/cppcheck/archive/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc64 ~sparc ~x86" +IUSE="htmlreport pcre qt5" + +RDEPEND=" + dev-libs/tinyxml2:= + htmlreport? ( dev-python/pygments[${PYTHON_USEDEP}] ) + pcre? ( dev-libs/libpcre ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtprintsupport:5 + ) +" +DEPEND="${RDEPEND} + app-text/docbook-xsl-stylesheets + dev-libs/libxslt + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-1.75-tinyxml2.patch + "${FILESDIR}"/${PN}-1.84-char-signedness.patch +) + +src_prepare() { + default + append-cxxflags -std=c++0x + + # Drop bundled libs, patch Makefile generator and re-run it + rm -r externals/tinyxml || die + tc-export CXX + emake dmake + ./dmake || die +} + +src_configure() { + if use pcre ; then + sed -e '/HAVE_RULES=/s:=no:=yes:' \ + -i Makefile || die + fi +} + +src_compile() { + export LIBS="$(pkg-config --libs tinyxml2)" + emake ${PN} man \ + CFGDIR="${EROOT}usr/share/${PN}/cfg" \ + DB2MAN="${EROOT}usr/share/sgml/docbook/xsl-stylesheets/manpages/docbook.xsl" + + if use qt5 ; then + pushd gui || die + eqmake5 + emake + popd || die + fi + if use htmlreport ; then + pushd htmlreport || die + distutils-r1_src_compile + popd || die + fi +} + +src_test() { + # safe final version + mv -v ${PN}{,.final} || die + mv -v lib/library.o{,.final} || die + mv -v cli/cppcheckexecutor.o{,.final} || die + #trigger recompile with CFGDIR inside ${S} + emake check CFGDIR="${S}/cfg" + # restore + mv -v ${PN}{.final,} || die + mv -v lib/library.o{.final,} || die + mv -v cli/cppcheckexecutor.o{.final,} || die +} + +src_install() { + # it's not autotools-based, so "${ED}" here, not "${D}", bug 531760 + emake install DESTDIR="${ED}" + + insinto "/usr/share/${PN}/cfg" + doins cfg/*.cfg + if use qt5 ; then + dobin gui/${PN}-gui + dodoc gui/{projectfile.txt,gui.${PN}} + fi + if use htmlreport ; then + pushd htmlreport || die + distutils-r1_src_install + popd || die + find "${D}" -name "*.egg-info" -delete + else + rm "${ED}/usr/bin/cppcheck-htmlreport" || die + fi + doman ${PN}.1 + dodoc -r triage +} diff --git a/dev-util/cppcheck/files/cppcheck-1.84-char-signedness.patch b/dev-util/cppcheck/files/cppcheck-1.84-char-signedness.patch new file mode 100644 index 000000000000..ee1b136c9a9a --- /dev/null +++ b/dev-util/cppcheck/files/cppcheck-1.84-char-signedness.patch @@ -0,0 +1,88 @@ +From 320a957bbc912325363cf86b61108db860195ec3 Mon Sep 17 00:00:00 2001 +From: Alexander Mai <amai@users.sf.net> +Date: Thu, 28 Jun 2018 22:16:18 +0200 +Subject: [PATCH] Extend TestSymbolDatabase::findFunction19 to outline + different results depending whether char is signed or unsigned on compile + time + +--- + test/testsymboldatabase.cpp | 28 ++++++++++++++++++++-------- + 1 file changed, 20 insertions(+), 8 deletions(-) + +diff --git a/test/testsymboldatabase.cpp b/test/testsymboldatabase.cpp +index 0dafd2730..28473e8e9 100644 +--- a/test/testsymboldatabase.cpp ++++ b/test/testsymboldatabase.cpp +@@ -26,6 +26,7 @@ + #include "tokenlist.h" + #include "utils.h" + ++#include <climits> + #include <cstddef> + #include <list> + #include <map> +@@ -5065,6 +5066,7 @@ private: + " long get(long x) { return x; }\n" + " long long get(long long x) { return x; }\n" + " unsigned char get(unsigned char x) { return x; }\n" ++ " signed char get(signed char x) { return x; }\n" + " unsigned short get(unsigned short x) { return x; }\n" + " unsigned int get(unsigned int x) { return x; }\n" + " unsigned long get(unsigned long x) { return x; }\n" +@@ -5079,12 +5081,13 @@ private: + " long v5 = 1; v5 = get(get(v5));\n" + " long long v6 = 1; v6 = get(get(v6));\n" + " unsigned char v7 = '1'; v7 = get(get(v7));\n" +- " unsigned short v8 = 1; v8 = get(get(v8));\n" +- " unsigned int v9 = 1; v9 = get(get(v9));\n" +- " unsigned long v10 = 1; v10 = get(get(v10));\n" +- " unsigned long long v11 = 1; v11 = get(get(v11));\n" +- " E1 v12 = e1; v12 = get(get(v12));\n" +- " E2 v13 = E2::e2; v13 = get(get(v13));\n" ++ " signed char v8 = '1'; v8 = get(get(v8));\n" ++ " unsigned short v9 = 1; v9 = get(get(v9));\n" ++ " unsigned int v10 = 1; v10 = get(get(v10));\n" ++ " unsigned long v11 = 1; v11 = get(get(v11));\n" ++ " unsigned long long v12 = 1; v12 = get(get(v12));\n" ++ " E1 v13 = e1; v13 = get(get(v13));\n" ++ " E2 v14 = E2::e2; v14 = get(get(v14));\n" + " }\n" + "};"); + +@@ -5094,7 +5097,10 @@ private: + ASSERT_EQUALS(true, db && f && f->function() && f->function()->tokenDef->linenr() == 4); + + f = Token::findsimplematch(tokenizer.tokens(), "get ( get ( v2 ) ) ;"); +- ASSERT_EQUALS(true, db && f && f->function() && f->function()->tokenDef->linenr() == 5); ++ if (std::numeric_limits<char>::is_signed) ++ ASSERT_EQUALS(true, db && f && f->function() && f->function()->tokenDef->linenr() == 5); ++ else ++ ASSERT_EQUALS(true, db && f && f->function() && f->function()->tokenDef->linenr() == 10); + + f = Token::findsimplematch(tokenizer.tokens(), "get ( get ( v3 ) ) ;"); + ASSERT_EQUALS(true, db && f && f->function() && f->function()->tokenDef->linenr() == 6); +@@ -5112,7 +5118,10 @@ private: + ASSERT_EQUALS(true, db && f && f->function() && f->function()->tokenDef->linenr() == 10); + + f = Token::findsimplematch(tokenizer.tokens(), "get ( get ( v8 ) ) ;"); +- ASSERT_EQUALS(true, db && f && f->function() && f->function()->tokenDef->linenr() == 11); ++ if (std::numeric_limits<char>::is_signed) ++ ASSERT_EQUALS(true, db && f && f->function() && f->function()->tokenDef->linenr() == 5); ++ else ++ ASSERT_EQUALS(true, db && f && f->function() && f->function()->tokenDef->linenr() == 10); + + f = Token::findsimplematch(tokenizer.tokens(), "get ( get ( v9 ) ) ;"); + ASSERT_EQUALS(true, db && f && f->function() && f->function()->tokenDef->linenr() == 12); +@@ -5128,6 +5137,9 @@ private: + + f = Token::findsimplematch(tokenizer.tokens(), "get ( get ( v13 ) ) ;"); + ASSERT_EQUALS(true, db && f && f->function() && f->function()->tokenDef->linenr() == 16); ++ ++ f = Token::findsimplematch(tokenizer.tokens(), "get ( get ( v14 ) ) ;"); ++ ASSERT_EQUALS(true, db && f && f->function() && f->function()->tokenDef->linenr() == 17); + } + + void findFunction20() { // # 8280 +-- +2.16.4 + |