summaryrefslogtreecommitdiff
path: root/dev-util/cppcheck
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /dev-util/cppcheck
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.xz
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'dev-util/cppcheck')
-rw-r--r--dev-util/cppcheck/Manifest4
-rw-r--r--dev-util/cppcheck/cppcheck-1.63-r1.ebuild62
-rw-r--r--dev-util/cppcheck/cppcheck-1.67.ebuild101
-rw-r--r--dev-util/cppcheck/cppcheck-1.68.ebuild102
-rw-r--r--dev-util/cppcheck/cppcheck-1.69-r1.ebuild106
-rw-r--r--dev-util/cppcheck/cppcheck-1.69.ebuild102
-rw-r--r--dev-util/cppcheck/files/cppcheck-1.65-c++0x.patch9
-rw-r--r--dev-util/cppcheck/files/cppcheck-1.66-tinyxml2.patch67
-rw-r--r--dev-util/cppcheck/files/cppcheck-1.69-c++0x.patch12
-rw-r--r--dev-util/cppcheck/files/cppcheck-1.69-tinyxml2.patch67
-rw-r--r--dev-util/cppcheck/metadata.xml14
11 files changed, 646 insertions, 0 deletions
diff --git a/dev-util/cppcheck/Manifest b/dev-util/cppcheck/Manifest
new file mode 100644
index 00000000000..02f695ffec9
--- /dev/null
+++ b/dev-util/cppcheck/Manifest
@@ -0,0 +1,4 @@
+DIST cppcheck-1.63.tar.bz2 1157231 SHA256 924bfc4593215b7bab6b049dbbce9a6f343dbf15f4bdd869ef1d378f09f92064 SHA512 4c2f6080ce72ffa24f929a2b74c656538d9f555fb14b3e6f3a2632eca8973a8b711831ddd698e13059643446b0e90619f71e13b1d06b6fefc4b4562622939508 WHIRLPOOL af095e4f0b84ded78f9fa10baedc5266a66ac52ffa6813eeb38697d1c55e02b76670eb09228c4ce356f2d3402f4247a66fe2ccd666e5637326e0913a75c2732e
+DIST cppcheck-1.67.tar.bz2 1084926 SHA256 6214c0cf0c11c83ecfae35f8cc8db4fa47389a77360919653d635612cefe2ab9 SHA512 5d1e3e12c818f850b00a8e3b3d79f24fceb0fa806d9100aaa6aed1bbbc86237af2e7dd4567fdfd227281f62d4b5450ac6cbbc6a97e04b380c242c59ddd3609ef WHIRLPOOL 1fc82744a78b76d9bb682fa6f6d8a619164c5cb250eb199ac545d4c147522ab5c4961d635cdea291ccf65f7972a162d394c4e500542b27b8679e262093e86884
+DIST cppcheck-1.68.tar.bz2 1008321 SHA256 add6e5e12b05ca02b356cd0ec7420ae0dcafddeaef183b4dfbdef59c617349b1 SHA512 72c78a17281ad3d771459895ad776c5dceda605edef13886e870cff456db5dc5cbff39d56bdf39788283bf673dd28a13b1602a330b8e33a3042b07cf43f0f011 WHIRLPOOL 16d8d4deeef9ec9fb4415c5941935122ebf3a44159ac8251ebfbfca2aeeb270bccaed5dcf63f6018b3fcf79cad6779af76d0e1cba47e853394794be4942cd622
+DIST cppcheck-1.69.tar.bz2 1052984 SHA256 4bd5c8031258ef29764a4c92666384238a625beecbb2aceeb7065ec388c7532e SHA512 30f239bcdf4cb1fcc254271bf55f3fdc1ec22e7d26f0704218390cfce1d4cf3ef41f385f4e463ede1a1a401e87d81b1d66a462c7b07e045d46aebd2354384a01 WHIRLPOOL e341c8b8f133fd19188700d53d6f02ab5deffc10fdfedbc9474931596850c10027a91e445998a3884f8f30908581e428fe4c629397b14660a0fe7b852e48b3a4
diff --git a/dev-util/cppcheck/cppcheck-1.63-r1.ebuild b/dev-util/cppcheck/cppcheck-1.63-r1.ebuild
new file mode 100644
index 00000000000..3c1d42f4d8a
--- /dev/null
+++ b/dev-util/cppcheck/cppcheck-1.63-r1.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_3} )
+
+inherit distutils-r1 eutils qt4-r2 toolchain-funcs
+
+DESCRIPTION="static analyzer of C/C++ code"
+HOMEPAGE="http://cppcheck.sourceforge.net"
+SRC_URI="mirror://sourceforge/cppcheck/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="htmlreport qt4"
+
+DEPEND="htmlreport? ( ${PYTHON_DEPS} )
+ qt4? ( dev-qt/qtgui:4 )"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ tc-export CXX
+ if use qt4 ; then
+ pushd gui
+ qt4-r2_src_configure
+ popd
+ fi
+}
+
+src_compile() {
+ emake CFGDIR="/usr/share/${PN}/cfg"
+ if use qt4 ; then
+ pushd gui
+ qt4-r2_src_compile
+ popd
+ fi
+ if use htmlreport ; then
+ pushd htmlreport
+ distutils-r1_src_compile
+ popd
+ fi
+}
+
+src_install() {
+ emake install DESTDIR="${D}"
+ dodoc readme.txt
+ insinto "/usr/share/${PN}/cfg"
+ doins cfg/*.cfg
+ if use qt4 ; then
+ dobin gui/${PN}-gui
+ dodoc readme_gui.txt gui/{projectfile.txt,gui.cppcheck}
+ fi
+ if use htmlreport ; then
+ pushd htmlreport
+ distutils-r1_src_install
+ popd
+ find "${D}" -name "*.egg-info" -delete
+ fi
+}
diff --git a/dev-util/cppcheck/cppcheck-1.67.ebuild b/dev-util/cppcheck/cppcheck-1.67.ebuild
new file mode 100644
index 00000000000..d17bb4b21ff
--- /dev/null
+++ b/dev-util/cppcheck/cppcheck-1.67.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+
+inherit distutils-r1 eutils flag-o-matic qt4-r2 toolchain-funcs
+
+DESCRIPTION="static analyzer of C/C++ code"
+HOMEPAGE="http://cppcheck.sourceforge.net"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="htmlreport pcre qt4"
+
+RDEPEND="htmlreport? ( ${PYTHON_DEPS} )
+ >=dev-libs/tinyxml2-2
+ qt4? ( dev-qt/qtgui:4 )
+ pcre? ( dev-libs/libpcre )"
+DEPEND="${RDEPEND}
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
+ virtual/pkgconfig"
+
+src_prepare() {
+ # Drop bundled libs, patch Makefile generator and re-run it
+ rm -r externals || die
+ epatch "${FILESDIR}"/${PN}-1.66-tinyxml2.patch
+ tc-export CXX
+ emake dmake
+ ./dmake || die
+
+ epatch "${FILESDIR}"/${PN}-1.65-c++0x.patch
+}
+
+src_configure() {
+ if use pcre ; then
+ sed -e '/HAVE_RULES=/s:=no:=yes:' \
+ -i Makefile
+ fi
+ if use qt4 ; then
+ pushd gui
+ qt4-r2_src_configure
+ popd
+ 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 qt4 ; then
+ pushd gui
+ qt4-r2_src_compile
+ popd
+ fi
+ if use htmlreport ; then
+ pushd htmlreport
+ distutils-r1_src_compile
+ popd
+ fi
+}
+
+src_test() {
+ # safe final version
+ mv -v ${PN}{,.final}
+ mv -v lib/library.o{,.final}
+ mv -v cli/cppcheckexecutor.o{,.final}
+ #trigger recompile with CFGDIR inside ${S}
+ emake check CFGDIR="${S}/cfg"
+ # restore
+ mv -v ${PN}{.final,}
+ mv -v lib/library.o{.final,}
+ mv -v cli/cppcheckexecutor.o{.final,}
+}
+
+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 qt4 ; then
+ dobin gui/${PN}-gui
+ dodoc readme_gui.txt gui/{projectfile.txt,gui.${PN}}
+ fi
+ if use htmlreport ; then
+ pushd htmlreport
+ distutils-r1_src_install
+ popd
+ find "${D}" -name "*.egg-info" -delete
+ fi
+ doman ${PN}.1
+ dodoc readme.txt
+}
diff --git a/dev-util/cppcheck/cppcheck-1.68.ebuild b/dev-util/cppcheck/cppcheck-1.68.ebuild
new file mode 100644
index 00000000000..f1d83a527fa
--- /dev/null
+++ b/dev-util/cppcheck/cppcheck-1.68.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+
+inherit distutils-r1 eutils flag-o-matic qt4-r2 toolchain-funcs
+
+DESCRIPTION="static analyzer of C/C++ code"
+HOMEPAGE="http://cppcheck.sourceforge.net"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="htmlreport pcre qt4"
+
+RDEPEND="htmlreport? ( ${PYTHON_DEPS} )
+ >=dev-libs/tinyxml2-2
+ qt4? ( dev-qt/qtgui:4 )
+ pcre? ( dev-libs/libpcre )"
+DEPEND="${RDEPEND}
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
+ virtual/pkgconfig"
+
+src_prepare() {
+ # Drop bundled libs, patch Makefile generator and re-run it
+ rm -r externals || die
+ epatch "${FILESDIR}"/${PN}-1.66-tinyxml2.patch
+ tc-export CXX
+ emake dmake
+ ./dmake || die
+
+ epatch "${FILESDIR}"/${PN}-1.65-c++0x.patch
+}
+
+src_configure() {
+ if use pcre ; then
+ sed -e '/HAVE_RULES=/s:=no:=yes:' \
+ -i Makefile
+ fi
+ if use qt4 ; then
+ pushd gui
+ qt4-r2_src_configure
+ popd
+ 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 qt4 ; then
+ pushd gui
+ qt4-r2_src_compile
+ popd
+ fi
+ if use htmlreport ; then
+ pushd htmlreport
+ distutils-r1_src_compile
+ popd
+ fi
+}
+
+src_test() {
+ # safe final version
+ mv -v ${PN}{,.final}
+ mv -v lib/library.o{,.final}
+ mv -v cli/cppcheckexecutor.o{,.final}
+ #trigger recompile with CFGDIR inside ${S}
+ emake check CFGDIR="${S}/cfg"
+ # restore
+ mv -v ${PN}{.final,}
+ mv -v lib/library.o{.final,}
+ mv -v cli/cppcheckexecutor.o{.final,}
+}
+
+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 qt4 ; then
+ dobin gui/${PN}-gui
+ dodoc readme_gui.txt gui/{projectfile.txt,gui.${PN}}
+ fi
+ if use htmlreport ; then
+ pushd htmlreport
+ distutils-r1_src_install
+ popd
+ find "${D}" -name "*.egg-info" -delete
+ fi
+ doman ${PN}.1
+ dodoc readme.txt
+ dodoc -r triage
+}
diff --git a/dev-util/cppcheck/cppcheck-1.69-r1.ebuild b/dev-util/cppcheck/cppcheck-1.69-r1.ebuild
new file mode 100644
index 00000000000..6c4e7d61a9e
--- /dev/null
+++ b/dev-util/cppcheck/cppcheck-1.69-r1.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+
+inherit distutils-r1 eutils flag-o-matic qt4-r2 toolchain-funcs
+
+DESCRIPTION="static analyzer of C/C++ code"
+HOMEPAGE="http://cppcheck.sourceforge.net"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ~arm x86"
+IUSE="htmlreport pcre qt4"
+
+RDEPEND="htmlreport? ( dev-python/pygments[${PYTHON_USEDEP}] )
+ >=dev-libs/tinyxml2-2
+ qt4? ( dev-qt/qtgui:4 )
+ pcre? ( dev-libs/libpcre )"
+DEPEND="${RDEPEND}
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
+ virtual/pkgconfig"
+
+src_prepare() {
+ # Drop bundled libs, patch Makefile generator and re-run it
+ rm -r externals || die
+ epatch "${FILESDIR}"/${PN}-1.69-tinyxml2.patch
+ tc-export CXX
+ emake dmake
+ ./dmake || die
+
+ epatch "${FILESDIR}"/${PN}-1.69-c++0x.patch
+
+ epatch_user
+}
+
+src_configure() {
+ if use pcre ; then
+ sed -e '/HAVE_RULES=/s:=no:=yes:' \
+ -i Makefile
+ fi
+ if use qt4 ; then
+ pushd gui
+ qt4-r2_src_configure
+ popd
+ 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 qt4 ; then
+ pushd gui
+ qt4-r2_src_compile
+ popd
+ fi
+ if use htmlreport ; then
+ pushd htmlreport
+ distutils-r1_src_compile
+ popd
+ fi
+}
+
+src_test() {
+ # safe final version
+ mv -v ${PN}{,.final}
+ mv -v lib/library.o{,.final}
+ mv -v cli/cppcheckexecutor.o{,.final}
+ #trigger recompile with CFGDIR inside ${S}
+ emake check CFGDIR="${S}/cfg"
+ # restore
+ mv -v ${PN}{.final,}
+ mv -v lib/library.o{.final,}
+ mv -v cli/cppcheckexecutor.o{.final,}
+}
+
+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 qt4 ; then
+ dobin gui/${PN}-gui
+ dodoc readme_gui.txt gui/{projectfile.txt,gui.${PN}}
+ fi
+ if use htmlreport ; then
+ pushd htmlreport
+ distutils-r1_src_install
+ popd
+ find "${D}" -name "*.egg-info" -delete
+ else
+ rm "${ED}/usr/bin/cppcheck-htmlreport" || die
+ fi
+ doman ${PN}.1
+ dodoc readme.txt
+ dodoc -r triage
+}
diff --git a/dev-util/cppcheck/cppcheck-1.69.ebuild b/dev-util/cppcheck/cppcheck-1.69.ebuild
new file mode 100644
index 00000000000..13937467ae7
--- /dev/null
+++ b/dev-util/cppcheck/cppcheck-1.69.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+
+inherit distutils-r1 eutils flag-o-matic qt4-r2 toolchain-funcs
+
+DESCRIPTION="static analyzer of C/C++ code"
+HOMEPAGE="http://cppcheck.sourceforge.net"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="htmlreport pcre qt4"
+
+RDEPEND="htmlreport? ( ${PYTHON_DEPS} )
+ >=dev-libs/tinyxml2-2
+ qt4? ( dev-qt/qtgui:4 )
+ pcre? ( dev-libs/libpcre )"
+DEPEND="${RDEPEND}
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
+ virtual/pkgconfig"
+
+src_prepare() {
+ # Drop bundled libs, patch Makefile generator and re-run it
+ rm -r externals || die
+ epatch "${FILESDIR}"/${PN}-1.69-tinyxml2.patch
+ tc-export CXX
+ emake dmake
+ ./dmake || die
+
+ epatch "${FILESDIR}"/${PN}-1.69-c++0x.patch
+}
+
+src_configure() {
+ if use pcre ; then
+ sed -e '/HAVE_RULES=/s:=no:=yes:' \
+ -i Makefile
+ fi
+ if use qt4 ; then
+ pushd gui
+ qt4-r2_src_configure
+ popd
+ 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 qt4 ; then
+ pushd gui
+ qt4-r2_src_compile
+ popd
+ fi
+ if use htmlreport ; then
+ pushd htmlreport
+ distutils-r1_src_compile
+ popd
+ fi
+}
+
+src_test() {
+ # safe final version
+ mv -v ${PN}{,.final}
+ mv -v lib/library.o{,.final}
+ mv -v cli/cppcheckexecutor.o{,.final}
+ #trigger recompile with CFGDIR inside ${S}
+ emake check CFGDIR="${S}/cfg"
+ # restore
+ mv -v ${PN}{.final,}
+ mv -v lib/library.o{.final,}
+ mv -v cli/cppcheckexecutor.o{.final,}
+}
+
+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 qt4 ; then
+ dobin gui/${PN}-gui
+ dodoc readme_gui.txt gui/{projectfile.txt,gui.${PN}}
+ fi
+ if use htmlreport ; then
+ pushd htmlreport
+ distutils-r1_src_install
+ popd
+ find "${D}" -name "*.egg-info" -delete
+ fi
+ doman ${PN}.1
+ dodoc readme.txt
+ dodoc -r triage
+}
diff --git a/dev-util/cppcheck/files/cppcheck-1.65-c++0x.patch b/dev-util/cppcheck/files/cppcheck-1.65-c++0x.patch
new file mode 100644
index 00000000000..67590d0fee9
--- /dev/null
+++ b/dev-util/cppcheck/files/cppcheck-1.65-c++0x.patch
@@ -0,0 +1,9 @@
+--- cppcheck-1.65/gui/gui.pro
++++ cppcheck-1.65/gui/gui.pro
+@@ -150,6 +150,4 @@
+ LIBS += -lshlwapi
+ }
+
+-contains(QMAKE_CC, gcc) {
+ QMAKE_CXXFLAGS += -std=c++0x
+-}
diff --git a/dev-util/cppcheck/files/cppcheck-1.66-tinyxml2.patch b/dev-util/cppcheck/files/cppcheck-1.66-tinyxml2.patch
new file mode 100644
index 00000000000..1417ea321d7
--- /dev/null
+++ b/dev-util/cppcheck/files/cppcheck-1.66-tinyxml2.patch
@@ -0,0 +1,67 @@
+--- cppcheck-1.65/tools/dmake.cpp
++++ cppcheck-1.65/tools/dmake.cpp
+@@ -170,7 +170,6 @@
+ }
+
+ std::vector<std::string> externalfiles;
+- getCppFiles(externalfiles, "externals/");
+
+
+ // QMAKE - lib/lib.pri
+@@ -179,10 +178,6 @@
+ if (fout1.is_open()) {
+ fout1 << "# no manual edits - this file is autogenerated by dmake\n\n";
+ fout1 << "include($$PWD/pcrerules.pri)\n";
+- fout1 << "BASEPATH = ../externals/tinyxml/\n";
+- fout1 << "include($$PWD/../externals/tinyxml/tinyxml.pri)\n";
+- fout1 << "BASEPATH = ../lib/\n";
+- fout1 << "INCLUDEPATH += ../externals/tinyxml\n";
+ fout1 << "HEADERS += $${BASEPATH}check.h \\\n";
+ for (unsigned int i = 0; i < libfiles.size(); ++i) {
+ std::string fname(libfiles[i].substr(4));
+@@ -208,7 +203,6 @@
+ std::ofstream fout1("test/testfiles.pri");
+ if (fout1.is_open()) {
+ fout1 << "# no manual edits - this file is autogenerated by dmake\n\n";
+- fout1 << "INCLUDEPATH += ../externals/tinyxml\n";
+ fout1 << "\n\nSOURCES += ";
+ for (unsigned int i = 0; i < testfiles.size(); ++i) {
+ const std::string filename(testfiles[i].substr(5));
+@@ -354,9 +348,9 @@
+
+ makeConditionalVariable(fout, "CXX", "g++");
+ makeConditionalVariable(fout, "PREFIX", "/usr");
+- makeConditionalVariable(fout, "INCLUDE_FOR_LIB", "-Ilib -Iexternals/tinyxml");
+- makeConditionalVariable(fout, "INCLUDE_FOR_CLI", "-Ilib -Iexternals/tinyxml");
+- makeConditionalVariable(fout, "INCLUDE_FOR_TEST", "-Ilib -Icli -Iexternals/tinyxml");
++ makeConditionalVariable(fout, "INCLUDE_FOR_LIB", "-Ilib");
++ makeConditionalVariable(fout, "INCLUDE_FOR_CLI", "-Ilib");
++ makeConditionalVariable(fout, "INCLUDE_FOR_TEST", "-Ilib -Icli");
+
+ fout << "BIN=$(DESTDIR)$(PREFIX)/bin\n\n";
+ fout << "# For 'make man': sudo apt-get install xsltproc docbook-xsl docbook-xml on Linux\n";
+@@ -401,10 +401,10 @@
+ fout << "dmake:\ttools/dmake.o cli/filelister.o lib/path.o\n";
+ fout << "\t$(CXX) $(CXXFLAGS) -std=c++0x -o dmake tools/dmake.o cli/filelister.o lib/path.o -Ilib $(LDFLAGS)\n";
+ fout << "\t./dmake\n\n";
+- fout << "reduce:\ttools/reduce.o externals/tinyxml/tinyxml2.o $(LIBOBJ)\n";
+- fout << "\t$(CXX) $(CPPFLAGS) $(CXXFLAGS) -std=c++0x -g -o reduce tools/reduce.o -Ilib -Iexternals/tinyxml $(LIBOBJ) $(LIBS) externals/tinyxml/tinyxml2.o $(LDFLAGS) $(RDYNAMIC)\n\n";
++ fout << "reduce:\ttools/reduce.o $(LIBOBJ)\n";
++ fout << "\t$(CXX) $(CPPFLAGS) $(CXXFLAGS) -std=c++0x -g -o reduce tools/reduce.o -Ilib $(LIBOBJ) $(LIBS) $(LDFLAGS) $(RDYNAMIC)\n\n";
+ fout << "clean:\n";
+- fout << "\trm -f build/*.o lib/*.o cli/*.o test/*.o tools/*.o externals/tinyxml/*.o testrunner reduce dmake cppcheck cppcheck.1\n\n";
++ fout << "\trm -f build/*.o lib/*.o cli/*.o test/*.o tools/*.o testrunner reduce dmake cppcheck cppcheck.1\n\n";
+ fout << "man:\tman/cppcheck.1\n\n";
+ fout << "man/cppcheck.1:\t$(MAN_SOURCE)\n\n";
+ fout << "\t$(XP) $(DB2MAN) $(MAN_SOURCE)\n\n";
+--- cppcheck-1.65/gui/gui.pro
++++ cppcheck-1.65/gui/gui.pro
+@@ -15,7 +15,7 @@
+ LIBS += -l../bin/cppcheck-core
+ DEFINES += CPPCHECKLIB_IMPORT
+ }
+-LIBS += -L../externals
++LIBS += `pkg-config --libs tinyxml2`
+
+ DESTDIR = .
+ RCC_DIR = temp
diff --git a/dev-util/cppcheck/files/cppcheck-1.69-c++0x.patch b/dev-util/cppcheck/files/cppcheck-1.69-c++0x.patch
new file mode 100644
index 00000000000..8e9635c2835
--- /dev/null
+++ b/dev-util/cppcheck/files/cppcheck-1.69-c++0x.patch
@@ -0,0 +1,12 @@
+--- cppcheck-1.69/gui/gui.pro
++++ cppcheck-1.69/gui/gui.pro
+@@ -146,9 +146,7 @@
+ LIBS += -lshlwapi
+ }
+
+-contains(QMAKE_CC, gcc) {
+ QMAKE_CXXFLAGS += -std=c++0x
+-}
+
+ macx {
+ contains(QMAKE_CXX, clang++) {
diff --git a/dev-util/cppcheck/files/cppcheck-1.69-tinyxml2.patch b/dev-util/cppcheck/files/cppcheck-1.69-tinyxml2.patch
new file mode 100644
index 00000000000..0b0c9f84ba3
--- /dev/null
+++ b/dev-util/cppcheck/files/cppcheck-1.69-tinyxml2.patch
@@ -0,0 +1,67 @@
+--- cppcheck-1.69/gui/gui.pro
++++ cppcheck-1.69/gui/gui.pro
+@@ -15,7 +15,7 @@ contains(LINKCORE, [yY][eE][sS]) {
+ LIBS += -l../bin/cppcheck-core
+ DEFINES += CPPCHECKLIB_IMPORT
+ }
+-LIBS += -L$$PWD/../externals
++LIBS += `pkg-config --libs tinyxml2`
+
+ DESTDIR = .
+ RCC_DIR = temp
+--- cppcheck-1.69/tools/dmake.cpp
++++ cppcheck-1.69/tools/dmake.cpp
+@@ -171,7 +171,6 @@ int main(int argc, char **argv)
+ }
+
+ std::vector<std::string> externalfiles;
+- getCppFiles(externalfiles, "externals/", true);
+
+
+ // QMAKE - lib/lib.pri
+@@ -180,10 +179,6 @@ int main(int argc, char **argv)
+ if (fout1.is_open()) {
+ fout1 << "# no manual edits - this file is autogenerated by dmake\n\n";
+ fout1 << "include($$PWD/pcrerules.pri)\n";
+- fout1 << "BASEPATH = ../externals/tinyxml/\n";
+- fout1 << "include($$PWD/../externals/tinyxml/tinyxml.pri)\n";
+- fout1 << "BASEPATH = ../lib/\n";
+- fout1 << "INCLUDEPATH += ../externals/tinyxml\n";
+ fout1 << "HEADERS += $${BASEPATH}check.h \\\n";
+ for (unsigned int i = 0; i < libfiles.size(); ++i) {
+ std::string fname(libfiles[i].substr(4));
+@@ -209,7 +204,6 @@ int main(int argc, char **argv)
+ std::ofstream fout1("test/testfiles.pri");
+ if (fout1.is_open()) {
+ fout1 << "# no manual edits - this file is autogenerated by dmake\n\n";
+- fout1 << "INCLUDEPATH += ../externals/tinyxml\n";
+ fout1 << "\n\nSOURCES += ";
+ for (unsigned int i = 0; i < testfiles.size(); ++i) {
+ const std::string filename(testfiles[i].substr(5));
+@@ -357,9 +351,9 @@ int main(int argc, char **argv)
+
+ makeConditionalVariable(fout, "CXX", "g++");
+ makeConditionalVariable(fout, "PREFIX", "/usr");
+- makeConditionalVariable(fout, "INCLUDE_FOR_LIB", "-Ilib -Iexternals/tinyxml");
+- makeConditionalVariable(fout, "INCLUDE_FOR_CLI", "-Ilib -Iexternals/tinyxml");
+- makeConditionalVariable(fout, "INCLUDE_FOR_TEST", "-Ilib -Icli -Iexternals/tinyxml");
++ makeConditionalVariable(fout, "INCLUDE_FOR_LIB", "-Ilib");
++ makeConditionalVariable(fout, "INCLUDE_FOR_CLI", "-Ilib");
++ makeConditionalVariable(fout, "INCLUDE_FOR_TEST", "-Ilib -Icli");
+
+ fout << "BIN=$(DESTDIR)$(PREFIX)/bin\n\n";
+ fout << "# For 'make man': sudo apt-get install xsltproc docbook-xsl docbook-xml on Linux\n";
+@@ -399,10 +393,10 @@ int main(int argc, char **argv)
+ fout << "dmake:\ttools/dmake.o cli/filelister.o lib/path.o\n";
+ fout << "\t$(CXX) $(CXXFLAGS) -std=c++0x -o dmake tools/dmake.o cli/filelister.o lib/path.o -Ilib $(LDFLAGS)\n";
+ fout << "\t./dmake\n\n";
+- fout << "reduce:\ttools/reduce.o externals/tinyxml/tinyxml2.o $(LIBOBJ)\n";
+- fout << "\t$(CXX) $(CPPFLAGS) $(CXXFLAGS) -std=c++0x -g -o reduce tools/reduce.o -Ilib -Iexternals/tinyxml $(LIBOBJ) $(LIBS) externals/tinyxml/tinyxml2.o $(LDFLAGS) $(RDYNAMIC)\n\n";
++ fout << "reduce:\ttools/reduce.o $(LIBOBJ)\n";
++ fout << "\t$(CXX) $(CPPFLAGS) $(CXXFLAGS) -std=c++0x -g -o reduce tools/reduce.o -Ilib $(LIBOBJ) $(LIBS) $(LDFLAGS) $(RDYNAMIC)\n\n";
+ fout << "clean:\n";
+- fout << "\trm -f build/*.o lib/*.o cli/*.o test/*.o tools/*.o externals/tinyxml/*.o testrunner reduce dmake cppcheck cppcheck.1\n\n";
++ fout << "\trm -f build/*.o lib/*.o cli/*.o test/*.o tools/*.o testrunner reduce dmake cppcheck cppcheck.1\n\n";
+ fout << "man:\tman/cppcheck.1\n\n";
+ fout << "man/cppcheck.1:\t$(MAN_SOURCE)\n\n";
+ fout << "\t$(XP) $(DB2MAN) $(MAN_SOURCE)\n\n";
diff --git a/dev-util/cppcheck/metadata.xml b/dev-util/cppcheck/metadata.xml
new file mode 100644
index 00000000000..2da3ce1df0a
--- /dev/null
+++ b/dev-util/cppcheck/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>xmw@gentoo.org</email>
+ <name>Michael Weber</name>
+ </maintainer>
+ <use>
+ <flag name="htmlreport">install cppcheck-htmlreport</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">cppcheck</remote-id>
+ </upstream>
+</pkgmetadata>