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

name                py-mpi4py
version             4.1.1
revision            0

license             BSD
universal_variant   no
description         MPI for Python - Python bindings for MPI
long_description    \
    MPI for Python \(mpi4py\) provides bindings of the Message Passing \
    Interface \(MPI\) standard for the Python programming language, allowing \
    any Python program to exploit multiple processors. This package is \
    constructed on top of the MPI-1/MPI-2 specification and provides an \
    object oriented interface which closely follows MPI-2 C++ bindings. \
    It supports point-to-point \(sends, receives\) and collective \
    \(broadcasts, scatters, gathers\) communications of any picklable Python \
    object as well as optimized communications of Python object exposing the \
    single-segment buffer interface \(NumPy arrays, builtin \
    bytes/string/array objects).

maintainers         nomaintainer

homepage            https://mpi4py.github.io/mpi4py/

checksums           rmd160  54762bedd3609c8c9b598f59958680f3643881c1 \
                    sha256  eb2c8489bdbc47fdc6b26ca7576e927a11b070b6de196a443132766b3d0a2a22 \
                    size    500518

mpi.setup           require

python.versions     310 311 312 313 314

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

    variant interpreter description {builds an mpi enabled python interpreter} {
        patchfiles-append \
                    patch-conf-mpidistutils.py.diff
    }
}
