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

github.setup        dino dino 0.5.1 v
revision            1
categories          net chat www
license             GPL-3+
maintainers         {@barracuda156 macos-powerpc.org:barracuda} openmaintainer
description         Modern XMPP (Jabber) chat client
long_description    {*}${description} using GTK+/Vala.
homepage            https://dino.im
checksums           rmd160  651fb6d5ee7df1ad89a9dec2553c8ac28fcbae59 \
                    sha256  2658b83abe1203b2dd4d6444519f615b979faaac7e97f384e655bff85769584b \
                    size    1004976
github.tarball_from archive

# FIXED?: on 10.6 it builds and launches, but trying to register an account results in an error:
# (dino:74601): Pango-WARNING **: 23:01:36.818: Invalid UTF-8 string passed to pango_layout_set_text()
# https://github.com/dino/dino/issues/1593

depends_build-append \
                    path:bin/cmake:cmake \
                    port:gettext \
                    path:bin/pkg-config:pkgconfig \
                    path:bin/vala:vala

depends_lib-append  path:lib/pkgconfig/gdk-pixbuf-2.0.pc:gdk-pixbuf2 \
                    port:gettext-runtime \
                    path:lib/pkgconfig/glib-2.0.pc:glib2 \
                    path:lib/pkgconfig/gnutls.pc:gnutls \
                    path:lib/pkgconfig/gobject-introspection-1.0.pc:gobject-introspection \
                    port:gpgme \
                    port:gstreamer1 \
                    port:gstreamer1-gst-plugins-base \
                    path:lib/pkgconfig/gtk4.pc:gtk4 \
                    path:lib/pkgconfig/icu-uc.pc:icu \
                    path:lib/pkgconfig/libadwaita-1.pc:libadwaita \
                    port:libgcrypt \
                    port:libgee \
                    port:libnice \
                    port:libomemo-c \
                    path:lib/pkgconfig/libsoup-3.0.pc:libsoup \
                    port:libsrtp \
                    port:protobuf-c \
                    port:qrencode \
                    port:sqlite3

depends_run-append  port:desktop-file-utils

compiler.blacklist-append \
                    {*gcc-[34].*} {clang < 400}

configure.args-append \
                    -Dplugin-http-files=enabled \
                    -Dplugin-ice=enabled \
                    -Dplugin-notification-sound=disabled \
                    -Dplugin-omemo=enabled \
                    -Dplugin-openpgp=enabled \
                    -Dplugin-rtp=enabled

if {${os.platform} eq "darwin" \
    && [string match *clang* ${configure.compiler}]} {
    configure.cflags-append \
                    -Wno-error=implicit-function-declaration
    if {${os.major} > 21} {
        configure.cflags-append \
                    -Wno-error=incompatible-function-pointer-types
    }
}

# https://trac.macports.org/ticket/70137
notes "
If you get an error upon launching the app,\
try setting GSK_RENDERER=cairo in the environment.\
You may also add it into a shell config file.
"

post-activate {
    system "${prefix}/bin/update-desktop-database ${prefix}/share/applications"
}
