1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-24 00:45:52 +00:00

Adding ports/Mk/Uses/blaslapack.mk.

It handles the dependencies and defines BLASLIB and LAPACKLIB for the
different blas / lapack implementations.

It defaults to netlib, the reference libraries, but Openblas, Gotoblas
or ATLAS can be selected.

Differential Revision:	D1354
This commit is contained in:
Thierry Thomas 2015-01-05 20:43:02 +00:00
parent 4d42227341
commit 878a54f873
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=376359

52
Mk/Uses/blaslapack.mk Normal file
View File

@ -0,0 +1,52 @@
# $FreeBSD$
#
# Handle dependencies on Blas / Lapack
#
# Feature: blaslapack
# Usage: USES=blaslapack or USES=blaslapack:ARGS
# Valid ARGS: atlas netlib gotoblas openblas (default)
#
# Provides: BLASLIB and LAPACKLIB
#
# Maintainer: thierry@FreeBSD.org
.if !defined(_INCLUDE_USES_BLASLAPACK_MK)
_INCLUDE_USES_BLASLAPACK_MK= yes
_valid_ARGS= atlas gotoblas 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:${PORTSDIR}/math/atlas
_BLASLIB= ptf77blas
LAPACKLIB= -lalapack -lptcblas
_ATLASLIB= atlas
ATLASLIB= -l${_ATLASLIB}
.elif ${blaslapack_ARGS} == gotoblas
LIB_DEPENDS+= libgoto2.so:${PORTSDIR}/math/gotoblas
LIB_DEPENDS+= liblapack.so:${PORTSDIR}/math/lapack
_BLASLIB= goto2p
LAPACKLIB= -lgoto2p
.elif ${blaslapack_ARGS} == netlib
LIB_DEPENDS+= libblas.so:${PORTSDIR}/math/blas
LIB_DEPENDS+= liblapack.so:${PORTSDIR}/math/lapack
_BLASLIB= blas
LAPACKLIB= -llapack
.elif ${blaslapack_ARGS} == openblas
LIB_DEPENDS+= libopenblas.so:${PORTSDIR}/math/openblas
_BLASLIB= openblasp
LAPACKLIB= -lopenblasp
.else
IGNORE= USES=blaslapack: invalid arguments: ${blaslapack_ARGS}
.endif
BLASLIB= -l${_BLASLIB}
.endif