This is an archive of the discontinued LLVM Phabricator instance.

[lldb\utils] Place lldb-repro in a per-configuration directory to support multi-configuration generators
ClosedPublic

Authored by stella.stamenova on Feb 6 2020, 11:01 AM.

Details

Summary

Currently, lldb-repro is placed in the wrong location for multi-configuration generators. For example, in the case of VS, it is placed in a directory $(Configuration) instead of in each of Debug, Release, etc.

Diff Detail

Event Timeline

Herald added a project: Restricted Project. · View Herald TranscriptFeb 6 2020, 11:01 AM
JDevlieghere added inline comments.Feb 6 2020, 11:12 AM
lldb/utils/lldb-repro/CMakeLists.txt
6

Do you think it's possible/worthwhile to factor out this code in a CMake macro/function? We have a few places where we have to do something similar, but it's never exactly the same.

stella.stamenova marked an inline comment as done.Feb 6 2020, 11:30 AM
stella.stamenova added inline comments.
lldb/utils/lldb-repro/CMakeLists.txt
6

I think it's possible, but because it is not exactly the same, I am not sure if it's worth doing. For example, we would have to make it possible to specify a list of properties that all have to be "configured" together along with a file to configure sometimes and the action on the file. It is definitely doable, but it will still be complicated code that one has to remember to call.

If anything, it may be worth placing any tools that fall under this category in the same tree structure with a top-level CMake file that correctly handles all of them, but that would require some more work and still wouldn't be ideal because we'd need to handle any exceptions separately.

JDevlieghere accepted this revision.Feb 6 2020, 11:51 AM
JDevlieghere added inline comments.
lldb/utils/lldb-repro/CMakeLists.txt
6

Fair enough, unfortunately that's what I expected. Thanks for entertaining the idea.

This revision is now accepted and ready to land.Feb 6 2020, 11:51 AM
This revision was automatically updated to reflect the committed changes.