summaryrefslogtreecommitdiffstats
path: root/meta-offline-voice-agent/recipes-blas/openblas/openblas_git.bb
diff options
context:
space:
mode:
Diffstat (limited to 'meta-offline-voice-agent/recipes-blas/openblas/openblas_git.bb')
-rw-r--r--meta-offline-voice-agent/recipes-blas/openblas/openblas_git.bb61
1 files changed, 61 insertions, 0 deletions
diff --git a/meta-offline-voice-agent/recipes-blas/openblas/openblas_git.bb b/meta-offline-voice-agent/recipes-blas/openblas/openblas_git.bb
new file mode 100644
index 00000000..84e76542
--- /dev/null
+++ b/meta-offline-voice-agent/recipes-blas/openblas/openblas_git.bb
@@ -0,0 +1,61 @@
+DESCRIPTION = "OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version."
+SUMMARY = "OpenBLAS : An optimized BLAS library"
+HOMEPAGE = "http://www.openblas.net/"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=5adf4792c949a00013ce25d476a2abc0"
+
+SRC_URI = "\
+ git://github.com/xianyi/OpenBLAS;protocol=https;branch=develop \
+"
+
+# tag 0.3.20
+SRCREV = "0b678b19dc03f2a999d6e038814c4c50b9640a4e"
+S = "${WORKDIR}/git"
+
+DEPENDS += "libgfortran"
+
+def map_arch(d):
+ import re
+ arch = d.getVar('TARGET_ARCH', True)
+ if re.match('i.86$', arch): return 'ATOM'
+ elif re.match('x86_64$', arch): return 'ATOM'
+ elif re.match('aarch32$', arch): return 'CORTEXA9'
+ elif re.match('aarch64$', arch): return 'ARMV8'
+ return 'CORTEXA15'
+
+def map_bits(d):
+ import re
+ arch = d.getVar('TARGET_ARCH', True)
+ if re.match('i.86$', arch): return 32
+ elif re.match('x86_64$', arch): return 64
+ elif re.match('aarch32$', arch): return 32
+ elif re.match('aarch64$', arch): return 64
+ return 32
+
+EXTRA_OEMAKE = "\
+ BUILD_WITHOUT_LAPACK=OFF \
+ HOSTCC=${BUILD_CC} \
+ CROSS=1 \
+ CROSS_SUFFIX=${TARGET_PREFIX} \
+ BINARY=${@map_bits(d)} \
+ TARGET=${@map_arch(d)} \
+ OPENBLAS_LIBRARY_DIR=${D}${libdir} \
+ DYNAMIC_ARCH=ON \
+ BUILD_STATIC_LIBS=ON \
+ USE_LOCKING=1 \
+ USE_THREAD=0 \
+"
+
+do_install() {
+ oe_runmake PREFIX=${D}${prefix} install
+ rm -rf ${D}${bindir} ${D}${libdir}/cmake
+ # fixup pkgconfig file
+ sed -i -e "s#libdir=/.*#libdir=${libdir}#" ${D}${libdir}/pkgconfig/openblas.pc
+ sed -i -e "s#includedir=/.*#includedir=${includedir}#" ${D}${libdir}/pkgconfig/openblas.pc
+
+ cat ${D}${libdir}/pkgconfig/openblas.pc
+
+}
+
+FILES:${PN}-dev = "${includedir} ${libdir}/lib${PN}.so"
+FILES:${PN} = "${libdir}/*"