Merge pull request #15685 from commodo/openblas
openblas: add initial package
This commit is contained in:
commit
038f890bca
1 changed files with 106 additions and 0 deletions
106
libs/openblas/Makefile
Normal file
106
libs/openblas/Makefile
Normal file
|
@ -0,0 +1,106 @@
|
|||
#
|
||||
# Copyright (C) 2021 Alexandru Ardelean <ardeleanalex@gmail.com>
|
||||
#
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=OpenBLAS
|
||||
PKG_VERSION:=0.3.15
|
||||
PKG_RELEASE:=$(AUTORELEASE)
|
||||
|
||||
PKG_SOURCE:=OpenBLAS-$(PKG_VERSION).tar.gz
|
||||
PKG_SOURCE_URL:=https://github.com/xianyi/OpenBLAS/releases/download/v$(PKG_VERSION)/
|
||||
PKG_HASH:=30a99dec977594b387a17f49904523e6bc8dd88bd247266e83485803759e4bbe
|
||||
PKG_LICENSE:=BSD 3-Clause
|
||||
PKG_MAINTAINER:=Alexandru Ardelean <ardeleanalex@gmail.com>
|
||||
|
||||
PKG_BUILD_PARALLEL:=1
|
||||
PKG_INSTALL:=1
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
define Package/openblas
|
||||
SECTION:=libs
|
||||
CATEGORY:=Libraries
|
||||
TITLE:=An optimized library for BLAS (Basic Linear Algebra Subprograms)
|
||||
URL:=https://www.openblas.net/
|
||||
DEPENDS:= \
|
||||
@!arc \
|
||||
@!powerpc \
|
||||
+INSTALL_GFORTRAN:libgfortran
|
||||
endef
|
||||
|
||||
define Package/openblas/description
|
||||
OpenBLAS is an optimized BLAS (Basic Linear Algebra Subprograms) library
|
||||
based on GotoBLAS2 1.13 BSD version.
|
||||
endef
|
||||
|
||||
define Package/openblas/config
|
||||
menu "Configuration"
|
||||
depends on PACKAGE_openblas
|
||||
|
||||
config OPENBLAS_TARGET_OVERRIDE
|
||||
string
|
||||
prompt "Manual CPU target override (from the OpenBLAS TargetList.txt file)"
|
||||
|
||||
endmenu
|
||||
endef
|
||||
|
||||
OPENBLAS_TARGET=$(call qstrip,$(CONFIG_OPENBLAS_TARGET_OVERRIDE))
|
||||
|
||||
ifeq ($(OPENBLAS_TARGET),)
|
||||
ifeq ($(ARCH),aarch64)
|
||||
OPENBLAS_TARGET:=ARMV8
|
||||
else ifeq ($(ARCH),arm)
|
||||
OPENBLAS_TARGET:=ARMV5
|
||||
else ifeq ($(ARCH),mips)
|
||||
OPENBLAS_TARGET:=MIPS24K
|
||||
else ifeq ($(ARCH),mipsel)
|
||||
OPENBLAS_TARGET:=MIPS24K
|
||||
else ifeq ($(ARCH),powerpc)
|
||||
OPENBLAS_TARGET:=PPC440
|
||||
else ifeq ($(ARCH),mips64)
|
||||
OPENBLAS_TARGET:=I6400
|
||||
else ifeq ($(ARCH),mips64el)
|
||||
OPENBLAS_TARGET:=I6400
|
||||
else ifeq ($(ARCH),i386)
|
||||
OPENBLAS_TARGET:=GENERIC
|
||||
else ifeq ($(ARCH),x86_64)
|
||||
OPENBLAS_TARGET:=GENERIC
|
||||
endif
|
||||
endif # ifeq ($(OPENBLAS_TARGET),)
|
||||
|
||||
ifeq ($(CONFIG_ARCH_64BIT),y)
|
||||
OPENBLAS_BINARY:=64
|
||||
else
|
||||
OPENBLAS_BINARY:=32
|
||||
endif
|
||||
|
||||
MAKE_FLAGS += \
|
||||
CROSS=1 \
|
||||
HOSTCC=$(HOSTCC) \
|
||||
CROSS_SUFFIX=$(TARGET_CROSS) \
|
||||
BINARY=$(OPENBLAS_BINARY) \
|
||||
NUM_THREADS=2 \
|
||||
PREFIX=/usr \
|
||||
COMMON_OPT="" \
|
||||
TARGET=$(call qstrip,$(OPENBLAS_TARGET))
|
||||
|
||||
ifneq ($(CONFIG_INSTALL_GFORTRAN),y)
|
||||
MAKE_FLAGS += NOFORTRAN=1
|
||||
endif
|
||||
|
||||
define Build/InstallDev
|
||||
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
|
||||
$(INSTALL_DIR) $(1)/usr/include
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(1)/usr/lib/
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* $(1)/usr/lib/pkgconfig/
|
||||
endef
|
||||
|
||||
define Package/openblas/install
|
||||
$(INSTALL_DIR) $(1)/usr/lib
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libopenblas*.so* $(1)/usr/lib/
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,openblas))
|
Loading…
Reference in a new issue