1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-18 08:02:48 +00:00

New port: math/csdp: Solver for semidefinite programming problems

This commit is contained in:
Yuri Victorovich 2019-12-22 00:55:53 +00:00
parent f2b5cb0cad
commit c4081f1fe7
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=520600
5 changed files with 84 additions and 0 deletions

View File

@ -197,6 +197,7 @@
SUBDIR += cppad
SUBDIR += crlibm
SUBDIR += cryptominisat
SUBDIR += csdp
SUBDIR += curv
SUBDIR += cvc3
SUBDIR += cvc4

37
math/csdp/Makefile Normal file
View File

@ -0,0 +1,37 @@
# $FreeBSD$
PORTNAME= csdp
DISTVERSIONPREFIX= releases/
DISTVERSION= 6.2.0
CATEGORIES= math
PKGNAMEPREFIX= coin-or-
MAINTAINER= yuri@FreeBSD.org
COMMENT= Solver for semidefinite programming problems
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
LIB_DEPENDS= libblas.so:math/blas \
liblapack.so:math/lapack
USES= gmake
USE_GITHUB= yes
GH_ACCOUNT= coin-or
GH_PROJECT= Csdp
USE_LDCONFIG= yes
MAKE_ARGS= FREEBSD_CFLAGS="${CFLAGS}" FREEBSD_LIBS="${LIBS} -L${LOCALBASE}/lib"
BINARY_ALIAS= make=${GMAKE}
PLIST_FILES= bin/complement \
bin/csdp \
bin/graphtoprob \
bin/rand_graph \
bin/theta
post-stage:
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/*
.include <bsd.port.mk>

3
math/csdp/distinfo Normal file
View File

@ -0,0 +1,3 @@
TIMESTAMP = 1576975110
SHA256 (coin-or-Csdp-releases-6.2.0_GH0.tar.gz) = 3d341974af1f8ed70e1a37cc896e7ae4a513375875e5b46db8e8f38b7680b32f
SIZE (coin-or-Csdp-releases-6.2.0_GH0.tar.gz) = 523556

View File

@ -0,0 +1,33 @@
--- Makefile.orig 2017-07-25 18:44:57 UTC
+++ Makefile
@@ -11,11 +11,11 @@
#
# CFLAGS settings for 64 bit Linux/unix systems.
#
-export CFLAGS=-m64 -march=native -mtune=native -Ofast -fopenmp -ansi -Wall -DBIT64 -DUSEOPENMP -DSETNUMTHREADS -DUSESIGTERM -DUSEGETTIME -I../include
+CFLAGS=$(FREEBSD_CFLAGS) -fopenmp -ansi -Wall -DBIT64 -DUSEOPENMP -DSETNUMTHREADS -DUSESIGTERM -DUSEGETTIME -I../include
#
# LIBS settings for 64 bit Linux/unix systems.
#
-export LIBS=-static -L../lib -lsdp -llapack -lblas -lm
+LIBS=$(FREEBSD_LIBS) -L../lib -lsdp -llapack -lblas -lm
#
#
# On most systems, this should handle everything.
@@ -38,11 +38,11 @@ unitTest:
#
install:
- cp -f solver/csdp /usr/local/bin
- cp -f theta/theta /usr/local/bin
- cp -f theta/graphtoprob /usr/local/bin
- cp -f theta/complement /usr/local/bin
- cp -f theta/rand_graph /usr/local/bin
+ cp -f solver/csdp $(DESTDIR)$(PREFIX)/bin
+ cp -f theta/theta $(DESTDIR)$(PREFIX)/bin
+ cp -f theta/graphtoprob $(DESTDIR)$(PREFIX)/bin
+ cp -f theta/complement $(DESTDIR)$(PREFIX)/bin
+ cp -f theta/rand_graph $(DESTDIR)$(PREFIX)/bin
#
# Clean out all of the directories.

10
math/csdp/pkg-descr Normal file
View File

@ -0,0 +1,10 @@
CSDP is a library of routines that implements a predictor corrector variant of
the semidefinite programming algorithm of Helmberg, Rendl, Vanderbei, and
Wolkowicz. The main advantages of this code are that it is written to be used as
a callable subroutine, it is written in C for efficiency, the code runs in
parallel on shared memory multi-processor systems, and it makes effective use of
sparsity in the constraint matrices. CSDP has been compiled on many different
systems. The code should work on any system with an ANSI C Compiler and
BLAS/LAPACK libraries.
WWW: https://github.com/coin-or/Csdp