# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4

PortSystem          1.0
PortGroup           python 1.0

name                py-coverage
version             7.11.0
revision            0

categories-append   devel
maintainers         {petr @petrrr} {reneeotten @reneeotten} openmaintainer
license             Apache-2

description         Code coverage measurement for Python
long_description    Coverage measures code coverage, typically during test \
                    execution. It uses the code analysis tools and tracing \
                    hooks provided in the Python standard library to \
                    determine which lines are executable, and which have \
                    been executed.

homepage            https://github.com/nedbat/coveragepy

checksums           rmd160  027d0e60c08dfe624930b865be2368e7cbc68eec \
                    sha256  167bd504ac1ca2af7ff3b81d245dfea0292c5032ebef9d66cc08a7d28c1b8050 \
                    size    811905

python.versions     39 310 311 312 313 314

if {${name} ne ${subport}} {
    if {${python.version} == 39} {
        version     7.10.7
        revision    0
        checksums   rmd160  e83cffb261b2dc35fa0ce03d02d04de939e6843d \
                    sha256  f4ab143ab113be368a3e9b795f9cd7906c5ef407d6173fe9675a902e1fffc239 \
                    size    827704
    }

    patchfiles      patch-setup.py.diff

    post-patch {
        reinplace "s|coverage run|coverage-${python.branch} run|g" {*}[glob ${worksrcpath}/tests/*.py]
        reinplace "s|\"coverage\"|\"coverage-${python.branch}\"|g" ${worksrcpath}/tests/coveragetest.py
    }

    post-destroot {
        set docdir ${prefix}/share/doc/${subport}
        xinstall -d ${destroot}${docdir}
        xinstall -m 0644 -W ${worksrcpath} README.rst NOTICE.txt \
            LICENSE.txt CONTRIBUTORS.txt CHANGES.rst \
            ${destroot}${docdir}
    }
}
