parent
24841be919
commit
e1e30d6f32
@ -0,0 +1,122 @@
|
||||
diff -Naur armadillo-9.900.2/cmake_aux/Modules/ARMA_FindFlexiBLAS.cmake armadillo-9.900.2-flexiblas/cmake_aux/Modules/ARMA_FindFlexiBLAS.cmake
|
||||
--- armadillo-9.900.2/cmake_aux/Modules/ARMA_FindFlexiBLAS.cmake 1970-01-01 10:00:00.000000000 +1000
|
||||
+++ armadillo-9.900.2-flexiblas/cmake_aux/Modules/ARMA_FindFlexiBLAS.cmake 2020-08-05 19:53:10.573438536 +1000
|
||||
@@ -0,0 +1,48 @@
|
||||
+set(FlexiBLAS_NAMES)
|
||||
+set(FlexiBLAS_NAMES ${FlexiBLAS_NAMES} flexiblas)
|
||||
+
|
||||
+set(FlexiBLAS_TMP_LIBRARY)
|
||||
+set(FlexiBLAS_TMP_LIBRARIES)
|
||||
+
|
||||
+
|
||||
+foreach (FlexiBLAS_NAME ${FlexiBLAS_NAMES})
|
||||
+ find_library(${FlexiBLAS_NAME}_LIBRARY
|
||||
+ NAMES ${FlexiBLAS_NAME}
|
||||
+ PATHS ${CMAKE_SYSTEM_LIBRARY_PATH} /lib64 /lib /usr/lib64 /usr/lib /usr/local/lib64 /usr/local/lib /opt/local/lib64 /opt/local/lib
|
||||
+ )
|
||||
+
|
||||
+ set(FlexiBLAS_TMP_LIBRARY ${${FlexiBLAS_NAME}_LIBRARY})
|
||||
+
|
||||
+ if(FlexiBLAS_TMP_LIBRARY)
|
||||
+ set(FlexiBLAS_TMP_LIBRARIES ${FlexiBLAS_TMP_LIBRARIES} ${FlexiBLAS_TMP_LIBRARY})
|
||||
+ endif()
|
||||
+endforeach()
|
||||
+
|
||||
+
|
||||
+# use only one library
|
||||
+
|
||||
+if(FlexiBLAS_TMP_LIBRARIES)
|
||||
+ list(GET FlexiBLAS_TMP_LIBRARIES 0 FlexiBLAS_LIBRARY)
|
||||
+endif()
|
||||
+
|
||||
+
|
||||
+if(FlexiBLAS_LIBRARY)
|
||||
+ set(FlexiBLAS_LIBRARIES ${FlexiBLAS_LIBRARY})
|
||||
+ set(FlexiBLAS_FOUND "YES")
|
||||
+else()
|
||||
+ set(FlexiBLAS_FOUND "NO")
|
||||
+endif()
|
||||
+
|
||||
+
|
||||
+if(FlexiBLAS_FOUND)
|
||||
+ if (NOT FlexiBLAS_FIND_QUIETLY)
|
||||
+ message(STATUS "Found FlexiBLAS: ${FlexiBLAS_LIBRARIES}")
|
||||
+ endif()
|
||||
+else()
|
||||
+ if(FlexiBLAS_FIND_REQUIRED)
|
||||
+ message(FATAL_ERROR "Could not find FlexiBLAS")
|
||||
+ endif()
|
||||
+endif()
|
||||
+
|
||||
+
|
||||
+# mark_as_advanced(FlexiBLAS_LIBRARY)
|
||||
diff -Naur armadillo-9.900.2/CMakeLists.txt armadillo-9.900.2-flexiblas/CMakeLists.txt
|
||||
--- armadillo-9.900.2/CMakeLists.txt 2016-06-17 02:21:12.000000000 +1000
|
||||
+++ armadillo-9.900.2-flexiblas/CMakeLists.txt 2020-08-05 19:52:44.000439011 +1000
|
||||
@@ -134,6 +134,10 @@
|
||||
|
||||
option(DETECT_HDF5 "Detect HDF5 and include HDF5 support, if found" ON)
|
||||
|
||||
+option(ALLOW_FLEXIBLAS_LINUX "Allow detection of FlexiBLAS on Linux (EXPERIMENTAL)" OFF)
|
||||
+## Example use on the command line:
|
||||
+## cmake -D ALLOW_FLEXIBLAS_LINUX=true .
|
||||
+
|
||||
option(ALLOW_OPENBLAS_MACOS "Allow detection of OpenBLAS on macOS" OFF)
|
||||
## Example use on the command line:
|
||||
## cmake -D ALLOW_OPENBLAS_MACOS=true .
|
||||
@@ -171,6 +175,7 @@
|
||||
message(STATUS "CMAKE_COMPILER_IS_GNUCXX = ${CMAKE_COMPILER_IS_GNUCXX}" )
|
||||
message(STATUS "BUILD_SHARED_LIBS = ${BUILD_SHARED_LIBS}" )
|
||||
message(STATUS "DETECT_HDF5 = ${DETECT_HDF5}" )
|
||||
+message(STATUS "ALLOW_FLEXIBLAS_LINUX = ${ALLOW_FLEXIBLAS_LINUX}" )
|
||||
message(STATUS "ALLOW_OPENBLAS_MACOS = ${ALLOW_OPENBLAS_MACOS}" )
|
||||
message(STATUS "ALLOW_BLAS_LAPACK_MACOS = ${ALLOW_BLAS_LAPACK_MACOS}" )
|
||||
message(STATUS "BUILD_SMOKE_TEST = ${BUILD_SMOKE_TEST}" )
|
||||
@@ -259,15 +264,39 @@
|
||||
include(ARMA_FindBLAS)
|
||||
include(ARMA_FindLAPACK)
|
||||
|
||||
- message(STATUS " MKL_FOUND = ${MKL_FOUND}" )
|
||||
- message(STATUS " ACMLMP_FOUND = ${ACMLMP_FOUND}" )
|
||||
- message(STATUS " ACML_FOUND = ${ACML_FOUND}" )
|
||||
- message(STATUS "OpenBLAS_FOUND = ${OpenBLAS_FOUND}")
|
||||
- message(STATUS " ATLAS_FOUND = ${ATLAS_FOUND}" )
|
||||
- message(STATUS " BLAS_FOUND = ${BLAS_FOUND}" )
|
||||
- message(STATUS " LAPACK_FOUND = ${LAPACK_FOUND}" )
|
||||
+ if(ALLOW_FLEXIBLAS_LINUX AND (${CMAKE_SYSTEM_NAME} MATCHES "Linux"))
|
||||
+ include(ARMA_FindFlexiBLAS)
|
||||
+ endif()
|
||||
+
|
||||
+ message(STATUS " MKL_FOUND = ${MKL_FOUND}" )
|
||||
+ message(STATUS " ACMLMP_FOUND = ${ACMLMP_FOUND}" )
|
||||
+ message(STATUS " ACML_FOUND = ${ACML_FOUND}" )
|
||||
+ message(STATUS " OpenBLAS_FOUND = ${OpenBLAS_FOUND}" )
|
||||
+ message(STATUS " ATLAS_FOUND = ${ATLAS_FOUND}" )
|
||||
+ message(STATUS " BLAS_FOUND = ${BLAS_FOUND}" )
|
||||
+ message(STATUS " LAPACK_FOUND = ${LAPACK_FOUND}" )
|
||||
|
||||
- if(MKL_FOUND OR ACMLMP_FOUND OR ACML_FOUND)
|
||||
+ if(FlexiBLAS_FOUND)
|
||||
+
|
||||
+ message(STATUS "FlexiBLAS_FOUND = ${FlexiBLAS_FOUND}" )
|
||||
+
|
||||
+ set(ARMA_USE_LAPACK true)
|
||||
+ set(ARMA_USE_BLAS true)
|
||||
+
|
||||
+ set(ARMA_LIBS ${ARMA_LIBS} ${FlexiBLAS_LIBRARIES})
|
||||
+
|
||||
+ message(STATUS "")
|
||||
+ message(STATUS "*** Using FlexiBLAS to provide BLAS and LAPACK functions.")
|
||||
+ message(STATUS "*** If using FlexiBLAS causes problems, please file a bug")
|
||||
+ message(STATUS "*** report with the FlexiBLAS developers:")
|
||||
+ message(STATUS "*** https://www.mpi-magdeburg.mpg.de/projects/flexiblas")
|
||||
+ message(STATUS "")
|
||||
+ message(STATUS "*** To disable detection of FlexiBLAS,")
|
||||
+ message(STATUS "*** rerun cmake with FlexiBLAS detection disabled:")
|
||||
+ message(STATUS "*** cmake -D ALLOW_FLEXIBLAS_LINUX=false .")
|
||||
+ message(STATUS "")
|
||||
+
|
||||
+ elseif(MKL_FOUND OR ACMLMP_FOUND OR ACML_FOUND)
|
||||
|
||||
set(ARMA_USE_LAPACK true)
|
||||
set(ARMA_USE_BLAS true)
|
Loading…
Reference in new issue