# Template file for 'cppcheck'
pkgname=cppcheck
version=2.21.1
revision=1
build_style=cmake
configure_args="
 -DBUILD_GUI=ON
 -DDISABLE_DMAKE=ON
 -DFILESDIR=/usr/share/cppcheck
 -DHAVE_RULES=ON
 -DUSE_BUNDLED_TINYXML2=OFF
 -DUSE_MATCHCOMPILER=ON
 -DUSE_QT6=ON"
hostmakedepends="libxslt docbook-xsl python3 qt6-tools-devel"
makedepends="pcre-devel tinyxml2-devel qt6-base-devel qt6-tools-devel qt6-plugin-mysql
 qt6-plugin-odbc qt6-plugin-pgsql qt6-plugin-sqlite"
depends="python3"
short_desc="Static analysis of C/C++ code"
maintainer="Duncaen <duncaen@voidlinux.org>"
license="GPL-3.0-or-later"
homepage="http://cppcheck.sourceforge.net"
changelog="https://sourceforge.net/p/cppcheck/news/"
distfiles="https://github.com/danmar/cppcheck/archive/refs/tags/${version}.tar.gz"
checksum=ba750bd872ad7c01f951ff2d9dc8c68ea5852654545ec7a62a4c318d690c8e22

export CXXFLAGS="-DNDEBUG"

if [ -n "$XBPS_CHECK_PKGS" ]; then
	configure_args+=" -DBUILD_TESTS=ON"
fi

if [ "$XBPS_TARGET_LIBC" = "musl" ]; then
	makedepends+=" libexecinfo-devel"
	configure_args+=" -DCMAKE_CXX_STANDARD_LIBRARIES=-lexecinfo"
fi

post_install() {
	make DB2MAN=/usr/share/xsl/docbook/manpages/docbook.xsl man
	vman cppcheck.1

	vmkdir usr/share/cppcheck/cfg/lang
	mv "${DESTDIR}/usr/bin/cppcheck_"*.qm "${DESTDIR}/usr/share/cppcheck/cfg/lang/"
}

cppcheck-gui_package() {
	depends="${sourcepkg}>=${version}_${revision}"
	short_desc+=" - Qt6 GUI"
	pkg_install() {
		vmove usr/bin/cppcheck-gui
		vmove usr/share/cppcheck/cfg/lang
		vmove usr/share/applications
		vmove usr/share/icons
	}
}
