summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Pipping <sping@gentoo.org>2025-01-10 00:25:51 +0100
committerSebastian Pipping <sping@gentoo.org>2025-01-10 00:40:55 +0100
commit28fb4f5fbcb89780500d09ed5e78eb46f276f0e7 (patch)
tree7f93ad9d6ea2a1a28ff0d7d039c8ba15f09b159d /dev-util/lcov
parentapp-backup/restic: Stabilize 0.17.2 arm, #947776 (diff)
downloadgentoo-28fb4f5fbcb89780500d09ed5e78eb46f276f0e7.tar.gz
gentoo-28fb4f5fbcb89780500d09ed5e78eb46f276f0e7.tar.bz2
gentoo-28fb4f5fbcb89780500d09ed5e78eb46f276f0e7.zip
dev-util/lcov: 2.3 + sync 9999
Closes: https://bugs.gentoo.org/946161 Signed-off-by: Sebastian Pipping <sping@gentoo.org>
Diffstat (limited to 'dev-util/lcov')
-rw-r--r--dev-util/lcov/Manifest1
-rw-r--r--dev-util/lcov/lcov-2.3.ebuild106
-rw-r--r--dev-util/lcov/lcov-9999.ebuild11
3 files changed, 115 insertions, 3 deletions
diff --git a/dev-util/lcov/Manifest b/dev-util/lcov/Manifest
index 1c6be2a9078c..3584f0e85e2c 100644
--- a/dev-util/lcov/Manifest
+++ b/dev-util/lcov/Manifest
@@ -1 +1,2 @@
DIST lcov-2.0.tar.gz 391695 BLAKE2B 737d6104ebedf90ba2c3bf0c439dd7e2d18724d7267c3bd79897140785246d9ed6334eec9eabc888e361f5e22515da9756e946e1097777fb88c140398b0b078a SHA512 b19b6debc93c0de0e7e5b2aaffa6c74d20a1313ea4d20d8731c6a5ea7f4cc40933316d28ef791c91fdc12ca77c9449a388405f3dc0793588e366b72f596ab49b
+DIST lcov-2.3.tar.gz 848329 BLAKE2B dbb0f0296efb25254f46f54dd1cade6afe5c4f974a144e1f636568729f5c9098c3bb0de281c6c0c0c8254058253c508f799b2074f214316b1766ed07c61afca6 SHA512 ee6880e12393e4b142ba777f70e70f56736acb2516f1e6a8711fb7c8a1b808c603966c6c75937d5151047410483f5fa34c9558d9df3fa2a3fc5ca1c886963c2b
diff --git a/dev-util/lcov/lcov-2.3.ebuild b/dev-util/lcov/lcov-2.3.ebuild
new file mode 100644
index 000000000000..179a58d973ac
--- /dev/null
+++ b/dev-util/lcov/lcov-2.3.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+inherit optfeature prefix python-any-r1
+
+DESCRIPTION="A graphical front-end for GCC's coverage testing tool gcov"
+HOMEPAGE="https://github.com/linux-test-project/lcov"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/linux-test-project/lcov.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/linux-test-project/lcov/releases/download/v${PV}/${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# Python is used for spreadsheet.py
+RDEPEND="
+ dev-lang/perl
+ dev-perl/Capture-Tiny
+ dev-perl/DateTime
+ dev-perl/Devel-Cover
+ || (
+ dev-perl/JSON-XS
+ dev-perl/Cpanel-JSON-XS
+ virtual/perl-JSON-PP
+ dev-perl/JSON
+ )
+ dev-perl/Memory-Process
+ dev-perl/TimeDate
+ dev-perl/PerlIO-gzip
+ virtual/perl-Module-Load-Conditional
+ virtual/perl-Scalar-List-Utils
+"
+BDEPEND="
+ test? (
+ ${RDEPEND}
+ dev-perl/GD
+ $(python_gen_any_dep '
+ dev-python/coverage[${PYTHON_USEDEP}]
+ dev-python/xlsxwriter[${PYTHON_USEDEP}]
+ ')
+ )
+"
+
+python_check_deps() {
+ python_has_version "dev-python/coverage[${PYTHON_USEDEP}]" \
+ && \
+ python_has_version "dev-python/xlsxwriter[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ # Disable failing tests for now
+ # https://github.com/linux-test-project/lcov/issues/378
+ # https://github.com/linux-test-project/lcov/issues/380
+ sed \
+ -e 's, extract/,,' \
+ -e 's, mcdc$,,' \
+ -i.bak tests/lcov/Makefile || die
+ # https://github.com/linux-test-project/lcov/issues/381
+ sed \
+ -e 's, gendiffcov,,' \
+ -e 's, py2lcov,,' \
+ -i.bak tests/Makefile || die
+
+ default
+ if use prefix; then
+ hprefixify bin/*.{pl,sh}
+ fi
+}
+
+src_compile() { :; }
+
+src_test() {
+ emake -j1 check
+}
+
+src_install() {
+ emake -j1 \
+ DESTDIR="${D}" \
+ CFG_DIR="${EPREFIX}/etc" \
+ PREFIX="${EPREFIX}/usr" \
+ LCOV_PERL_PATH="${EPREFIX}/usr/bin/perl" \
+ install
+}
+
+pkg_postinst() {
+ optfeature_header "Optional outuput support:"
+ optfeature "png output support" dev-perl/GD[png]
+ optfeature "spreadsheet output support" dev-python/xlsxwriter
+ optfeature_header "Optional language support:"
+ optfeature "Python code coverage support" dev-python/coverage
+ optfeature "Perl code coverage support" dev-perl/Devel-Cover
+}
diff --git a/dev-util/lcov/lcov-9999.ebuild b/dev-util/lcov/lcov-9999.ebuild
index 68b21a99a686..015ee60eec8d 100644
--- a/dev-util/lcov/lcov-9999.ebuild
+++ b/dev-util/lcov/lcov-9999.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_COMPAT=( python3_{10..13} )
inherit optfeature prefix python-any-r1
DESCRIPTION="A graphical front-end for GCC's coverage testing tool gcov"
@@ -14,7 +14,7 @@ if [[ ${PV} == 9999 ]] ; then
inherit git-r3
else
SRC_URI="https://github.com/linux-test-project/lcov/releases/download/v${PV}/${P}.tar.gz"
- KEYWORDS="~amd64"
+ KEYWORDS="~amd64 ~x86"
fi
LICENSE="GPL-2+"
@@ -27,6 +27,7 @@ RDEPEND="
dev-lang/perl
dev-perl/Capture-Tiny
dev-perl/DateTime
+ dev-perl/Devel-Cover
|| (
dev-perl/JSON-XS
dev-perl/Cpanel-JSON-XS
@@ -36,19 +37,23 @@ RDEPEND="
dev-perl/Memory-Process
dev-perl/TimeDate
dev-perl/PerlIO-gzip
+ virtual/perl-Module-Load-Conditional
+ virtual/perl-Scalar-List-Utils
"
BDEPEND="
test? (
${RDEPEND}
dev-perl/GD
- dev-perl/JSON
$(python_gen_any_dep '
+ dev-python/coverage[${PYTHON_USEDEP}]
dev-python/xlsxwriter[${PYTHON_USEDEP}]
')
)
"
python_check_deps() {
+ python_has_version "dev-python/coverage[${PYTHON_USEDEP}]" \
+ && \
python_has_version "dev-python/xlsxwriter[${PYTHON_USEDEP}]"
}