ENH: Added ConvertToOutputSlashes method to convert slashes with the same policy as ConvertToOutputPath but without escaping.

This commit is contained in:
Brad King 2007-03-08 11:49:26 -05:00
parent 00051cf721
commit 91c2b84a92
2 changed files with 19 additions and 0 deletions

View File

@ -1341,6 +1341,23 @@ std::string cmSystemTools::ConvertToOutputPath(const char* path)
#endif
}
void cmSystemTools::ConvertToOutputSlashes(std::string& path)
{
#if defined(_WIN32) && !defined(__CYGWIN__)
if(!s_ForceUnixPaths)
{
// Convert to windows slashes.
std::string::size_type pos = 0;
while((pos = path.find('/', pos)) != std::string::npos)
{
path[pos++] = '\\';
}
}
#else
static_cast<void>(path);
#endif
}
std::string cmSystemTools::ConvertToRunCommandPath(const char* path)
{
#if defined(_WIN32) && !defined(__CYGWIN__)

View File

@ -289,6 +289,8 @@ public:
// ConvertToOutputPath use s_ForceUnixPaths
static std::string ConvertToOutputPath(const char* path);
static void ConvertToOutputSlashes(std::string& path);
// ConvertToRunCommandPath does not use s_ForceUnixPaths and should
// be used when RunCommand is called from cmake, because the
// running cmake needs paths to be in its format