mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-28 10:08:24 +00:00
a86016e8f6
/!\ Avoid mixing libraries using different BLAS-LAPACK implementations!
65 lines
1.5 KiB
Makefile
65 lines
1.5 KiB
Makefile
# Handle dependencies on Blas / Lapack
|
|
#
|
|
# Feature: blaslapack
|
|
# Usage: USES=blaslapack or USES=blaslapack:ARGS
|
|
# Valid ARGS: atlas blis flexiblas netlib (default) openblas
|
|
#
|
|
# Provides: BLASLIB and LAPACKLIB
|
|
#
|
|
# Maintainer: thierry@FreeBSD.org
|
|
#
|
|
# /!\ Avoid mixing libraries using different BLAS-LAPACK implementations!
|
|
|
|
.if !defined(_INCLUDE_USES_BLASLAPACK_MK)
|
|
_INCLUDE_USES_BLASLAPACK_MK= yes
|
|
|
|
_valid_ARGS= atlas blis flexiblas netlib openblas
|
|
|
|
_DEFAULT_BLASLAPACK= netlib
|
|
|
|
. if empty(blaslapack_ARGS)
|
|
blaslapack_ARGS= ${_DEFAULT_BLASLAPACK}
|
|
. endif
|
|
|
|
LDFLAGS+= -L${LOCALBASE}/lib
|
|
|
|
. if ${blaslapack_ARGS} == atlas
|
|
LIB_DEPENDS+= libatlas.so:math/atlas
|
|
_BLASLIB= ptf77blas
|
|
LAPACKLIB= -lalapack -lptcblas
|
|
_ATLASLIB= atlas
|
|
ATLASLIB= -l${_ATLASLIB}
|
|
BLA_VENDOR= ATLAS
|
|
. elif ${blaslapack_ARGS} == blis
|
|
LIB_DEPENDS+= libblis.so:math/blis
|
|
LIB_DEPENDS+= libflame.so:math/libflame
|
|
_BLASLIB= blis
|
|
LAPACKLIB= -lflame
|
|
BLA_VENDOR= FLAME
|
|
. elif ${blaslapack_ARGS} == flexiblas
|
|
LIB_DEPENDS+= libflexiblas.so:math/flexiblas
|
|
_BLASLIB= flexiblas
|
|
BLA_VENDOR= FlexiBLAS
|
|
. elif ${blaslapack_ARGS} == netlib
|
|
LIB_DEPENDS+= libblas.so:math/blas
|
|
LIB_DEPENDS+= liblapack.so:math/lapack
|
|
_BLASLIB= blas
|
|
LAPACKLIB= -llapack
|
|
BLA_VENDOR= Generic
|
|
. elif ${blaslapack_ARGS} == openblas
|
|
LIB_DEPENDS+= libopenblas.so:math/openblas
|
|
_BLASLIB= openblas
|
|
LAPACKLIB= -lopenblas
|
|
BLA_VENDOR= OpenBLAS
|
|
. else
|
|
IGNORE= USES=blaslapack: invalid arguments: ${blaslapack_ARGS}
|
|
. endif
|
|
|
|
BLASLIB= -l${_BLASLIB}
|
|
|
|
. if ${USES:Mcmake} || ${USES:Mcmake\:*}
|
|
CONFIGURE_ENV+= BLA_VENDOR="${BLA_VENDOR}"
|
|
. endif
|
|
|
|
.endif
|