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

boost.version       1.81

name                ncmpc
version             0.51
revision            0
checksums           rmd160  8ca66ee52204556d1af459e3879dc2073141c9f4 \
                    sha256  e74be00e69bc3ed1268cafcc87274e78dfbde147f2480ab0aad8260881ec7271 \
                    size    312732

set branch          [join [lrange [split ${version} .] 0 0] .]
categories          audio
maintainers         nomaintainer
description         curses Music Player Daemon (MPD) client
long_description    ncmpc is a client for MPD, the Music Player Daemon.
license             GPL-2+
homepage            https://www.musicpd.org/clients/${name}/
master_sites        https://www.musicpd.org/download/${name}/${branch}/
use_xz              yes

meson.wrap_mode     nodownload

set port_libfmt     libfmt11

configure.pkg_config_path-prepend \
                    ${prefix}/lib/${port_libfmt}/pkgconfig

depends_build-append \
                    port:gettext \
                    path:bin/pkg-config:pkgconfig
depends_lib-append  path:lib/pkgconfig/glib-2.0.pc:glib2 \
                    port:gettext-runtime \
                    port:${port_libfmt} \
                    port:libmpdclient \
                    port:ncurses \
                    port:pcre2

configure.args-append \
                    -Dcurses=ncurses
configure.env-append \
                    LDFLAGS=-lintl

patchfiles-append   patch-locale.diff

# https://github.com/MusicPlayerDaemon/ncmpc/pull/131
patchfiles-append   0001-Fix-for-missing-u_int32_t-for-macOS.patch \
                    0002-Fix-environ-for-Apple.patch

# https://github.com/MusicPlayerDaemon/ncmpc/issues/132
patchfiles-append   0003-Revert-util-Concepts-remove-obsolete-fallbacks.patch

compiler.cxx_standard \
                    2020
# Undefined symbols for architecture x86_64:
# "std::exception_ptr::__from_native_exception_pointer(void*)"
compiler.blacklist-append \
                    {clang < 1600}
if {${os.platform} eq "darwin" && ${os.major} < 23} {
    compiler.blacklist-append \
                    {macports-clang-1[8-9]}
}

livecheck.url       https://www.musicpd.org/download/${name}/${branch}/
livecheck.regex     "${name}-(\\d+(?:\\.\\d+)*)"
