# -*- 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
PortGroup           select 1.0

name                py-docutils
version             0.18.1
categories-append   textproc
license             public-domain BSD PSF-2.1.1
maintainers         {jmr @jmroot} alexnicksay.com:alex openmaintainer
description         A set of tools for processing plaintext documentation
long_description    Docutils is a set of tools for processing plaintext \
                    documentation into useful formats, such as HTML, XML, \
                    and LaTeX. Includes reStructuredText, the easy to read, \
                    easy to use, what-you-see-is-what-you-get plaintext \
                    markup language.
supported_archs     noarch

homepage            http://docutils.sourceforge.net/

checksums           md5    ca5827e2432fd58f4c8d74a6591135de \
                    rmd160 a58063172b68280b6c13b7f4829bfceb9fd0e777 \
                    sha256 679987caf361a7539d76e584cbeddc311e3aee937877c87346f31debc63e9d06

python.versions     27 35 36 37 38 39 310

if {$subport ne $name} {
    depends_build       port:py${python.version}-setuptools
    depends_run         port:docutils_select \
                        port:py${python.version}-roman

    post-extract {
        copy -force ${filespath}/docutils ${worksrcpath}/${subport}
    }

    post-patch {
        reinplace \
            "s,@PYTHON_BRANCH@,${python.branch},g" \
            ${worksrcpath}/${subport}
    }

    # we want e.g. *-2.7.py not *.py-2.7
    python.link_binaries no
    post-destroot {
        foreach f {rst2html rst2latex rst2man rst2odt rst2odt_prepstyles rst2pseudoxml rst2s5 rst2xml rstpep2html rst2xetex} {
            ln -s ${python.prefix}/bin/${f}.py ${destroot}${prefix}/bin/${f}-${python.branch}.py
        }
    }

    select.group    docutils
    select.file     ${worksrcpath}/${subport}

    notes "
To make the Python ${python.branch} version of docutils the one that is run when\
you execute the commands without a version suffix, e.g. 'rst2man', run:

port select --set ${select.group} [file tail ${select.file}]
"

    livecheck.type  none
}
