freebsd-ports/math/blasfeo/Makefile
2024-01-01 12:49:51 +01:00

44 lines
1.5 KiB
Makefile

PORTNAME= blasfeo
DISTVERSION= 0.1.3-59
PORTREVISION= 2
DISTVERSIONSUFFIX= -g8548ea2c
CATEGORIES= math
MAINTAINER= yuri@FreeBSD.org
COMMENT= Basic Linear Algebra Subroutines For Embedded Optimization
WWW= https://github.com/giaf/blasfeo
LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/LICENSE.txt
LIB_DEPENDS= libblas.so:math/blas
USES= cmake:testing
USE_GITHUB= yes
GH_ACCOUNT= giaf
LDFLAGS+= -L${LOCALBASE}/lib -lblas
CMAKE_ARGS= -DTARGET:STRING=GENERIC
CMAKE_ON= BUILD_SHARED_LIBS
CMAKE_OFF= BLASFEO_EXAMPLES
CMAKE_TESTING_ON= BLASFEO_TESTING # tests fail to compile, see https://github.com/giaf/blasfeo/issues/164
OPTIONS_SINGLE= ${OPTIONS_SINGLE_${ARCH}}
OPTIONS_SINGLE_amd64= TARGETAMD64
OPTIONS_SINGLE_TARGETAMD64= GENERIC X64_INTEL_HASWELL X64_INTEL_SANDY_BRIDGE X64_INTEL_CORE X64_AMD_BULLDOZER
OPTIONS_DEFAULT_amd64= GENERIC
# TODO ARM also has SIMD acceleration
GENERIC_DESC= Generic C code without SIMD acceleration
X64_INTEL_HASWELL_DESC= x86_64 architecture with AVX2 and FMA ISA (64 bit OS)
X64_INTEL_SANDY_BRIDGE_DESC= x86_64 architecture with AVX ISA (64 bit OS)
X64_INTEL_CORE_DESC= x86_64 architecture with SSE3 (64 bit OS)
X64_AMD_BULLDOZER_DESC= x86_64 architecture with AVX and FMA ISA (64 bit OS)
X64_INTEL_HASWELL_CMAKE_ON= -DTARGET:STRING=X64_INTEL_HASWELL
X64_INTEL_SANDY_BRIDGE_CMAKE_ON= -DTARGET:STRING=X64_INTEL_SANDY_BRIDGE
X64_INTEL_CORE_CMAKE_ON= -DTARGET:STRING=X64_INTEL_CORE
X64_AMD_BULLDOZER_CMAKE_ON= -DTARGET:STRING=X64_AMD_BULLDOZER
.include <bsd.port.mk>