aboutsummaryrefslogtreecommitdiffstats
path: root/community/cppcheck/APKBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'community/cppcheck/APKBUILD')
-rw-r--r--community/cppcheck/APKBUILD82
1 files changed, 50 insertions, 32 deletions
diff --git a/community/cppcheck/APKBUILD b/community/cppcheck/APKBUILD
index 206b72915fe..4a8e43f560d 100644
--- a/community/cppcheck/APKBUILD
+++ b/community/cppcheck/APKBUILD
@@ -1,65 +1,83 @@
# Contributor: August Klein <amatcoder@gmail.com>
# Maintainer: André Klitzing <aklitzing@gmail.com>
pkgname=cppcheck
-pkgver=2.8.2
-pkgrel=0
+pkgver=2.12.1
+pkgrel=1
pkgdesc="Static analysis tool for C/C++ code"
url="https://cppcheck.sourceforge.io/"
-# riscv64 broken, "Could not find qmake spec 'default'."
-arch="all !riscv64"
+arch="all"
license="GPL-3.0-or-later"
-makedepends="docbook-xsl pcre-dev python3 qt5-qttools-dev tinyxml2-dev qtchooser"
+makedepends="
+ cmake
+ docbook-xsl
+ pcre-dev
+ python3
+ qt6-qtcharts-dev
+ qt6-qttools-dev
+ samurai
+ tinyxml2-dev
+ "
subpackages="$pkgname-doc $pkgname-htmlreport::noarch $pkgname-gui"
-source="$pkgname-$pkgver.tar.gz::https://github.com/danmar/cppcheck/archive/$pkgver.tar.gz
+source="$pkgname-$pkgver.tar.gz::https://github.com/danmar/cppcheck/archive/refs/tags/$pkgver.tar.gz
set_datadir.patch
- python3-htmlreport.patch
"
build() {
- # HACK get python to mean what we want
- ln -s /usr/bin/python3 python
- export PATH="$(pwd):$PATH"
-
make DB2MAN=/usr/share/xml/docbook/xsl-stylesheets-*/manpages/docbook.xsl man
- cd gui
- lrelease-qt5 gui.pro
- qmake-qt5 HAVE_RULES=yes
- make SRCDIR=build CFGDIR=/usr/share/cppcheck/cfg HAVE_RULES=yes FILESDIR=/usr/share/cppcheck
+ cmake -B build -G Ninja \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DBUILD_GUI=ON \
+ -DBUILD_TESTS="$(want_check && echo ON || echo OFF)" \
+ -DFILESDIR=/usr/share/cppcheck \
+ -DHAVE_RULES=ON \
+ -DUSE_BUNDLED_TINYXML2=OFF \
+ -DUSE_MATCHCOMPILER=ON \
+ -DUSE_QT6=ON \
+ -DWITH_QCHART=ON
+
+ cmake --build build
}
check() {
- make SRCDIR=build check
+ # fails outside of x86 with:
+ # Expected:
+ # [test.cpp:5]: (style) Condition 'buffer.back()=='\0'' is always false\n
+ # Actual:
+ # [test.cpp:3] -> [test.cpp:5]: (style) Condition 'buffer.back()=='\0'' is always false\n
+ # TestThreadExecutor: flaky result
+
+ ctest -E "(TestCondition|TestThreadExecutor)" --test-dir build --output-on-failure
}
package() {
- make DESTDIR="$pkgdir" CFGDIR=/usr/share/cppcheck/cfg HAVE_RULES=yes FILESDIR=/usr/share/cppcheck install
- install -Dm644 cppcheck.1 "$pkgdir"/usr/share/man/man1/cppcheck.1
+ DESTDIR="$pkgdir" cmake --install build
+ install -Dm644 cppcheck.1 -t "$pkgdir"/usr/share/man/man1
+ install -Dm755 htmlreport/cppcheck-htmlreport -t "$pkgdir"/usr/bin
+
+ mkdir -p "$pkgdir"/usr/share/cppcheck/lang
+ mv "$pkgdir"/usr/bin/cppcheck*.qm "$pkgdir"/usr/share/cppcheck/lang
}
htmlreport() {
pkgdesc="Utility to generate a html report of a XML file produced by cppcheck"
- depends="$pkgname python3 py3-pygments"
+ depends="$pkgname=$pkgver-r$pkgrel python3 py3-pygments"
- cd "$builddir"
- mkdir -p "$subpkgdir"/usr/bin
- mv "$pkgdir"/usr/bin/$subpkgname "$subpkgdir"/usr/bin/
+ amove usr/bin/cppcheck-htmlreport
}
gui() {
pkgdesc="Qt gui for cppcheck"
- depends="$pkgname"
-
- cd "$builddir"
- mkdir -p "$subpkgdir"/usr/bin
- mv gui/$subpkgname "$subpkgdir"/usr/bin/
+ depends="$pkgname=$pkgver-r$pkgrel"
- mkdir -p "$subpkgdir"/usr/share/cppcheck/lang/
- mv gui/cppcheck*.qm "$subpkgdir"/usr/share/cppcheck/lang/
+ amove usr/bin/cppcheck-gui
+ amove usr/share/cppcheck/lang
+ amove usr/share/icons
+ amove usr/share/applications
}
sha512sums="
-595645cede2d1b801127747cf19c66ebc73a97c4c3f5c9af1fbf865a995f9b7ab4027a16d73cf2aa638e51569be275a26b92909d548ddb40e185978a247fb5cd cppcheck-2.8.2.tar.gz
-ebc9cf95f51afe52094f51fa82ae76a6f52b63c5f94df512b61c939328fc0d3e8c681644c61368f3d3267bf6c0a155604cc00b20e49fd196d788a357655a9d43 set_datadir.patch
-346c5b41af809dfbff00b7ce66f8abc0e038d6272cf08bbefc4bfc6eaf32940815faca376609165de85072761271521c2a7a56aa7c59e88f65f7d9514b35aaff python3-htmlreport.patch
+b9779317d55ed7582344bdf0fedad17aa8a070452c9583836590cd5617f406fa2ec7896529d06b393e4d1f18f863aa687f2cc33ca0bd2ac727e888485acf3264 cppcheck-2.12.1.tar.gz
+deead176705825da12796e42ea5f4a9dfb6dfa0c816057862b41d9f8f3121c4272d0bbf98ddea88c2e63e0504ff0cf603cd5b082e6e6cf41403f2ba0377ebc2e set_datadir.patch
"