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

github.setup        thliebig CSXCAD c6a15872ff7d258e05f80dd81aa70b5828d85c1c
# Change github.tarball_from to 'releases' or 'archive' next update
github.tarball_from tarball
version             20231216-[string range ${github.version} 0 7]
checksums           rmd160  2ee23413b125b8f69b5eb95bf5b517c48ed8070f \
                    sha256  fdfa181709d3fa10e4156a715342aaa95b1df60694ccb5cf18d380d312c326c6 \
                    size    170544
revision            1

platforms           darwin macosx
categories          textproc
license             GPL-3
maintainers         {ra1nb0w @ra1nb0w} openmaintainer

description         ${name} is a C++ library to describe geometrical objects and their \
                    physical or non-physical properties
long_description    {*}${description}

compiler.cxx_standard   2011

# Build fails to pass required C++ ABI flag, which breaks the linking:
# Undefined symbols:
# "__ZN18FunctionParserBaseIdE11AddFunctionERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPFdPKdEj"
# "__ZN13TiXmlDocumentC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE"
# This happens because it clears cxxflags. Fix that:
patchfiles-append \
    patch-CMakeLists.diff

# Also, it should either use mpi PG or disable MPICH.
patchfiles-append \
    patch-no-mpich.diff

# remove when upstream
patchfiles-append \
    clocale_fix.patch

depends_build-append \
    path:bin/pkg-config:pkgconfig

depends_lib-append \
    port:cgal4 \
    port:fparser \
    port:hdf5 \
    port:tinyxml \
    port:vtk

configure.args-append \
    -DFPARSER_ROOT_DIR=${prefix}
