summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2013-07-31 12:48:57 (GMT)
committerCMake Topic Stage <kwrobot@kitware.com>2013-07-31 12:48:57 (GMT)
commit58c5dc37d307c1d2a85c42e84e71cb619a6956b0 (patch)
treea562eb328a034cd283985aebd758fd76dc9eea9f /Source
parent4e3675ae916e824997c01989366408ff2107a96f (diff)
parent8fbf39a471593e3607e67a8915a1ec0e150d3298 (diff)
downloadCMake-58c5dc37d307c1d2a85c42e84e71cb619a6956b0.zip
CMake-58c5dc37d307c1d2a85c42e84e71cb619a6956b0.tar.gz
CMake-58c5dc37d307c1d2a85c42e84e71cb619a6956b0.tar.bz2
Merge topic '13582_configured_file_regeneration'
8fbf39a cmMakefile: Do not track configured files known to be temporary
Diffstat (limited to 'Source')
-rw-r--r--Source/cmMakefile.cxx6
1 files changed, 5 insertions, 1 deletions
diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx
index 78012de..1920cc0 100644
--- a/Source/cmMakefile.cxx
+++ b/Source/cmMakefile.cxx
@@ -3363,7 +3363,11 @@ int cmMakefile::ConfigureFile(const char* infile, const char* outfile,
std::string sinfile = infile;
this->AddCMakeDependFile(sinfile);
cmSystemTools::ConvertToUnixSlashes(soutfile);
- this->AddCMakeOutputFile(soutfile);
+ // Re-generate if non-temporary outputs are missing.
+ if(soutfile.find("CMakeTmp") == soutfile.npos)
+ {
+ this->AddCMakeOutputFile(soutfile);
+ }
mode_t perm = 0;
cmSystemTools::GetPermissions(sinfile.c_str(), perm);
std::string::size_type pos = soutfile.rfind('/');