I need a way to set debugger working directory for my Visual Studio 2022 CMake project with Ninja generator. Setting VS_DEBUGGER_WORKING_DIRECTORY target property doesn't work: only launch.vs.json editing works. I obviously need to set it from CMake side, because in case of editing launch file, I cannot save this setting for my GitHub repo.
Also I would like to say that setting that property does work only in case where I set Visual Studio 17 2022 generator and open my projects with .sln file instead of CMake Project in Visual Studio, but it is not what I want.
Generally there are 2 reasons why developers want to set the working directory.
1.) Loading
files.If that is your situation take a look at this question: From Visual Studio to CMake, how to set current working directory?
I describe an approach that works with both the Visual Studio / Ninja generator.
2.) Loading
dlls.CMake 3.21 added functionality for this exact situation.
$<TARGET_RUNTIME_DLLS:tgt> New in version 3.21.This generator expression can be used to copy all of the DLLs that a target depends on into its output directory in a POST_BUILD custom command using the cmake -E copy -t command. For example:
Link to official documentation:
https://cmake.org/cmake/help/latest/manual/cmake-generator-expressions.7.html#genex:TARGET_RUNTIME_DLLS
Let me know if neither approach works for you.