# -*- 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.15 v
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.

platforms           darwin
supported_archs     noarch
installs_libs       no

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

checksums           rmd160  f3d9eff2ceb88bf68088770bd5062c036bdf4ace \
                    sha256  48d6fdca2f833e5bd262a530a2475dc8fda6c2e71ddfc2a7d1a35e4a6ed5b6ad \
                    size    1404998

python.versions     27 36 37 38

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

    # 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

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

    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}
        }
    }

    livecheck.type      none
}
