Debian Patches

Status for coinor-csdp/6.2.0-8

Patch Description Author Forwarded Bugs Origin Last update
include-stdio.patch Include <stdio.h> to avoid declaring printf implicitly no https://github.com/coin-or/Csdp/commit/a346b2f 2026-08-16
makefile.patch Make the build configurable instead of hardcoded What changed and why
--------------------
.
The top level Makefile hardcodes CFLAGS and LIBS with "export", which cannot
be overridden usefully: a makefile assignment beats the environment, so
"CFLAGS=... make" is silently ignored, while "make CFLAGS=..." replaces the
whole line, taking -I../include and the feature macros with it. There is no
LDFLAGS at all.
.
The flags the build itself requires are now kept apart from the ones the
user owns (CPPFLAGS, CFLAGS, LDFLAGS, BLAS_LIBS, LIBS), so that neither can
clobber the other. The feature macros are detected rather than asserted,
and -m64, -march=native, -Ofast, -ansi and -static are gone from the
defaults; -std=gnu99 replaces -ansi, since the sources use K&R definitions
that C23 removed. GNU rather than strict mode, because the code calls
POSIX interfaces that a strict mode is not obliged to declare. GNU make is
now required.
.
Configuring the build
---------------------
.
Every variable below can be set in the environment or on the make command
line:
.
make CC=clang CFLAGS="-O3 -g" BLAS_LIBS="-lopenblas"
.
CC The C compiler. Default: cc
CFLAGS Optimization and warning flags. Default: -O2 -Wall.
CSDP is a numerical code, so -Ofast is not recommended.
CPPFLAGS Additional preprocessor flags.
LDFLAGS Additional linker flags.
BLAS_LIBS The BLAS and LAPACK libraries, plus any Fortran run time
library they need. Default: -llapack -lblas
LIBS Anything else to link against. Additive, with no
default, so that a build system exporting an empty LIBS
-- as FreeBSD's bsd.port.mk does -- cannot knock out the
BLAS.
OPENMP_CFLAGS The flag that enables OpenMP. Default: -fopenmp
OPENMP_LIBS The corresponding link flag. Default: empty
prefix Installation prefix. Default: /usr/local
exec_prefix Default: $(prefix)
bindir Where the programs go. Default: $(exec_prefix)/bin
DESTDIR Staging directory prepended to the install paths.
TOOL_PREFIX A prefix for the installed names of theta, complement,
graphtoprob and rand_graph, whose names are generic.
TOOL_PREFIX=csdp- installs csdp-theta and so on. The
solver is always installed as csdp.
.
With OpenBLAS, which supplies both BLAS and LAPACK:
.
make BLAS_LIBS="-L/opt/OpenBLAS/lib -lopenblas"
.
On macOS, with Accelerate and Homebrew's libomp:
.
make BLAS_LIBS="-framework Accelerate" \
OPENMP_CFLAGS="-Xpreprocessor -fopenmp -I$(brew --prefix libomp)/include" \
OPENMP_LIBS="-L$(brew --prefix libomp)/lib -lomp"
.
Without OpenMP at all:
.
make OPENMP_CFLAGS=
.
To install into a staging directory:
.
make install DESTDIR=/tmp/stage prefix=/usr TOOL_PREFIX=csdp-
.
Finally, -DCAPSBLAS, -DCAPSLAPACK, -DNOUNDERBLAS, -DNOUNDERLAPACK and
-DHIDDENSTRLEN may rarely be needed, if the BLAS or LAPACK symbols are
capitalized, lack a trailing underscore, or take hidden Fortran string
lengths. Pass them in CPPFLAGS.

diff --git a/Makefile b/Makefile
index 3430806..6190dd6 100644
Claude Opus 5 <noreply@anthropic.com> yes 2026-08-16
shared-library.patch Add support for building a shared library
diff --git a/Makefile b/Makefile
index 6190dd6..8c7af3f 100644
Claude Opus 5 <noreply@anthropic.com> yes 2026-08-16

All known versions for source package 'coinor-csdp'

Links