# -*- 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-ldap
python.rootname python-ldap
version         3.4.4
revision        0

license         PSF
maintainers     {mascguy @mascguy} openmaintainer

description     object-oriented api for python to access LDAP directory servers
long_description \
                python-ldap provides an object-oriented API to access \
                LDAP directory servers from Python programs. Mainly it \
                wraps the OpenLDAP 2.x libs for that purpose. \
                Additionally the package contains modules for other \
                LDAP-related stuff (e.g. processing LDIF, LDAPURLs, \
                LDAPv3 schema, etc.).
homepage        https://www.python-ldap.org/

checksums       rmd160  78dea80615fb138af31891765fe446fd6087fadf \
                sha256  7edb0accec4e037797705f3a05cbf36a9fde50d08c8f67f2aef99a2628fab828 \
                size    377889

python.versions 27 310 311 312

if {$subport ne $name} {
    if {${python.version} == 27} {
        version   3.2.0
        revision  2

        checksums rmd160 846bf38cb166f478f2cf401f889ad7ecd39b05c5 \
                  sha256 7d1c4b15375a533564aad3d3deade789221e450052b21ebb9720fb822eccdb8e \
                  size   367645

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

    depends_lib-append \
                path:lib/libldap.dylib:openldap \
                port:py${python.version}-asn1 \
                port:py${python.version}-asn1-modules

    post-destroot {
        set doc_dir ${destroot}${prefix}/share/doc/${subport}
        xinstall -d ${doc_dir}
        xinstall -m 644 -W ${worksrcpath} CHANGES INSTALL LICENCE README TODO \
            ${doc_dir}
    }

    if {${python.version} > 27} {
        test.run        yes
        # Location of openldap daemon (slapd)
        test.env-append SBIN=${prefix}/libexec
    }

    livecheck.type  none
}
