Suggestion: CheckFunctionExists, CheckSymbolExists, CheckCSourceCompiles, ... work with (imported) targets
Using functions such as check_function_exists()
usually requires modifying the CMAKE_REQUIRED_* variables. These variables are inconvenient to set when working with (imported) targets. Debugging (imported) targets or asserting that (imported) targets work as expected would become easier if the check*()
functions would allow for linking against imported targets. It would be easier to write and use modules such as FindBLAS.cmake or FindLAPACK.cmake.