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

name                pangomm-1.4-devel
conflicts           pangomm-1.4
set my_name         pangomm
version             2.46.4
revision            0

# some build files are GPL-2+ but they are not installed
categories          x11 devel
license             LGPL-2.1+
maintainers         {devans @dbevans} {mascguy @mascguy} openmaintainer

description         C++ interface to Pango.
long_description    pangomm is the official \
                    C++ interface for the Pango text layout library.
homepage            http://www.gtkmm.org/

set branch          [join [lrange [split ${version} .] 0 1] .]
master_sites        gnome:sources/${my_name}/${branch}/
distname            ${my_name}-${version}
dist_subdir         ${my_name}
use_xz              yes

checksums           rmd160  bb3ad778efe08053f29b522fc327184f4e083459 \
                    sha256  b92016661526424de4b9377f1512f59781f41fb16c9c0267d6133ba1cd68db22 \
                    size    695088

# Disable unexpected download of subprojects
meson.wrap_mode     nodownload

set py_ver          3.12
set py_ver_nodot    [string map {. {}} ${py_ver}]

depends_build-append \
                    port:mm-common \
                    path:bin/pkg-config:pkgconfig \
                    port:python${py_ver_nodot}

depends_lib-append \
                    path:lib/pkgconfig/cairomm-1.0.pc:cairomm \
                    path:lib/pkgconfig/glibmm-2.68.pc:glibmm \
                    port:libsigcxx2 \
                    path:lib/pkgconfig/pango.pc:pango

configure.python    ${prefix}/bin/python${py_ver}
meson.native.binaries-append \
                    python3=${configure.python}

post-patch {
    fs-traverse f ${worksrcpath} {
        if {[string match *.py ${f}]} {
            ui_info "patching python: ${f}"
            reinplace -q "s|/usr/bin/env python3$|${configure.python}|" ${f}
        }
    }
}

# pangomm > 2.36.0 requires C++11 or better
compiler.cxx_standard 2011

configure.args-append \
                    -Dbuild-deprecated-api=true \
                    -Dbuild-documentation=false

# dummy variants to ensure that this port gets rebuilt if
# the corresponding variants for pango change
variant x11 {}
variant quartz {}

default_variants +x11 +quartz

if {[variant_isset x11]} {
    require_active_variants path:lib/pkgconfig/cairomm-1.0.pc:cairomm x11
    require_active_variants path:lib/pkgconfig/pango.pc:pango x11
}

if {[variant_isset quartz]} {
    require_active_variants path:lib/pkgconfig/cairomm-1.0.pc:cairomm quartz
    require_active_variants ath:lib/pkgconfig/pango.pc:pango quartz
}

livecheck.type      gnome
livecheck.name      ${my_name}
livecheck.url       http://ftp.gnome.org/pub/gnome/sources/${my_name}/${branch}/
