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

name                    gdcm2
version                 2.8.9
revision                5
categories              science graphics
license                 BSD
maintainers             {mcalhoun @MarcusCalhoun-Lopez} openmaintainer
description             a C++ library for DICOM medical files
long_description        Grassroots DiCoM is a C++ library for DICOM medical files.

homepage                https://sourceforge.net/projects/gdcm/
distname                gdcm-${version}
master_sites            sourceforge:gdcm
dist_subdir             gdcm

checksums               rmd160  c301428024efd8137ceff84696a55c6ef7f6b80b \
                        sha256  a2da88b7b3cbf9e76a9df3e89d06d057cca9ce54fc62fb059e04f47bf056b727 \
                        size    3762694

# C++11 required to use socketxx
patchfiles-append       patch-cxx_standard.diff
compiler.cxx_standard   2011

depends_build-append    port:docbook-xsl-ns \
                        port:libxslt \
                        path:bin/pkg-config:pkgconfig

depends_lib-append      port:zlib \
                        path:lib/libssl.dylib:openssl \
                        port:expat \
                        port:jsoncpp port:json-c \
                        port:socketxx \
                        port:openjpeg

configure.args-append   -DGDCM_BUILD_SHARED_LIBS=ON \
                        -DGDCM_USE_SYSTEM_ZLIB=ON \
                        -DGDCM_USE_SYSTEM_OPENSSL=ON \
                        -DGDCM_USE_SYSTEM_UUID=ON \
                        -DGDCM_USE_SYSTEM_EXPAT=ON \
                        -DGDCM_USE_SYSTEM_JSON=ON \
                        -DGDCM_USE_SYSTEM_PAPYRUS3=OFF \
                        -DGDCM_USE_SYSTEM_SOCKETXX=ON \
                        -DGDCM_USE_SYSTEM_LJPEG=OFF \
                        -DGDCM_USE_SYSTEM_OPENJPEG=ON \
                        -DGDCM_USE_SYSTEM_CHARLS=OFF \
                        \
                        -DGDCM_USE_VTK=OFF

post-destroot {
    # avoid conflict with gdcm
    foreach fl {
        libgdcmCommon.dylib
        libgdcmjpeg12.dylib
        libgdcmDICT.dylib
        libgdcmDSED.dylib
        libgdcmIOD.dylib
        libgdcmMEXD.dylib
        libgdcmMSFF.dylib
        libgdcmjpeg16.dylib
        libgdcmjpeg8.dylib
    } {
        delete ${destroot}${prefix}/lib/${fl}
    }
    delete ${destroot}${prefix}/share/man

    # place olena looks for header files
    ln -s gdcm-[join [lrange [split ${version} .] 0 1] .] ${destroot}${prefix}/include/gdcm-2.0
}

livecheck.type      none
