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

perl5.branches      5.28 5.30 5.32 5.34
perl5.setup         Alien-proj 1.31 ../../authors/id/S/SL/SLAFFAN
revision            0
license             {Artistic-1 GPL}
maintainers         {devans @dbevans} openmaintainer
description         Alien::proj - Find/Install the PROJ library, version 6.1+
long_description    {*}${description}

platforms           {darwin any}
supported_archs     noarch

checksums           rmd160  a34fe5df07c754239e88c18bb4a540ca3505aa1c \
                    sha256  9d0169833a37d87423830055c2732533dc3907fc32eaa2eec43caf17a3d3e9e7 \
                    size    17430

# requires proj 7.1+
variant proj7 conflicts proj8 proj9 description {Build with support for the Proj7 projection library} {}
variant proj8 conflicts proj7 proj9 description {Build with support for the Proj8 projection library} {}
variant proj9 conflicts proj7 proj8 description {Build with support for the Proj9 projection library} {}

if {![variant_isset proj7] && \
    ![variant_isset proj8] && \
    ![variant_isset proj9]} {
    default_variants +proj9
}

if {${perl5.major} != ""} {
    depends_build-append \
                    port:pkgconfig \
                    port:p${perl5.major}-alien-build-plugin-cleanse-builddir \
                    port:p${perl5.major}-alien-build-plugin-pkgconfig-ppwrapper \
                    port:p${perl5.major}-alien-sqlite \
                    port:p${perl5.major}-file-find-rule \
                    port:p${perl5.major}-file-which \
                    port:p${perl5.major}-path-tiny \
                    port:p${perl5.major}-pkgconfig \
                    port:p${perl5.major}-sort-versions

    depends_lib-append \
                    port:p${perl5.major}-alien-build \
                    port:p${perl5.major}-alien-curl \
                    port:p${perl5.major}-ffi-checklib

    if {[variant_isset proj7]} {set proj_name proj7}
    if {[variant_isset proj8]} {set proj_name proj8}
    if {[variant_isset proj9]} {set proj_name proj9}

    depends_lib-append port:${proj_name}

    set proj_prefix ${prefix}/lib/${proj_name}
    set proj_env_items [list "ALIEN_INSTALL_TYPE=system" \
                             "PATH=${proj_prefix}/bin:${::env(PATH)}" \
                             "PKG_CONFIG_PATH=${proj_prefix}/lib/pkgconfig"]

    foreach item $proj_env_items {
        configure.env-append $item
        build.env-append $item
        test.env-append $item
    }
}
