mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
Fix cmake warnings, FindPASTIX/FindPTSCOTCH.
We were getting a lot of warnings due to nested `find_package` calls
within `Find***.cmake` files. The recommended approach is to use
[`find_dependency`](https://cmake.org/cmake/help/latest/module/CMakeFindDependencyMacro.html)
in package configuration files. I made this change for all instances.
Case mismatches between `Find<Package>.cmake` and calling
`find_package(<PACKAGE>`) also lead to warnings. Fixed for
`FindPASTIX.cmake` and `FindSCOTCH.cmake`.
`FindBLASEXT.cmake` was broken due to calling `find_package_handle_standard_args(BLAS ...)`.
The package name must match, otherwise the `find_package(BLASEXT)` falsely thinks
the package wasn't found. I changed to `BLASEXT`, but then also copied that value
to `BLAS_FOUND` for compatibility.
`FindPastix.cmake` had a typo that incorrectly added `PTSCOTCH` when looking for
the `SCOTCH` component.
`FindPTSCOTCH` incorrectly added `***-NOTFOUND` to include/library lists,
corrupting them. This led to cmake errors down-the-line.
Fixes #2288.
(cherry picked from commit 1cdec38653)
This commit is contained in:
committed by
Rasmus Munk Larsen
parent
bb33880e57
commit
9a1691a14e
@@ -41,18 +41,19 @@
|
||||
# License text for the above reference.)
|
||||
|
||||
# macro to factorize this call
|
||||
include(CMakeFindDependencyMacro)
|
||||
macro(find_package_blas)
|
||||
if(BLASEXT_FIND_REQUIRED)
|
||||
if(BLASEXT_FIND_QUIETLY)
|
||||
find_package(BLAS REQUIRED QUIET)
|
||||
find_dependency(BLAS REQUIRED QUIET)
|
||||
else()
|
||||
find_package(BLAS REQUIRED)
|
||||
find_dependency(BLAS REQUIRED)
|
||||
endif()
|
||||
else()
|
||||
if(BLASEXT_FIND_QUIETLY)
|
||||
find_package(BLAS QUIET)
|
||||
find_dependency(BLAS QUIET)
|
||||
else()
|
||||
find_package(BLAS)
|
||||
find_dependency(BLAS)
|
||||
endif()
|
||||
endif()
|
||||
endmacro()
|
||||
@@ -316,7 +317,7 @@ if(BLA_VENDOR MATCHES "Intel*")
|
||||
"\n (see BLAS_SEQ_LIBRARIES and BLAS_PAR_LIBRARIES)")
|
||||
message(STATUS "BLAS sequential libraries stored in BLAS_SEQ_LIBRARIES")
|
||||
endif()
|
||||
find_package_handle_standard_args(BLAS DEFAULT_MSG
|
||||
find_package_handle_standard_args(BLASEXT DEFAULT_MSG
|
||||
BLAS_SEQ_LIBRARIES
|
||||
BLAS_LIBRARY_DIRS
|
||||
BLAS_INCLUDE_DIRS)
|
||||
@@ -324,14 +325,14 @@ if(BLA_VENDOR MATCHES "Intel*")
|
||||
if(NOT BLASEXT_FIND_QUIETLY)
|
||||
message(STATUS "BLAS parallel libraries stored in BLAS_PAR_LIBRARIES")
|
||||
endif()
|
||||
find_package_handle_standard_args(BLAS DEFAULT_MSG
|
||||
find_package_handle_standard_args(BLASEXT DEFAULT_MSG
|
||||
BLAS_PAR_LIBRARIES)
|
||||
endif()
|
||||
else()
|
||||
if(NOT BLASEXT_FIND_QUIETLY)
|
||||
message(STATUS "BLAS sequential libraries stored in BLAS_SEQ_LIBRARIES")
|
||||
endif()
|
||||
find_package_handle_standard_args(BLAS DEFAULT_MSG
|
||||
find_package_handle_standard_args(BLASEXT DEFAULT_MSG
|
||||
BLAS_SEQ_LIBRARIES
|
||||
BLAS_LIBRARY_DIRS
|
||||
BLAS_INCLUDE_DIRS)
|
||||
@@ -343,14 +344,14 @@ elseif(BLA_VENDOR MATCHES "ACML*")
|
||||
"\n (see BLAS_SEQ_LIBRARIES and BLAS_PAR_LIBRARIES)")
|
||||
message(STATUS "BLAS sequential libraries stored in BLAS_SEQ_LIBRARIES")
|
||||
endif()
|
||||
find_package_handle_standard_args(BLAS DEFAULT_MSG
|
||||
find_package_handle_standard_args(BLASEXT DEFAULT_MSG
|
||||
BLAS_SEQ_LIBRARIES
|
||||
BLAS_LIBRARY_DIRS)
|
||||
if(BLAS_PAR_LIBRARIES)
|
||||
if(NOT BLASEXT_FIND_QUIETLY)
|
||||
message(STATUS "BLAS parallel libraries stored in BLAS_PAR_LIBRARIES")
|
||||
endif()
|
||||
find_package_handle_standard_args(BLAS DEFAULT_MSG
|
||||
find_package_handle_standard_args(BLASEXT DEFAULT_MSG
|
||||
BLAS_PAR_LIBRARIES)
|
||||
endif()
|
||||
elseif(BLA_VENDOR MATCHES "IBMESSL*")
|
||||
@@ -360,21 +361,24 @@ elseif(BLA_VENDOR MATCHES "IBMESSL*")
|
||||
"\n (see BLAS_SEQ_LIBRARIES and BLAS_PAR_LIBRARIES)")
|
||||
message(STATUS "BLAS sequential libraries stored in BLAS_SEQ_LIBRARIES")
|
||||
endif()
|
||||
find_package_handle_standard_args(BLAS DEFAULT_MSG
|
||||
find_package_handle_standard_args(BLASEXT DEFAULT_MSG
|
||||
BLAS_SEQ_LIBRARIES
|
||||
BLAS_LIBRARY_DIRS)
|
||||
if(BLAS_PAR_LIBRARIES)
|
||||
if(NOT BLASEXT_FIND_QUIETLY)
|
||||
message(STATUS "BLAS parallel libraries stored in BLAS_PAR_LIBRARIES")
|
||||
endif()
|
||||
find_package_handle_standard_args(BLAS DEFAULT_MSG
|
||||
find_package_handle_standard_args(BLASEXT DEFAULT_MSG
|
||||
BLAS_PAR_LIBRARIES)
|
||||
endif()
|
||||
else()
|
||||
if(NOT BLASEXT_FIND_QUIETLY)
|
||||
message(STATUS "BLAS sequential libraries stored in BLAS_SEQ_LIBRARIES")
|
||||
endif()
|
||||
find_package_handle_standard_args(BLAS DEFAULT_MSG
|
||||
find_package_handle_standard_args(BLASEXT DEFAULT_MSG
|
||||
BLAS_SEQ_LIBRARIES
|
||||
BLAS_LIBRARY_DIRS)
|
||||
endif()
|
||||
|
||||
# Callers expect BLAS_FOUND to be set as well.
|
||||
set(BLAS_FOUND BLASEXT_FOUND)
|
||||
|
||||
Reference in New Issue
Block a user