cmSystemTools: Add GetLogicalWorkingDirectory

Track the current working directory with symbolic links preserved.
This commit is contained in:
Brad King
2024-10-28 11:21:24 -04:00
parent f9f4ab55ac
commit 5aed3ee49d
18 changed files with 85 additions and 53 deletions
+5 -2
View File
@@ -534,8 +534,11 @@ public:
static cm::optional<std::string> GetSystemConfigDirectory();
static cm::optional<std::string> GetCMakeConfigDirectory();
/** Get the CWD mapped through the KWSys translation map. */
static std::string GetCurrentWorkingDirectory();
static std::string const& GetLogicalWorkingDirectory();
/** The logical working directory may contain symlinks but must not
contain any '../' path components. */
static cmsys::Status SetLogicalWorkingDirectory(std::string const& lwd);
/** Echo a message in color using KWSys's Terminal cprintf. */
static void MakefileColorEcho(int color, const char* message, bool newLine,