blob: 8d98496560994d35a859d61cc240264d1b588746 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
PORTNAME= blasfeo
DISTVERSION= 0.1.4.1
PORTREVISION= 1
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
CMAKE_TESTING_TARGET=
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
post-test: # run tests
.for t in test_d_blas_api test_d_blasfeo_api test_s_blas_api test_s_blasfeo_api
@${ECHO} "==> Running test ${t}"
@cd ${TEST_WRKSRC} && tests/${t}
.endfor
.include <bsd.port.mk>
|