# -*- 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           github 1.0
PortGroup           active_variants 1.1

github.setup        colour-science colour 0.3.16 v
# Change github.tarball_from to 'releases' or 'archive' next update
github.tarball_from tarball
revision            1
name                py-colour
license             BSD
maintainers         {mcalhoun @MarcusCalhoun-Lopez} openmaintainer
description         A comprehensive number of colour theory transformations and algorithms
long_description \
    Colour is a Python colour science package implementing a comprehensive number of colour theory transformations and algorithms.

supported_archs     noarch
platforms           {darwin any}

homepage            https://www.colour-science.org

checksums           rmd160  ed9de28b1bc10a24b6dca9438ac224cedb9f022a \
                    sha256  b4b81ffc98d840fe3272d5a6bf52b8684c080494237ea053df74a7fc284d1eda \
                    size    1882753

python.versions     39

if {${name} ne ${subport}} {
    # see https://www.colour-science.org/installation-guide/
    depends_lib-append \
        port:py${python.version}-numpy \
        port:py${python.version}-imageio \
        port:py${python.version}-scipy \
        port:py${python.version}-six

    # optional dependencies
    depends_run-append \
        port:py${python.version}-networkx \
        port:py${python.version}-pandas \
        port:py${python.version}-matplotlib \
        path:bin/dot:graphviz \
        port:py${python.version}-graphviz

    variant openimageio description {Enable support for OpenImageIO} {
        depends_run-append \
            port:openimageio
        require_active_variants openimageio python${python.version}
    }

    test.run        yes
    python.test_framework nose

    depends_test-append \
        port:py${python.version}-mock

    test.target     nosetests

    variant docs description {Install Sphinx-generated docs} {
        depends_build-append       port:py${python.version}-sphinx \
                                   port:py${python.version}-sphinx_rtd_theme \
                                   port:py${python.version}-sphinxcontrib-bibtex

        post-build {
            system -W ${worksrcpath}/docs "make PYTHONPATH=${worksrcpath}/build/lib SPHINXBUILD=${prefix}/bin/sphinx-build-${python.branch} html man"
        }

        post-destroot {
            set doc_build_dir ${worksrcpath}/docs/_build
            file delete -force ${doc_build_dir}/html/.buildinfo \
                ${doc_build_dir}/html/_sources
            copy ${doc_build_dir}/html \
                ${destroot}${prefix}/share/doc/${subport}
            move ${doc_build_dir}/man \
                ${destroot}${python.prefix}
        }
    }
}
