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

# Match papilo and scip
boost.version       1.81

set release_version 710
github.setup        scipopt soplex ${release_version} release-
version             [string index ${release_version} 0].[string range ${release_version} 1 1].[string range ${release_version} 2 end]
revision            0
categories          math
license             ZIB Academic Licence

maintainers         nomaintainer

description         Sequential object-oriented simPlex
long_description    SoPlex is an optimization package for solving linear programming problems (LPs) \
                    based on an advanced implementation of the primal and dual revised simplex algorithm.

homepage            https://soplex.zib.de

checksums           rmd160  f14f29ccf2b6c5698ea0e4626d49e8201e927070 \
                    sha256  ec177fdb688346287d5f211dd7ec4a0195c8ec9b3a5314d38aca383b6fa1418e \
                    size    1220190

github.tarball_from archive

compilers.setup     require_fortran

compiler.thread_local_storage yes

compiler.cxx_standard 2014

# error: "This library now requires a C++11 or later compiler - this message was generated as a result of BOOST_NO_CXX11_HDR_TYPE_TRAITS being set"
compiler.blacklist-append {clang < 800}

depends_lib-append  port:gmp \
                    port:mpfr \
                    port:onetbb \
                    path:lib/libopenblas.dylib:OpenBLAS \
                    port:zlib

configure.args      -DGMP=ON \
                    -DQUADMATH=OFF

if {[string match *gcc* ${configure.compiler}]} {
    # ___atomic_fetch_add_8
    configure.ldflags-append \
                    -latomic
}

test.run            yes

livecheck.type      regex
livecheck.regex     Version (\[0-9.\]+) released
