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

set realname        certbot_dns_namecheap
set gittag          591508b
github.setup        schubc ${realname} ${gittag}
name                certbot-dns-namecheap
version             0.27.0.dev0
revision            1
categories          security
license             Apache-2
maintainers         {mps @Schamschula} openmaintainer
description         The certbot namecheap.com plugin for dns-01 challenges
long_description    The namecheap.com plugin automates the process of completing a \
                    dns-01 challenge (DNS01) by creating, and subsequently removing, \
                    TXT records using the (XML-RPC-based) namecheap.com API.
platforms           darwin

python.versions     27 36 37 38

set python_variant  {}

checksums           rmd160  5f37ba0c922adcb575511cd334c6a285bba5a54e \
                    sha256  3ec8ab8de8ad41af22699c3bc7baf266582552d4765c168631112d55ca564aaf \
                    size    12012

build.dir           ${workpath}/${realname}-${gittag}

if {[variant_isset python27]} {
    python.default_version 27
} elseif {[variant_isset python36]} {
    python.default_version 36

    patchfiles     patch-certbot_dns_namecheap-dns_namecheap.py.diff
} elseif {[variant_isset python38]} {
    python.default_version 38

    patchfiles     patch-certbot_dns_namecheap-dns_namecheap.py.diff
} else {
    python.default_version 37

    patchfiles     patch-certbot_dns_namecheap-dns_namecheap.py.diff
}

depends_build-append \
                    port:py${python.version}-setuptools

depends_lib-append  port:certbot \
                    port:py${python.version}-acme \
                    port:py${python.version}-dns-lexicon \
                    port:py${python.version}-mock \
                    port:py${python.version}-ndg_httpsclient \
                    port:py${python.version}-pynamecheap \
                    port:py${python.version}-python-augeas \
                    port:py${python.version}-zope-component \
                    port:py${python.version}-zopeinterface

variant python27 conflicts python36 python37 python38 description {Use Python 2.7} {
    depends_lib-append  port:py${python.version}-python2-pythondialog
    set python_variant  python27
}

variant python36 conflicts python27 python37 python38 description {Use Python 3.6} {
    set python_variant  python36
}

variant python37 conflicts python27 python36 python38 description {Use Python 3.7} {
    set python_variant  python37
}

variant python38 conflicts python27 python36 python37 description {Use Python 3.7} {
    set python_variant  python38
}

if {![variant_isset python27] && ![variant_isset python36] && ![variant_isset python38]} {
    default_variants +python37
}

require_active_variants certbot   ${python_variant}