Files
haikuports/dev-util/cppcheck/cppcheck-2.18.3.recipe
2025-09-11 16:04:39 +00:00

70 lines
1.8 KiB
Bash

SUMMARY="A static analysis tool for C/C++ code"
DESCRIPTION="Cppcheck provides unique code analysis to detect bugs and focuses on \
detecting undefined behaviour and dangerous coding constructs. The goal is \
to detect only real errors in the code (i.e. have very few false positives).
Features:
* Unique code analysis that detect various kinds of bugs in your code.
* Both command line interface and graphical user interface are available.
* Cppcheck has a strong focus on detecting undefined behaviour."
HOMEPAGE="http://cppcheck.sourceforge.io/"
COPYRIGHT="2007-2025 the Cppcheck team"
LICENSE="GNU GPL v3"
REVISION="1"
SOURCE_URI="https://github.com/danmar/cppcheck/archive/$portVersion.tar.gz"
CHECKSUM_SHA256="e37c94e190cdddc65682649b02b72939761585bddd8ada595f922e190a26a2be"
SOURCE_FILENAME="cppcheck-$portVersion.tar.gz"
PATCHES="cppcheck-$portVersion.patchset"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
cppcheck$secondaryArchSuffix = $portVersion
cmd:cppcheck$secondaryArchSuffix = $portVersion
cmd:cppcheck_htmlreport$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libpcre$secondaryArchSuffix
lib:libtinyxml2$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
# devel:libboost_system$secondaryArchSuffix >= 1.88.0
devel:libpcre$secondaryArchSuffix
devel:libtinyxml2$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:make
cmd:pkg_config$secondaryArchSuffix
cmd:python3
"
BUILD()
{
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release \
$cmakeDirArgs \
-DBUILD_SHARED_LIBS=ON \
-DBUILD_TESTS=ON \
-DHAVE_RULES=ON \
-DFILESDIR=$dataDir/cppcheck \
-DUSE_BUNDLED_TINYXML2=OFF
make -C build $jobArgs
}
INSTALL()
{
make -C build install
}
TEST()
{
ctest --test-dir build --output-on-failure
}