#
|
# CDDL HEADER START
|
#
|
# The contents of this file are subject to the terms of the
|
# Common Development and Distribution License (the "License").
|
# You may not use this file except in compliance with the License.
|
#
|
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
|
# or http://www.illumos.org/license/CDDL.
|
# See the License for the specific language governing permissions
|
# and limitations under the License.
|
#
|
# When distributing Covered Code, include this CDDL HEADER in each
|
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
|
# If applicable, add the following below this CDDL HEADER, with the
|
# fields enclosed by brackets "[]" replaced with your own identifying
|
# information: Portions Copyright [yyyy] [name of copyright owner]
|
#
|
# CDDL HEADER END
|
#
|
# Copyright (c) 2014-2017, Aurelien Larcher. All rights reserved.
|
# Copyright (c) 2022 Niklas Poslovski
|
#
|
BUILD_STYLE= justmake
|
include ../../../make-rules/shared-macros.mk
|
|
COMPONENT_NAME= openblas
|
COMPONENT_VERSION= 0.3.27
|
COMPONENT_SUMMARY= Optimized BLAS library based on GotoBLAS2
|
COMPONENT_SRC= OpenBLAS-$(COMPONENT_VERSION)
|
COMPONENT_PROJECT_URL= https://www.openblas.net
|
COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz
|
COMPONENT_ARCHIVE_HASH= sha256:aa2d68b1564fe2b13bc292672608e9cdeeeb6dc34995512e65c3b10f4599e897
|
COMPONENT_ARCHIVE_URL= https://github.com/xianyi/OpenBLAS/archive/refs/tags/v$(COMPONENT_VERSION).tar.gz
|
COMPONENT_FMRI= library/math/openblas
|
COMPONENT_CLASSIFICATION= Development/High Performance Computing
|
COMPONENT_LICENSE= BSD 3-Clause
|
COMPONENT_LICENSE_FILE= LICENSE
|
|
# Numerical libraries should be shipped as static libs as it is still common in scientific computing projects
|
# See discussion here: https://github.com/OpenIndiana/oi-userland/pull/9459
|
DROP_STATIC_LIBRARIES= no
|
|
TEST_TARGET= $(NO_TESTS)
|
include $(WS_MAKE_RULES)/common.mk
|
|
PATH= $(PATH.gnu)
|
|
# In a virtualized environment getarch cannot detect the architecture.
|
# It falls back to INTEL_UKNOWN which causes failure of the build.
|
# The option TARGET=GENERIC has to be passed to force detection.
|
COMPONENT_BUILD_GMAKE_ARGS= PREFIX=$(USRDIR) \
|
DYNAMIC_ARCH=1 \
|
TARGET=PRESCOTT \
|
BINARY=$(BITS) \
|
CROSS_SUFFIX="" \
|
FC=$(FC) CC=$(CC) \
|
COMMON_OPT="$(CFLAGS) -Wa,--divide" \
|
NO_LAPACKE=1 \
|
USE_OPENMP=0 \
|
USE_THREAD=1 \
|
NUM_THREADS=64 \
|
EXTRALIB=-lm
|
|
COMPONENT_INSTALL_ARGS= PREFIX=$(PROTOUSRDIR) MACHDIR=$(MACH64)
|
|
# Auto-generated dependencies
|
REQUIRED_PACKAGES += system/library
|
REQUIRED_PACKAGES += system/library/math
|