Update buidlroot to version 2016.08.1
This commit is contained in:
69
bsp/buildroot/package/openblas/openblas.mk
Normal file
69
bsp/buildroot/package/openblas/openblas.mk
Normal file
@@ -0,0 +1,69 @@
|
||||
################################################################################
|
||||
#
|
||||
# openblas
|
||||
#
|
||||
################################################################################
|
||||
|
||||
OPENBLAS_VERSION = f04af36ad0e85b64f12a7c38095383192cc52345
|
||||
OPENBLAS_SITE = $(call github,xianyi,OpenBLAS,$(OPENBLAS_VERSION))
|
||||
OPENBLAS_LICENSE = BSD-3c
|
||||
OPENBLAS_LICENSE_FILES = LICENSE
|
||||
OPENBLAS_INSTALL_STAGING = YES
|
||||
|
||||
# Initialise OpenBLAS make options to $(TARGET_CONFIGURE_OPTS)
|
||||
OPENBLAS_MAKE_OPTS = $(TARGET_CONFIGURE_OPTS)
|
||||
|
||||
# Enable cross-compiling
|
||||
OPENBLAS_MAKE_OPTS += CROSS=1
|
||||
|
||||
# Set OpenBLAS target
|
||||
OPENBLAS_MAKE_OPTS += TARGET=$(BR2_PACKAGE_OPENBLAS_TARGET)
|
||||
|
||||
# When Fortran is not available, only build the C version of BLAS
|
||||
ifeq ($(BR2_TOOLCHAIN_HAS_FORTRAN),)
|
||||
OPENBLAS_MAKE_OPTS += ONLY_CBLAS=1
|
||||
endif
|
||||
|
||||
# Enable/Disable multi-threading (not for static-only since it uses dlfcn.h)
|
||||
ifeq ($(BR2_TOOLCHAIN_HAS_THREADS):$(BR2_STATIC_LIBS),y:)
|
||||
OPENBLAS_MAKE_OPTS += USE_THREAD=1
|
||||
else
|
||||
OPENBLAS_MAKE_OPTS += USE_THREAD=0
|
||||
endif
|
||||
|
||||
# Static-only/Shared-only toggle
|
||||
ifeq ($(BR2_STATIC_LIBS),y)
|
||||
OPENBLAS_MAKE_OPTS += NO_SHARED=1
|
||||
else ifeq ($(BR2_SHARED_LIBS),y)
|
||||
OPENBLAS_MAKE_OPTS += NO_STATIC=1
|
||||
endif
|
||||
|
||||
# binutils version <= 2.23.2 has a bug
|
||||
# (https://sourceware.org/bugzilla/show_bug.cgi?id=14887) where
|
||||
# whitespaces in ARM register specifications such as [ r1, #12 ] or [
|
||||
# r2 ] cause the assembler to reject the code. Since there are
|
||||
# numerous instances of such cases in the code, we use sed rather than
|
||||
# a patch. We simply replace [ foobar ] by [foobar] to work around the
|
||||
# problem.
|
||||
define OPENBLAS_FIXUP_ARM_ASSEMBLY
|
||||
$(SED) 's%\[\s*%\[%;s%\s*\]%\]%' $(@D)/kernel/arm/*.S
|
||||
endef
|
||||
|
||||
OPENBLAS_POST_PATCH_HOOKS += OPENBLAS_FIXUP_ARM_ASSEMBLY
|
||||
|
||||
define OPENBLAS_BUILD_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE) $(OPENBLAS_MAKE_OPTS) \
|
||||
-C $(@D)
|
||||
endef
|
||||
|
||||
define OPENBLAS_INSTALL_STAGING_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE) $(OPENBLAS_MAKE_OPTS) \
|
||||
-C $(@D) install PREFIX=$(STAGING_DIR)/usr
|
||||
endef
|
||||
|
||||
define OPENBLAS_INSTALL_TARGET_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE) $(OPENBLAS_MAKE_OPTS) \
|
||||
-C $(@D) install PREFIX=$(TARGET_DIR)/usr
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
||||
Reference in New Issue
Block a user