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

name                py-pyproj
version             3.7.2
categories-append   devel
license             MIT

python.versions     310 311 312 313 314

maintainers         {stromnov @stromnov} openmaintainer

description         Python interfaces to PROJ.4 functions.
long_description    Pyrex wrapper to provide python interfaces to PROJ.4 \
                    (http://proj.maptools.org) functions.  Performs \
                    cartographic transformations and geodetic computations.

homepage            https://pyproj4.github.io/pyproj

checksums           md5 1c0501d6055ff26565dae8fe2e6083c5 \
                    rmd160 b5ca716738701444b4b8093a8f01f53256319eb8 \
                    sha256 39a0cf1ecc7e282d1d30f36594ebd55c9fae1fda8a2622cee5d100430628f88c \
                    size   226279

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

    configure.env-append    PROJ_DIR=${prefix}/lib/proj9
    build.env-append        PROJ_DIR=${prefix}/lib/proj9
    destroot.env-append     PROJ_DIR=${prefix}/lib/proj9
    patchfiles-append       patch-pyproj_datadir.py.diff
    post-patch {
        reinplace "s|%%INTERNAL_DATADIR%%|${prefix}/lib/proj9/share/proj|" ${worksrcpath}/pyproj/datadir.py
    }

    if {[string match *gcc-4.* ${configure.compiler}]} {
        # pycore_frame.h:134: error: ‘for’ loop initial declaration used outside C99 mode
        build.cmd-prepend       CFLAGS="-std=c99"
    }

    post-destroot {
        xinstall -m 0644 -W ${worksrcpath} \
            README.md PKG-INFO \
            ${destroot}${prefix}/share/doc/${subport}
    }
}
