commit:     a82784910be292f2a8714c982e2b5306f49b7e23
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 12 05:27:06 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Oct 12 05:27:33 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a8278491

dev-util/lcov: add 2.0

Bug: https://bugs.gentoo.org/903633
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-util/lcov/Manifest                             |  1 +
 .../lcov/{lcov-9999.ebuild => lcov-2.0.ebuild}     | 45 +++++++++++++++++++---
 dev-util/lcov/lcov-9999.ebuild                     | 45 +++++++++++++++++++---
 3 files changed, 79 insertions(+), 12 deletions(-)

diff --git a/dev-util/lcov/Manifest b/dev-util/lcov/Manifest
index bd8498838656..211e7170c298 100644
--- a/dev-util/lcov/Manifest
+++ b/dev-util/lcov/Manifest
@@ -1,2 +1,3 @@
 DIST lcov-1.15.tar.gz 190487 BLAKE2B 
2d6478caae488b84c74a3f7b489013b065b3e8fb106a6e8c5f413ffe87be7f4530aade8d2b5df5b8193949d60f49d5255b4eddb0cd5f1cab6f450ba2f97426ab
 SHA512 
dda0eadbd0ea2093f17cba039309ccda3dbcb7266d083b46bda61e02cd7f049d66de49be1e005157c3e5af910d2703ffbc9cfe7f1242bd67b9787f8508e4d052
 DIST lcov-1.16.tar.gz 196813 BLAKE2B 
2a0a2d3ff6291eb3e9cc290006a3723451ab276891f9b63f8dcce82a305caa5558b5bb7bc72fa11620130824df4f9c4312edc23eb86f98eab4a8879e1212a3d5
 SHA512 
f9fdc5348a97e4262a22d1594df7847165c93447fd5d264d194029f86bf751f18bf91badaf0172d406bca98e4bb3997f133a3ca144105f5acfabeec82f369a37
+DIST lcov-2.0.tar.gz 391695 BLAKE2B 
737d6104ebedf90ba2c3bf0c439dd7e2d18724d7267c3bd79897140785246d9ed6334eec9eabc888e361f5e22515da9756e946e1097777fb88c140398b0b078a
 SHA512 
b19b6debc93c0de0e7e5b2aaffa6c74d20a1313ea4d20d8731c6a5ea7f4cc40933316d28ef791c91fdc12ca77c9449a388405f3dc0793588e366b72f596ab49b

diff --git a/dev-util/lcov/lcov-9999.ebuild b/dev-util/lcov/lcov-2.0.ebuild
similarity index 54%
copy from dev-util/lcov/lcov-9999.ebuild
copy to dev-util/lcov/lcov-2.0.ebuild
index aaf34d6df283..18570df4f842 100644
--- a/dev-util/lcov/lcov-9999.ebuild
+++ b/dev-util/lcov/lcov-2.0.ebuild
@@ -3,6 +3,12 @@
 
 EAPI=8
 
+PYTHON_COMPAT=( python3_{10..12} )
+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
@@ -11,19 +17,41 @@ else
        KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc 
~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux ~x64-macos"
 fi
 
-inherit optfeature prefix
-
-DESCRIPTION="A graphical front-end for GCC's coverage testing tool gcov"
-HOMEPAGE="https://github.com/linux-test-project/lcov";
-
 LICENSE="GPL-2+"
 SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
 
+# Python is used for spreadsheet.py
 RDEPEND="
        dev-lang/perl
-       dev-perl/JSON
+       dev-perl/Capture-Tiny
+       dev-perl/DateTime
+       || (
+               dev-perl/JSON-XS
+               dev-perl/Cpanel-JSON-XS
+               virtual/perl-JSON-PP
+               dev-perl/JSON
+       )
        dev-perl/PerlIO-gzip
 "
+BDEPEND="
+       test? (
+               ${RDEPEND}
+               dev-perl/GD
+               $(python_gen_any_dep '
+                       dev-python/xlsxwriter[${PYTHON_USEDEP}]
+               ')
+       )
+"
+
+python_check_deps() {
+       python_has_version "dev-python/xlsxwriter[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+       use test && python-any-r1_pkg_setup
+}
 
 src_prepare() {
        default
@@ -47,5 +75,10 @@ src_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 aaf34d6df283..18570df4f842 100644
--- a/dev-util/lcov/lcov-9999.ebuild
+++ b/dev-util/lcov/lcov-9999.ebuild
@@ -3,6 +3,12 @@
 
 EAPI=8
 
+PYTHON_COMPAT=( python3_{10..12} )
+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
@@ -11,19 +17,41 @@ else
        KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc 
~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux ~x64-macos"
 fi
 
-inherit optfeature prefix
-
-DESCRIPTION="A graphical front-end for GCC's coverage testing tool gcov"
-HOMEPAGE="https://github.com/linux-test-project/lcov";
-
 LICENSE="GPL-2+"
 SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
 
+# Python is used for spreadsheet.py
 RDEPEND="
        dev-lang/perl
-       dev-perl/JSON
+       dev-perl/Capture-Tiny
+       dev-perl/DateTime
+       || (
+               dev-perl/JSON-XS
+               dev-perl/Cpanel-JSON-XS
+               virtual/perl-JSON-PP
+               dev-perl/JSON
+       )
        dev-perl/PerlIO-gzip
 "
+BDEPEND="
+       test? (
+               ${RDEPEND}
+               dev-perl/GD
+               $(python_gen_any_dep '
+                       dev-python/xlsxwriter[${PYTHON_USEDEP}]
+               ')
+       )
+"
+
+python_check_deps() {
+       python_has_version "dev-python/xlsxwriter[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+       use test && python-any-r1_pkg_setup
+}
 
 src_prepare() {
        default
@@ -47,5 +75,10 @@ src_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
 }

Reply via email to