# -*- 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

python.add_dependencies no
name                py-htmldocs
python.versions     27 37 310 311 312 313
version             1.0
revision            0
license             PSF

if {$subport != $name} {
    if {${python.version} == 27} { version 2.7.18 }
    if {${python.version} == 37} { version 3.7.17 }
    if {${python.version} == 310} { version 3.10.18 }
    if {${python.version} == 311} { version 3.11.13 }
    if {${python.version} == 312} { version 3.12.11 }
    if {${python.version} == 313} { version 3.13.4 }
}

categories          lang
platforms           any
maintainers         {eborisch @eborisch} \
                    openmaintainer
supported_archs     noarch
installs_libs       no

use_bzip2           yes
use_configure       no

description         Local HTML documentation for Python.
long_description    {*}${description}
homepage            https://www.python.org/
master_sites        https://www.python.org/ftp/python/doc/
archive_sites

# No need to use BW from mirrors to download these; truly just an extract & mv
archive_sites

if {${name} != ${subport}} {
    description         HTML documentation for Python ${version}
    long_description    Access Python ${version} HTML docs via \
        file://${prefix}/share/doc/python${python.version}-doc/index.html

    master_sites        https://www.python.org/ftp/python/doc/${version}
    distname            python-${version}-docs-html
    set extractname     ${distname}
    notes               ${long_description}

    if {${python.version} == 27} {
      checksums \
        rmd160  10120f30975fc9a4ee4f998fcffe764b5090172f \
        sha256  20445e9a571cacdd350f702f0980e4dc559b6ff81f1d69affe9b0a862fef2f0e \
        size    4634932
    }

    if {${python.version} == 37} {
        checksums   rmd160  bd9a72a9a39d7310b7893f96fab6a46fd71ea398 \
                    sha256  c7a14f1fd990476e9b06d3163ebad26c6c5592c8a4cc6d1e98a25048bc95ec08 \
                    size    6296352
    }

    if {${python.version} == 310} {
        checksums   rmd160  ae8b46222afd602cb4ae3008e48369252af8fcd5 \
                    sha256  acf6a9cc3afd5a748b2142b9e1e86e974dd71ae0abdf47e79f7b809b8d30c823 \
                    size    7462926
    }

    if {${python.version} == 311} {
        checksums   rmd160  e337cd69e52c26aae7badb39b55cf2b602703fa0 \
                    sha256  954bfe769459645fb45802c920bcf59f8881c74c4f94d30922d44edd7a08c542 \
                    size    8003127
    }

    if {${python.version} == 312} {
        checksums   rmd160  7b578fb80fdab49d4eeb6ed8dfe20b934e6ee27f \
                    sha256  20785e40d6a3d161c125aa83332290805b8910b68571c93571188a5164339774 \
                    size    8438004
    }

    if {${python.version} == 313} {
        checksums   rmd160  23511ce6fa437b25086c2dcb5de91393f313f5e1 \
                    sha256  21cf715ad0ad5e414f911e2359bdb933cc07880b4b73a7f54789286fa629833f \
                    size    10370149
    }

    dist_subdir         ${name}/${revision}

    build {}

    destroot {
        set  destdocdir \
            ${destroot}${prefix}/share/doc/python${python.version}-doc
        file mkdir ${destroot}${prefix}/share/doc
        file copy ${workpath}/${extractname} ${destdocdir}
        system "chmod -R a+rX ${destdocdir}"
    }

    livecheck.url       https://www.python.org/ftp/python/doc/
    livecheck.type      regex
    livecheck.regex     ([string map {. \\.} ${python.branch}.\[0-9ap\]+])
} else {
    livecheck.type      none
}
