mirror of
https://github.com/reactos/CMake.git
synced 2025-02-03 18:42:32 +00:00
clean up entire temp directory
This commit is contained in:
parent
1e3ddfeecf
commit
c544cb4307
@ -229,22 +229,19 @@ bool cmTryCompileCommand::InitialPass(std::vector<std::string> const& argv)
|
||||
|
||||
static void cmTryCompileCommandNotUsed(bool){}
|
||||
|
||||
void cmTryCompileCommand::CleanupFiles(const char* binDir, bool recursive)
|
||||
void cmTryCompileCommand::CleanupFiles(const char* binDir)
|
||||
{
|
||||
if ( !binDir )
|
||||
{
|
||||
return;
|
||||
}
|
||||
cmTryCompileCommandNotUsed(recursive);
|
||||
#ifdef WIN32
|
||||
if ( recursive )
|
||||
std::string bdir = binDir;
|
||||
if(bdir.find("CMakeTmp") == std::string::npos)
|
||||
{
|
||||
std::string bdir = binDir;
|
||||
bdir += "/Debug";
|
||||
cmTryCompileCommand::CleanupFiles(bdir.c_str(), false);
|
||||
cmSystemTools::Error("TRY_COMPILE attempt to remove -rf directory that does not contain CMakeTmp:", binDir);
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
cmDirectory dir;
|
||||
dir.Load(binDir);
|
||||
size_t fileNum;
|
||||
@ -256,7 +253,14 @@ void cmTryCompileCommand::CleanupFiles(const char* binDir, bool recursive)
|
||||
std::string fullPath = binDir;
|
||||
fullPath += "/";
|
||||
fullPath += dir.GetFile(fileNum);
|
||||
cmSystemTools::RemoveFile(fullPath.c_str());
|
||||
if(cmSystemTools::FileIsDirectory(fullPath.c_str()))
|
||||
{
|
||||
cmTryCompileCommand::CleanupFiles(fullPath.c_str());
|
||||
}
|
||||
else
|
||||
{
|
||||
cmSystemTools::RemoveFile(fullPath.c_str());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -68,7 +68,7 @@ public:
|
||||
* code. This way we do not have to rely on the timing and
|
||||
* dependencies of makefiles.
|
||||
*/
|
||||
static void CleanupFiles(const char* binDir, bool recursive=true);
|
||||
static void CleanupFiles(const char* binDir);
|
||||
|
||||
/**
|
||||
* More documentation. */
|
||||
|
Loading…
x
Reference in New Issue
Block a user