# -*- 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        ARMmbed mbedtls 2.28.10 mbedtls-
revision            0

conflicts           hello mbedtls3 mbedtls4

categories          devel
license             Apache-2
maintainers         {mps @Schamschula} openmaintainer
description         An open source, portable, easy to use, readable and flexible SSL \
                    library.
long_description    {*}${description}

homepage            https://tls.mbed.org
github.tarball_from archive

checksums           rmd160  236af95db0fde505babc69eb6512629b1296b0af \
                    sha256  c785ddf2ad66976ab429c36dffd4a021491e40f04fe493cfc39d6ed9153bc246 \
                    size    4369924

set python.version  313
set python.branch   "[string index ${python.version} 0].[string range ${python.version} 1 end]"

depends_build-append \
                    port:perl5 \
                    port:python${python.version}

# library/bignum.c:1435:9: error: cannot compile this unexpected cast lvalue yet
# For related discussion see https://trac.macports.org/ticket/62185
compiler.blacklist-append {clang < 900}

configure.args-append \
                    -DENABLE_TESTING=ON \
                    -DPERL_EXECUTABLE=${prefix}/bin/perl \
                    -DMBEDTLS_PYTHON_EXECUTABLE:FILEPATH=${prefix}/bin/python${python.branch} \
                    -DUSE_SHARED_MBEDTLS_LIBRARY=ON \
                    -DMBEDTLS_FATAL_WARNINGS=OFF

# error: /usr/bin/ranlib: unknown option character `n' in: -no_warning_for_no_symbols
# see: https://trac.macports.org/ticket/60762
if {${os.platform} eq "darwin" && ${os.major} < 13} {
    depends_build-append \
                    port:cctools
    configure.args-append \
                    -DCMAKE_RANLIB=${prefix}/bin/ranlib
}

# platform_builtin_keys.c: error: ‘for’ loop initial declaration used outside C99 mode
configure.cflags-append \
                    -std=c99

test.run            yes

github.livecheck.regex  {(2\.\d+(\.\d+)?(?!a))}
