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

name            xorg-xcb-proto
version         1.17.0
revision        0

checksums       rmd160  4220efd91ded6dae58717ebd4cdb812622924ec8 \
                sha256  2c1bacd2110f4799f74de6ebb714b94cf6f80fb112316b1219480fd22562148c \
                size    151748

categories      x11 devel
license         X11
maintainers     {jeremyhu @jeremyhu} openmaintainer
description     X.org xcb-proto
homepage        https://xcb.freedesktop.org
platforms       {darwin any}
supported_archs noarch
long_description XML-XCB protocol descriptions
master_sites     xorg:individual/proto

distname        xcb-proto-${version}

use_xz          yes

configure.args  --with-python-sys-prefix

depends_run     port:libxml2

# Using depends_build instead of depends_lib for pythonXY even if there is a Python module xcbgen
# as the xcbgen module is only used to build X bindings like libxcb or xpp [1]. It's intended for
# neither applications nor end users. In other words, xcbgen is not needed to run applications
# using XCB.
#
# [1] https://github.com/polybar/xpp

set python_vers {3.10 3.11 3.12 3.13 3.14}
set python_ports [lmap v $python_vers {string cat python[string map {. ""} $v]}]
foreach python_ver $python_vers python_port $python_ports {
    variant $python_port conflicts {*}[ldelete $python_ports $python_port] \
            description "Use python $python_ver" "
        depends_build-append    port:${python_port}
        license_noconflict      $python_port
        configure.python        ${prefix}/bin/python${python_ver}
    "
}

if {![variant_isset python310] && ![variant_isset python311]
        && ![variant_isset python312] && ![variant_isset python313]} {
    default_variants +python314
}

livecheck.type  regex
livecheck.url   https://xorg.freedesktop.org/archive/individual/proto/?C=M&O=D
livecheck.regex xcb-proto-(\\d+(?:\\.\\d+)*)
