You've already forked macports-ports
mirror of
https://github.com/macports/macports-ports.git
synced 2026-07-12 18:20:25 -07:00
113 lines
3.8 KiB
Tcl
113 lines
3.8 KiB
Tcl
# -*- 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 python 1.0
|
|
PortGroup linear_algebra 1.0
|
|
|
|
linalg.setup noveclibfort
|
|
|
|
name py-cvxopt
|
|
python.rootname cvxopt
|
|
version 1.3.2
|
|
revision 3
|
|
categories-append math
|
|
license GPL-3+
|
|
maintainers {gmail.com:jjstickel @jjstickel} openmaintainer
|
|
|
|
description Python module for convex optimization
|
|
long_description CVXOPT is a free software package for convex \
|
|
optimization based on the Python programming \
|
|
language. It can be used with the interactive \
|
|
Python interpreter, on the command line by \
|
|
executing Python scripts, or integrated in other \
|
|
software via Python extension modules. Its main \
|
|
purpose is to make the development of software for \
|
|
convex optimization applications straightforward \
|
|
by building on Python's extensive standard library \
|
|
and on the strengths of Python as a high-level \
|
|
programming language.
|
|
homepage https://cvxopt.org/
|
|
|
|
|
|
checksums rmd160 e181f9ef9224136835a34f6142c9974335d95ebf \
|
|
sha256 3461fa42c1b2240ba4da1d985ca73503914157fc4c77417327ed6d7d85acdbe6 \
|
|
size 4108454
|
|
|
|
python.versions 310 311 312 313
|
|
|
|
if {${subport} ne ${name}} {
|
|
# ignore empty BLAS and LAPACK inputs
|
|
patchfiles patch-setup.py.diff
|
|
|
|
build.env-append \
|
|
CVXOPT_BLAS_LIB_DIR=${prefix}/lib \
|
|
CVXOPT_LAPACK_LIB=
|
|
|
|
pre-build {
|
|
set blas_lib {}
|
|
set blas_extra_link_args {}
|
|
foreach lib [split ${linalglib} " "] {
|
|
if { [lrange ${lib} 0 1] eq "-l" } {
|
|
lappend blas_lib [lrange ${lib} end]
|
|
} else {
|
|
lappend blas_extra_link_args ${lib}
|
|
}
|
|
}
|
|
|
|
build.env-append \
|
|
CVXOPT_BLAS_LIB=[join ${blas_lib} ";"] \
|
|
CVXOPT_BLAS_EXTRA_LINK_ARGS=[join ${blas_extra_link_args} ";"]
|
|
}
|
|
|
|
variant gsl description {Build GSL module} {
|
|
depends_lib-append port:gsl
|
|
|
|
build.env-append \
|
|
CVXOPT_BUILD_GSL=1 \
|
|
CVXOPT_GSL_LIB_DIR=${prefix}/lib \
|
|
CVXOPT_GSL_INC_DIR=${prefix}/include
|
|
}
|
|
|
|
variant fftw description {Build FFTW module} {
|
|
depends_lib-append port:fftw-3
|
|
|
|
build.env-append \
|
|
CVXOPT_BUILD_FFTW=1 \
|
|
CVXOPT_FFTW_LIB_DIR=${prefix}/lib \
|
|
CVXOPT_FFTW_INC_DIR=${prefix}/include
|
|
}
|
|
|
|
variant glpk description {Build GLPK module} {
|
|
depends_lib-append port:glpk
|
|
|
|
build.env-append \
|
|
CVXOPT_BUILD_GLPK=1 \
|
|
CVXOPT_GLPK_LIB_DIR=${prefix}/lib \
|
|
CVXOPT_GLPK_INC_DIR=${prefix}/include
|
|
}
|
|
|
|
variant dsdp description {Build DSDP module} {
|
|
depends_lib-append port:DSDP
|
|
|
|
build.env-append \
|
|
CVXOPT_BUILD_DSDP=1 \
|
|
CVXOPT_DSDP_LIB_DIR=${prefix}/lib \
|
|
CVXOPT_DSDP_INC_DIR=${prefix}/include
|
|
}
|
|
|
|
depends_build-append port:py${python.version}-setuptools_scm
|
|
|
|
# link against MacPorts SuiteSparse
|
|
depends_lib-append port:SuiteSparse_config \
|
|
port:SuiteSparse_AMD \
|
|
port:SuiteSparse_COLAMD \
|
|
port:SuiteSparse_CHOLMOD \
|
|
port:SuiteSparse_UMFPACK
|
|
build.env-append \
|
|
CVXOPT_SUITESPARSE_SRC_DIR= \
|
|
CVXOPT_SUITESPARSE_LIB_DIR=${prefix}/lib \
|
|
CVXOPT_SUITESPARSE_INC_DIR=${prefix}/include
|
|
|
|
default_variants +gsl +glpk +fftw +dsdp
|
|
}
|