1config BR2_PACKAGE_OPENBLAS_DEFAULT_TARGET 2 string 3 default "P2" if BR2_x86_pentium2 4 default "KATMAI" if BR2_x86_pentium3 5 default "NORTHWOOD" if BR2_x86_pentium4 6 default "PRESCOTT" if BR2_x86_prescott || BR2_x86_nocona 7 default "BANIAS" if BR2_x86_pentium_m 8 default "CORE2" if BR2_x86_core2 9 default "NEHALEM" if BR2_x86_corei7 || BR2_x86_silvermont || BR2_x86_westmere 10 default "SANDYBRIDGE" if BR2_x86_corei7_avx 11 default "HASWELL" if BR2_x86_core_avx2 12 default "ATOM" if BR2_x86_atom 13 default "ATHLON" if BR2_x86_athlon || BR2_x86_athlon_4 14 default "OPTERON" if BR2_x86_opteron 15 default "OPTERON_SSE3" if BR2_x86_opteron_sse3 16 default "BARCELONA" if BR2_x86_barcelona 17 default "BOBCAT" if BR2_x86_jaguar 18 default "STEAMROLLER" if BR2_x86_steamroller 19 default "VIAC3" if BR2_x86_c3 || BR2_x86_c32 20 default "POWER4" if BR2_powerpc_power4 21 default "POWER5" if BR2_powerpc_power5 22 default "POWER6" if BR2_powerpc_power6 23 default "POWER7" if BR2_powerpc_power7 24 default "POWER8" if BR2_powerpc_power8 25 default "PPCG4" if BR2_powerpc_7400 || BR2_powerpc_7450 26 default "PPC970" if BR2_powerpc_970 27 default "PPC440" if BR2_powerpc_440 28 default "PPC440FP2" if BR2_powerpc_440fp 29 default "MIPS64_GENERIC" if BR2_MIPS_CPU_MIPS64 30 # OpenBLAS assumes SPARC=Sparc v9 31 default "SPARC" if BR2_sparc_v9 32 # Cortex-A15 always have a VFPv4 33 default "CORTEXA15" if (BR2_cortex_a15 && BR2_ARM_EABIHF) 34 # Cortex-A9 have an optional VFPv3, so we need to make sure it 35 # is available 36 default "CORTEXA9" if (BR2_cortex_a9 && BR2_ARM_EABIHF && \ 37 BR2_ARM_CPU_HAS_VFPV3) 38 default "ARMV5" if BR2_ARM_CPU_ARMV5 39 # On ARMv6, OpenBLAS assumes that a VFP is available, and 40 # EABIhf is used 41 default "ARMV6" if (BR2_ARM_CPU_ARMV6 && BR2_ARM_EABIHF && \ 42 BR2_ARM_CPU_HAS_VFPV2) 43 # On ARMv7, OpenBLAS assumes that a full VFPv3+ is available 44 # (and not the more limited D16 variant), and that EABIhf is 45 # used. 46 default "ARMV7" if (BR2_ARM_CPU_ARMV7A && BR2_ARM_EABIHF && \ 47 BR2_ARM_CPU_HAS_VFPV3) 48 default "ARMV8" if BR2_aarch64 || BR2_aarch64_be 49 default "RISCV64_GENERIC" if BR2_RISCV_64 50 help 51 OpenBLAS target CPU. See TargetList.txt in the source tree for 52 the possible target strings. A possible value is set 53 automatically based on your Target Architecture Variant. 54 55config BR2_PACKAGE_OPENBLAS_ARCH_SUPPORTS 56 bool 57 default y if BR2_PACKAGE_OPENBLAS_DEFAULT_TARGET != "" 58 59config BR2_PACKAGE_OPENBLAS 60 bool "openblas" 61 depends on BR2_PACKAGE_OPENBLAS_ARCH_SUPPORTS 62 help 63 An optimized BLAS library based on GotoBLAS2 1.13 BSD version. 64 65 https://www.openblas.net/ 66 67if BR2_PACKAGE_OPENBLAS 68 69config BR2_PACKAGE_OPENBLAS_TARGET 70 string "OpenBLAS target CPU" 71 default BR2_PACKAGE_OPENBLAS_DEFAULT_TARGET 72 73config BR2_PACKAGE_OPENBLAS_USE_THREAD 74 bool "use multithreading" 75 default y 76 depends on BR2_TOOLCHAIN_HAS_THREADS 77 depends on !BR2_STATIC_LIBS 78 help 79 Tell OpenBLAS to use multithreading, by passing USE_THREAD=1. 80 81config BR2_PACKAGE_OPENBLAS_USE_LOCKING 82 bool "use locking" 83 default y 84 depends on BR2_TOOLCHAIN_HAS_THREADS 85 depends on !BR2_PACKAGE_OPENBLAS_USE_THREAD 86 help 87 Tell OpenBLAS to use locking, by passing USE_LOCKING=1. 88 Locking is implicitly enabled when USE_THREAD=1. 89 However, if USE_THREAD=0 (i.e. OpenBLAS itself will run in 90 single-threaded mode) but an application makes OpenBLAS 91 function calls from multiple threads, then locking is 92 mandatory for correct operation. 93 94config BR2_PACKAGE_OPENBLAS_INSTALL_TESTS 95 bool "install tests" 96 help 97 Install C test programs on target. 98 99endif 100