From b323407235a3671eb11c7a039ce1c2f134025c73 Mon Sep 17 00:00:00 2001 From: "Michael Hirsch, Ph.D" Date: Tue, 29 Jan 2019 14:31:01 -0500 Subject: Find{BLAS,LAPACK}: Update docs to use modern conventions --- Modules/FindBLAS.cmake | 115 ++++++++++++++++++++++++----------------------- Modules/FindLAPACK.cmake | 74 ++++++++++++++++++------------ 2 files changed, 104 insertions(+), 85 deletions(-) diff --git a/Modules/FindBLAS.cmake b/Modules/FindBLAS.cmake index b6348fd..3fc30c4 100644 --- a/Modules/FindBLAS.cmake +++ b/Modules/FindBLAS.cmake @@ -13,62 +13,65 @@ list of libraries searched for is taken from the autoconf macro file, acx_blas.m4 (distributed at http://ac-archive.sourceforge.net/ac-archive/acx_blas.html). -This module sets the following variables: - -:: - - BLAS_FOUND - set to true if a library implementing the BLAS interface - is found - BLAS_LINKER_FLAGS - uncached list of required linker flags (excluding -l - and -L). - BLAS_LIBRARIES - uncached list of libraries (using full path name) to - link against to use BLAS (may be empty if compiler implicitly links - BLAS) - BLAS95_LIBRARIES - uncached list of libraries (using full path name) - to link against to use BLAS95 interface - BLAS95_FOUND - set to true if a library implementing the BLAS f95 interface - is found - -The following variables can be used to control this module: - -:: - - BLA_STATIC if set on this determines what kind of linkage we do (static) - BLA_VENDOR if set checks only the specified vendor, if not set checks - all the possibilities - BLA_F95 if set on tries to find the f95 interfaces for BLAS/LAPACK - BLA_PREFER_PKGCONFIG if set pkg-config will be used to search for a BLAS - library first and if one is found that is preferred - -List of vendors (BLA_VENDOR) valid in this module: - -* Goto -* OpenBLAS -* FLAME -* ATLAS PhiPACK -* CXML -* DXML -* SunPerf -* SCSL -* SGIMATH -* IBMESSL -* Intel10_32 (intel mkl v10 32 bit) -* Intel10_64lp (intel mkl v10+ 64 bit, threaded code, lp64 model) -* Intel10_64lp_seq (intel mkl v10+ 64 bit, sequential code, lp64 model) -* Intel10_64ilp (intel mkl v10+ 64 bit, threaded code, ilp64 model) -* Intel10_64ilp_seq (intel mkl v10+ 64 bit, sequential code, ilp64 model) -* Intel (older versions of mkl 32 and 64 bit) -* ACML -* ACML_MP -* ACML_GPU -* Apple -* NAS -* Generic - -.. note:: - - C/CXX should be enabled to use Intel mkl - +Input Variables +^^^^^^^^^^^^^^^ + +The following variables may be set to influence this module's behavior: + +``BLA_STATIC`` + if ``ON`` use static linkage + +``BLA_VENDOR`` + If set, checks only the specified vendor, if not set checks all the + possibilities. List of vendors valid in this module: + + * Goto + * OpenBLAS + * FLAME + * ATLAS PhiPACK + * CXML + * DXML + * SunPerf + * SCSL + * SGIMATH + * IBMESSL + * Intel10_32 (intel mkl v10 32 bit) + * Intel10_64lp (intel mkl v10+ 64 bit, threaded code, lp64 model) + * Intel10_64lp_seq (intel mkl v10+ 64 bit, sequential code, lp64 model) + * Intel10_64ilp (intel mkl v10+ 64 bit, threaded code, ilp64 model) + * Intel10_64ilp_seq (intel mkl v10+ 64 bit, sequential code, ilp64 model) + * Intel (obsolete versions of mkl 32 and 64 bit) + * ACML + * ACML_MP + * ACML_GPU + * Apple + * NAS + * Generic + +``BLA_F95`` + if ``ON`` tries to find the BLAS95 interfaces + +``BLA_PREFER_PKGCONFIG`` + if set pkg-config will be used to search for a BLAS library first + and if one is found that is preferred + +Result Variables +^^^^^^^^^^^^^^^^ + +This module defines the following variables: + +``BLAS_FOUND`` + library implementing the BLAS interface is found +``BLAS_LINKER_FLAGS`` + uncached list of required linker flags (excluding -l and -L). +``BLAS_LIBRARIES`` + uncached list of libraries (using full path name) to link against + to use BLAS (may be empty if compiler implicitly links BLAS) +``BLAS95_LIBRARIES`` + uncached list of libraries (using full path name) to link against + to use BLAS95 interface +``BLAS95_FOUND`` + library implementing the BLAS95 interface is found #]=======================================================================] include(${CMAKE_CURRENT_LIST_DIR}/CheckFunctionExists.cmake) diff --git a/Modules/FindLAPACK.cmake b/Modules/FindLAPACK.cmake index dbd943b..69eed9a 100644 --- a/Modules/FindLAPACK.cmake +++ b/Modules/FindLAPACK.cmake @@ -14,35 +14,51 @@ The approach follows that taken for the autoconf macro file, acx_lapack.m4 (distributed at http://ac-archive.sourceforge.net/ac-archive/acx_lapack.html). -This module sets the following variables: - -:: - - LAPACK_FOUND - set to true if a library implementing the LAPACK interface - is found - LAPACK_LINKER_FLAGS - uncached list of required linker flags (excluding -l - and -L). - LAPACK_LIBRARIES - uncached list of libraries (using full path name) to - link against to use LAPACK - LAPACK95_LIBRARIES - uncached list of libraries (using full path name) to - link against to use LAPACK95 - LAPACK95_FOUND - set to true if a library implementing the LAPACK f95 - interface is found - BLA_STATIC if set on this determines what kind of linkage we do (static) - BLA_VENDOR if set checks only the specified vendor, if not set checks - all the possibilities - BLA_F95 if set on tries to find the f95 interfaces for BLAS/LAPACK - -List of vendors (BLA_VENDOR) valid in this module: - -* Intel(mkl) -* OpenBLAS -* FLAME -* ACML -* Apple -* NAS -* Generic - +Input Variables +^^^^^^^^^^^^^^^ + +The following variables may be set to influence this module's behavior: + +``BLA_STATIC`` + if ``ON`` use static linkage + +``BLA_VENDOR`` + If set, checks only the specified vendor, if not set checks all the + possibilities. List of vendors valid in this module: + + * ``Intel10_32`` (intel mkl v10 32 bit) + * ``Intel10_64lp`` (intel mkl v10+ 64 bit, threaded code, lp64 model) + * ``Intel10_64lp_seq`` (intel mkl v10+ 64 bit, sequential code, lp64 model) + * ``Intel10_64ilp`` (intel mkl v10+ 64 bit, threaded code, ilp64 model) + * ``Intel10_64ilp_seq`` (intel mkl v10+ 64 bit, sequential code, ilp64 model) + * ``Intel`` (obsolete versions of mkl 32 and 64 bit) + * ``OpenBLAS`` + * ``FLAME`` + * ``ACML`` + * ``Apple`` + * ``NAS`` + * ``Generic`` + +``BLA_F95`` + if ``ON`` tries to find BLAS95/LAPACK95 + +Result Variables +^^^^^^^^^^^^^^^^ + +This module defines the following variables: + +``LAPACK_FOUND`` + library implementing the LAPACK interface is found +``LAPACK_LINKER_FLAGS`` + uncached list of required linker flags (excluding -l and -L). +``LAPACK_LIBRARIES`` + uncached list of libraries (using full path name) to link against + to use LAPACK +``LAPACK95_LIBRARIES`` + uncached list of libraries (using full path name) to link against + to use LAPACK95 +``LAPACK95_FOUND`` + library implementing the LAPACK95 interface is found #]=======================================================================] set(_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES}) -- cgit v0.12