mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-07 06:09:52 -06:00
Add a delay after untar on windows to make external project work on windows 7
OK, on windows 7 after we untar some files, sometimes we can not rename the directory after the untar is done. This breaks the external project untar and rename code. So, by default we will wait 1/10th of a second after the untar. If CMAKE_UNTAR_DELAY is set in the env, its value will be used instead of 100.
This commit is contained in:
@@ -1574,6 +1574,24 @@ int cmake::ExecuteCMakeCommand(std::vector<std::string>& args)
|
||||
cmSystemTools::Error("Problem extracting tar: ", outFile.c_str());
|
||||
return 1;
|
||||
}
|
||||
#ifdef WIN32
|
||||
// OK, on windows 7 after we untar some files,
|
||||
// sometimes we can not rename the directory after
|
||||
// the untar is done. This breaks the external project
|
||||
// untar and rename code. So, by default we will wait
|
||||
// 1/10th of a second after the untar. If CMAKE_UNTAR_DELAY
|
||||
// is set in the env, its value will be used instead of 100.
|
||||
int delay = 100;
|
||||
const char* delayVar = cmSystemTools::GetEnv("CMAKE_UNTAR_DELAY");
|
||||
if(delayVar)
|
||||
{
|
||||
delay = atoi(delayVar);
|
||||
}
|
||||
if(delay)
|
||||
{
|
||||
cmSystemTools::Delay(delay);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user