DrTimothyAldenDavis / SuiteSparse

The official SuiteSparse library: a suite of sparse matrix algorithms authored or co-authored by Tim Davis, Texas A&M University.
https://people.engr.tamu.edu/davis/suitesparse.html
Other
1.15k stars 259 forks source link

CMake: Use MSVC naming convention for compilers that simulate a MSVC backend. #752

Closed mmuetzel closed 8 months ago

mmuetzel commented 8 months ago

There are different versions of Clang on Windows:

Some of those versions use a GNU-compatible command line interface. Other versions use a MSVC-compatible command line interface (clang-cl).

Additionally, either of those versions could use a MSVC-compatible backend or a MinGW-compatible backend.

CMake sets the MSVC variable if the compiler uses a MSVC-compatible command line interface and a MSVC-compatible backend. The naming convention for import libraries differs between the MSVC-compatible (.lib) and MinGW-compatible backends (.dll.a).

Use the same naming conventions for static libraries that are used for MSVC also for the Clang that uses a MinGW-compatible command line interface but a MSVC-compatible backend.

This should be fixing #749.