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

go.setup            github.com/mikefarah/yq 4.53.4 v
go.package          github.com/mikefarah/yq/v4
go.offline_build    no
go.toolchain_min    1.25.0
revision            0
dist_subdir         ${name}/${version}_${revision}

homepage            https://mikefarah.gitbook.io/yq

description         \
    yq is a portable command-line YAML processor

long_description    \
    {*}${description}. The aim of the project is to be the jq or sed of yaml \
    files.

categories          textproc sysutils
installs_libs       no
license             MIT
maintainers         {gmail.com:herby.gillot @herbygillot} \
                    openmaintainer

checksums           ${distname}${extract.suffix} \
                        rmd160  7cdf65ad5205a8d7a5277aec15323471efb0a34e \
                        sha256  49ddc4cad1682c46d55d5775f5381ea4daa25833665e98883d4a9483d3159e17 \
                        size    374927 \
                    ${name}_man_page_only${extract.suffix} \
                        rmd160  55e01e0a7c1640460ad5a33b7f8d6346ec5283d0 \
                        sha256  f767d483efff8afba206f60b609cb2305fac5baaabb360e1961ead10e309ecf8 \
                        size    48712

# use generated man page to avoid build depedency on pandoc
master_sites-append https://github.com/mikefarah/yq/releases/download/v${version}/yq_man_page_only${extract.suffix}?dummy=:yqman
distfiles-append    yq_man_page_only${extract.suffix}:yqman

build.pre_args-append \
                    -ldflags \"-X ${go.package}/cmd.Version=${version}\"
build.args-append   -o ${name}

destroot {
    xinstall -m 0755 ${worksrcpath}/${name} ${destroot}${prefix}/bin/
    xinstall -d ${destroot}${prefix}/share/man/man1
    xinstall -m 0644 ${workpath}/${name}.1 ${destroot}${prefix}/share/man/man1/

    xinstall -d ${destroot}${prefix}/share/${name}
    xinstall -m 0644 ${worksrcpath}/LICENSE ${destroot}${prefix}/share/${name}
    file copy ${worksrcpath}/examples ${destroot}${prefix}/share/${name}/

    set bash_completion ${prefix}/share/bash-completion/completions
    xinstall -d ${destroot}${bash_completion}
    exec ${destroot}${prefix}/bin/${name} shell-completion bash > \
        ${destroot}${bash_completion}/${name}

    set zsh_completion ${prefix}/share/zsh/site-functions
    xinstall -d ${destroot}${zsh_completion}
    exec ${destroot}${prefix}/bin/${name} shell-completion zsh > \
        ${destroot}${zsh_completion}/_${name}

    set fish_completion ${prefix}/share/fish/vendor_completions.d
    xinstall -d ${destroot}${fish_completion}
    exec ${destroot}${prefix}/bin/${name} shell-completion fish > \
        ${destroot}${fish_completion}/${name}.fish
}
