[Feature] Callstack should provide full path to CMakeLists.txt

This happens to me all the time when writing CMake code.

-- Detecting CXX compile features - done
CMake Error at D:/Git/hq-cxx/cml/cml_helpers/CmlHelpers.cmake:11 (message):
  ============================================================

  cml_tree_source_group: User didn't define TREE parameter

  ============================================================

Call Stack (most recent call first):
  D:/Git/hq-cxx/cml/cml_helpers/CmlHelpers.cmake:35 (cml_required_function_param)
  CMakeLists.txt:36 (cml_tree_source_group)

This is perfectly fine and basically what I want.

However the issue comes from the final line.

CMakeLists.txt:36 (cml_tree_source_group)

I use visual studio code to debug my issues. And a real quality of life feature is the ability to quickly click on files that produce errors.

However, because the full path to the CMakeLists.txt isn’t given this causes issues.

image

Because there can be more than 1 file with the name CMakeLists.txt I can’t easily go to the file where the issue occurred.

Basically what I would want is the callstack to produce the absolute path to the CMakeLists.txt in question. So that there isn’t this ambiguity for editors that offer this nice quality of life feature.

This is CMake Issue 20649.

1 Like