blt icon indicating copy to clipboard operation
blt copied to clipboard

SetupCompilerOptions erroneously classifies "CrayClang" as "Clang"

Open wrtobin opened this issue 1 year ago • 0 comments

CMake provides "CrayClang" as a compiler ID for the C and CXX Cray compilers based on Clang:

https://cmake.org/cmake/help/latest/variable/CMAKE_LANG_COMPILER_ID.html

SetupCompilerOptions uses matches for Clang to match both Clang and AppleClang:

https://github.com/LLNL/blt/blob/45494b6968553806ac90822d1bc0ed8e2df6db1f/cmake/SetupCompilerOptions.cmake#L33

This causes BLT to erroneously classify CrayClang C and CrayClang CXX as Clang mainline rather than CrayClang.

This results in situations like this:

-- The Fortran compiler identification is Cray 18.0.0
-- The C compiler identification is Clang 18.1.6
-- The CXX compiler identification is Clang 18.1.6

When specifying the cray clang compilers in cmake for CMAKE_C_COMPILER and CMAKE_CXX_COMPILER.

wrtobin avatar Sep 10 '24 22:09 wrtobin