# -*- 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           compiler_blacklist_versions 1.0
PortGroup           openssl 1.0

github.setup        mgieseki dvisvgm 3.1.2
name                dvisvgm-devel
conflicts           dvisvgm
set my_name         dvisvgm
revision            1

checksums           rmd160  0a6ff41bb5c3f5fe281597b0716e35ddba0405db \
                    sha256  a9bc2015eb1a12ff14de2efec5d65c8bc2f2b28d33a2932a2f5176b25da701d6 \
                    size    2516189

categories          graphics textproc
license             GPL-3+
maintainers         {michaelld @michaelld} {mascguy @mascguy} openmaintainer

description         DVI to SVG converter
long_description    DVI to SVG converter. The command-line utility dvisvgm is a tool \
                    for TeX/LaTeX users. It converts DVI files to the XML-based scalable \
                    vector graphics format SVG.

dist_subdir         ${my_name}

compiler.cxx_standard 2011
# see https://trac.macports.org/ticket/63553
compiler.blacklist-append {clang < 900}

use_autoconf        yes
autoconf.cmd        ${worksrcpath}/autogen.sh

post-extract {
    copy ${filespath}/autogen.sh ${worksrcpath}
    system -W ${worksrcpath} "chmod +x autogen.sh"
}

# Setting autoconf.cmd to a non-default value after setting
# 'use_autoconf yes' removes the automatic dependencies, so re-add them.
depends_build-append \
    port:autoconf \
    port:autoconf-archive \
    port:automake \
    port:libtool

depends_build-append \
    port:asciidoc \
    port:pkgconfig \
    port:xmlto

depends_lib-append \
    port:brotli \
    port:freetype \
    port:ghostscript \
    port:potrace \
    port:texlive-bin \
    port:woff2 \
    port:xxhashlib \
    port:zlib

# prevent opportunistic dependencies
configure.env-append \
    AWK=/usr/bin/awk

configure.args-append \
    --disable-silent-rules

test.run    yes
test.target check

pre-activate {
    if {![catch {set vers [lindex [registry_active texlive-bin-extra] 0]}]
        && ([vercmp [lindex $vers 1] 47446] < 0 ||
            [vercmp [lindex $vers 1] 47446] == 0
            && [vercmp [lindex $vers 2] 1] < 1)} {
        registry_deactivate_composite texlive-bin-extra "" [list ports_nodepcheck 1]
    }
}
