# -*- 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
# $Id$

PortSystem          1.0
PortGroup           cmake 1.0
PortGroup           cxx11 1.0
PortGroup           github 1.0
PortGroup           compiler_blacklist_versions 1.0

github.setup        CastXML CastXML e1ee6852c79eddafa2ce1f134c097decd27aaa69

name                castxml
version             20160922
revision            0
categories          lang
platforms           darwin
license             Apache-2

maintainers         stromnov openmaintainer

description         CastXML is a C-family abstract syntax tree XML output tool.
long_description    ${description}

checksums           rmd160  df5271e7925297cfd5a1179702850514cc9367e4 \
                    sha256  bcce338041f58eb3a05a798fb17f9f4d69b66b4dbe22a24bd8237ab800be592d

cmake.out_of_source yes

depends_lib-append  port:zlib \
                    port:libffi \
                    port:libedit \
                    port:ncurses

configure.args-append \
                    -DCastXML_INSTALL_DOC_DIR=share/doc/castxml

variant clang36 conflicts clang38 clang39 description {Use clang 3.6 toolchain.} {
    depends_build-append \
                        port:clang-3.6
    configure.args-append \
                        -DLLVM_DIR=${prefix}/libexec/llvm-3.6/share/llvm/cmake
}

variant clang38 conflicts clang36 clang39 description {Use clang 3.8 toolchain.} {
    depends_build-append \
                        port:clang-3.8
    configure.args-append \
                        -DLLVM_DIR=${prefix}/libexec/llvm-3.8/share/llvm/cmake
}

variant clang39 conflicts clang36 clang38 description {Use clang 3.9 toolchain.} {
    depends_build-append \
                        port:clang-3.9
    configure.args-append \
                        -DLLVM_DIR=${prefix}/libexec/llvm-3.9/lib/cmake/llvm
}

if {![variant_isset clang36] && ![variant_isset clang38] && ![variant_isset clang39]} {
    default_variants +clang36
}