# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4

PortSystem              1.0
PortGroup               cmake 1.1
PortGroup               github 1.0
PortGroup               openssl 1.0

github.setup            vstakhov libucl 0.9.4
github.tarball_from     archive

categories              devel
license                 BSD
platforms               darwin freebsd
maintainers             {sethm.id.au:dev @McDaMastR} \
                        openmaintainer

description             Universal configuration library parser
long_description        libucl is a C library for parsing configurations \
                        written in UCL - universal configuration language.

# ${prefix}/lib/libucl.dylib
conflicts               ucl

depends_lib-append      port:curl

checksums               rmd160  99da760f1f9935a06622ed65ca10f4ccf47cc813 \
                        sha256  319d8ff13441f55d91cd7f3708a54bd03779733e26958c2346c5109014520aaf \
                        size    2049442

patchfiles              fix-luajit.diff

configure.args-append   -DBUILD_SHARED_LIBS=ON \
                        -DCMAKE_BUILD_WITH_INSTALL_RPATH=OFF \
                        -DENABLE_LUA=OFF \
                        -DENABLE_LUAJIT=OFF \
                        -DENABLE_URL_INCLUDE=ON \
                        -DENABLE_URL_SIGN=ON \
                        -DLIBFETCH_LIBRARY=NOTFOUND

test.run                yes
test.cmd                ctest
test.target

post-destroot {
    set destdocdir  ${destroot}${prefix}/share/doc/${name}
    set destmandir  ${destroot}${prefix}/share/man

    xinstall -d ${destdocdir}
    xinstall -W ${cmake.source_dir} -m 644 \
        COPYING \
        ChangeLog.md \
        README.md \
        doc/api.md \
        ${destdocdir}

    if {[variant_isset lua]} {
        xinstall -m 644 ${cmake.source_dir}/doc/lua_api.md ${destdocdir}
    }

    xinstall -d ${destmandir}/man3
    xinstall ${cmake.source_dir}/doc/libucl.3 ${destmandir}/man3
}

variant lua \
        description {Enable lua support} {
    depends_lib-append      path:lib/libluajit-5.1.2.dylib:luajit
    configure.args-replace  -DENABLE_LUA=OFF -DENABLE_LUA=ON
    configure.args-replace  -DENABLE_LUAJIT=OFF -DENABLE_LUAJIT=ON
}
