From 57dcde19da24d211bad945fbbe7851abbf9bdab3 Mon Sep 17 00:00:00 2001 From: Brad King Date: Mon, 12 Jul 2021 14:57:06 +0000 Subject: [PATCH] Find{BLAS,LAPACK}: Avoid clobbering results when no vendor is requested Logic added by commit 4c74c86f40 (FindBLAS/LAPACK: Add support for the Fujitsu SSL2 library, 2021-01-27, v3.21.0-rc1~402^2~1) accidentally expressed a boolean condition without proper grouping. The pattern was then copied by commit 2c9e623e31 (Find{BLAS,LAPACK}: Add support for the NVHPC LAPACK library, 2021-05-05, v3.21.0-rc1~192^2). The resulting logic incorrectly tries Fujitsu and NVHPC vendors even after results are found from another vendor, and then erases those. Fix the grouping. Fixes: #22403 --- Modules/FindBLAS.cmake | 4 ++-- Modules/FindLAPACK.cmake | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Modules/FindBLAS.cmake b/Modules/FindBLAS.cmake index e04831803d..726ff75bf8 100644 --- a/Modules/FindBLAS.cmake +++ b/Modules/FindBLAS.cmake @@ -1110,8 +1110,8 @@ if(BLA_VENDOR MATCHES "EML" OR BLA_VENDOR STREQUAL "All") endif() # Fujitsu SSL2 Library? -if(NOT BLAS_LIBRARIES AND - BLA_VENDOR MATCHES "Fujitsu_SSL2" OR BLA_VENDOR STREQUAL "All") +if(NOT BLAS_LIBRARIES + AND (BLA_VENDOR MATCHES "Fujitsu_SSL2" OR BLA_VENDOR STREQUAL "All")) if(BLA_VENDOR STREQUAL "Fujitsu_SSL2BLAMP") set(_ssl2_suffix BLAMP) else() diff --git a/Modules/FindLAPACK.cmake b/Modules/FindLAPACK.cmake index b8a3363656..3146e06d44 100644 --- a/Modules/FindLAPACK.cmake +++ b/Modules/FindLAPACK.cmake @@ -550,7 +550,7 @@ if(NOT LAPACK_NOT_FOUND_MESSAGE) # Fujitsu SSL2 Library? if(NOT LAPACK_LIBRARIES - AND BLA_VENDOR MATCHES "Fujitsu_SSL2" OR BLA_VENDOR STREQUAL "All") + AND (BLA_VENDOR MATCHES "Fujitsu_SSL2" OR BLA_VENDOR STREQUAL "All")) if(BLA_VENDOR STREQUAL "Fujitsu_SSL2BLAMP") set(_ssl2_suffix BLAMP) else() @@ -582,7 +582,7 @@ if(NOT LAPACK_NOT_FOUND_MESSAGE) # NVHPC Library? if(NOT LAPACK_LIBRARIES - AND BLA_VENDOR MATCHES "NVHPC" OR BLA_VENDOR STREQUAL "All") + AND (BLA_VENDOR MATCHES "NVHPC" OR BLA_VENDOR STREQUAL "All")) check_lapack_libraries( LAPACK_LIBRARIES LAPACK