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

github.setup        chrberger stringtoolbox eb1d24e848677de160c22dabb01b5d1272291d29
# Change github.tarball_from to 'releases' or 'archive' next update
github.tarball_from tarball
version             0.0.4
revision            0
categories          devel
license             MIT
platforms           any
supported_archs     noarch
maintainers         nomaintainer
description         A simple header-only, single-file string toolbox library for C++
long_description    stringtoolbox is a small and efficient library written in modern C++, \
                    aimed to provide some features for processing std::strings.
checksums           rmd160  f25cd63fb9988b4c3cf1e4e09b53ca21cde322f8 \
                    sha256  a326a354f6602b7962b5965db1d1312d287100ccbaf3635679ba1fc106780c00 \
                    size    133584

post-patch {
    # Clang does not understand the following flags:
    if {[string match *clang* ${configure.compiler}]} {
        reinplace "s,-Wunused-but-set-parameter,," ${worksrcpath}/CMakeLists.txt
        reinplace "s,-Wunused-but-set-variable,," ${worksrcpath}/CMakeLists.txt
    }
}

compiler.cxx_standard 2011

destroot {
    copy ${worksrcpath}/stringtoolbox.hpp ${destroot}${prefix}/include/
    set docdir ${prefix}/share/doc/${name}
    xinstall -d ${destroot}${docdir}
    xinstall -m 0644 -W ${worksrcpath} CONTRIBUTING.md LICENSE README.md ${destroot}${docdir}
}

depends_test-append port:catch2

test.run            yes
test.cmd            ./${name}-Runner
test.target
