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

# Please keep the version of the libxml2 and py-libxml2 ports the same.

name                py-libxml2
version             2.13.9
revision            0
checksums           rmd160  c31233d57f224d32ae50e8bb02d91bad75295165 \
                    sha256  a2c9ae7b770da34860050c309f903221c67830c86e4a7e760692b803df95143a \
                    size    2426164

set branch          [join [lrange [split ${version} .] 0 1] .]
categories-append   textproc
license             MIT
maintainers         {mcalhoun @MarcusCalhoun-Lopez} openmaintainer

description         Python bindings for libxml2
long_description    ${description}

homepage            https://gitlab.gnome.org/GNOME/libxml2/-/wikis/Python-bindings
master_sites        gnome:sources/libxml2/${branch}/

distname            libxml2-${version}
dist_subdir         libxml2
use_xz yes

python.versions     27 39 310 311 312 313

if {${name} ne ${subport}} {

    # Build in PEP517 mode fails with Python 3.11
    python.pep517   no

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

    depends_lib-append  \
                    port:libxml2

    worksrcdir      ${worksrcdir}/python

    post-extract {
        # setup.py is generated by configure and is no longer included
        # in the tarball, but we can generate it quicker with some
        # patches.
        copy ${worksrcpath}/setup.py.in ${worksrcpath}/setup.py
    }

    patchfiles      patch-setup.py.diff

    post-patch {
        reinplace "s|@LIBXML_VERSION@|${version}|g;s|@prefix@|${prefix}|g" ${worksrcpath}/setup.py
    }

    post-destroot {
      set docdir ${prefix}/share/doc/${subport}
      xinstall -d ${destroot}${docdir}
      xinstall -m 0644 -W ${worksrcpath} README \
        ${destroot}${docdir}
    }
}

livecheck.name      libxml2
livecheck.type      gnome-with-unstable