summaryrefslogtreecommitdiffstats
path: root/math
diff options
context:
space:
mode:
Diffstat (limited to 'math')
-rw-r--r--math/openblas/Makefile15
-rw-r--r--math/openblas/files/patch-cpuid__arm64.c11
2 files changed, 20 insertions, 6 deletions
diff --git a/math/openblas/Makefile b/math/openblas/Makefile
index 21288dd9..f819166 100644
--- a/math/openblas/Makefile
+++ b/math/openblas/Makefile
@@ -33,7 +33,14 @@ OPENBLAS_SVER= 0
OPENBLAS_FILES= ${OPENBLAS_LIBS:S|$|.so|} ${OPENBLAS_LIBS:S|$|.so.${OPENBLAS_SVER}|} ${OPENBLAS_LIBS:S|$|.a|}
PLIST_FILES= ${OPENBLAS_FILES:S|^|lib/|}
-OPTIONS_DEFINE= DYNAMIC_ARCH INTERFACE64 OPENMP AVX AVX2
+OPTIONS_DEFINE= INTERFACE64 OPENMP
+OPTIONS_DEFINE_i386= DYNAMIC_ARCH AVX AVX2
+OPTIONS_DEFINE_amd64= ${OPTIONS_DEFINE_i386}
+
+.if defined(BATCH) || defined(PACKAGE_BUILDING)
+OPTIONS_DEFAULT_i386= DYNAMIC_ARCH
+OPTIONS_DEFAULT_amd64= DYNAMIC_ARCH
+.endif
DYNAMIC_ARCH_DESC= Support multiple CPU types on i386 and amd64
INTERFACE64_DESC= Use 8 byte integers on 64-bit architectures
@@ -41,10 +48,6 @@ OPENMP_DESC= Use OpenMP for threading
AVX_DESC= Support Advanced Vector Extensions (AVX)
AVX2_DESC= Support Advanced Vector Extensions 2 (AVX2)
-.if defined(BATCH) || defined(PACKAGE_BUILDING)
-OPTIONS_DEFAULT= DYNAMIC_ARCH
-.endif
-
.include <bsd.port.options.mk>
.if defined(TARGET_CPU_ARCH)
@@ -60,7 +63,7 @@ BUILDFLAGS+= BINARY32=1
BUILDFLAGS+= BINARY64=1
.endif
-.if ! ( ${PORT_OPTIONS:MDYNAMIC_ARCH} && ( ${ARCH} == "amd64" || ${ARCH} == "i386" ) )
+.if ! ${PORT_OPTIONS:MDYNAMIC_ARCH} && ( ${ARCH} == "amd64" || ${ARCH} == "i386" )
MANUAL_PACKAGE_BUILD= Optimizes for the build machine.
.endif
diff --git a/math/openblas/files/patch-cpuid__arm64.c b/math/openblas/files/patch-cpuid__arm64.c
new file mode 100644
index 0000000..a0d2451
--- /dev/null
+++ b/math/openblas/files/patch-cpuid__arm64.c
@@ -0,0 +1,11 @@
+--- cpuid_arm64.c.orig 2016-09-01 03:58:42 UTC
++++ cpuid_arm64.c
+@@ -132,6 +132,8 @@ int detect(void)
+
+
+ }
++#else
++ return CPU_ARMV8;
+ #endif
+
+ return CPU_UNKNOWN;
OpenPOWER on IntegriCloud