diff options
author | Bill Hoffman <bill.hoffman@kitware.com> | 2005-04-12 17:27:07 (GMT) |
---|---|---|
committer | Bill Hoffman <bill.hoffman@kitware.com> | 2005-04-12 17:27:07 (GMT) |
commit | 100407394209e44cd8a2dae555d2424161f45a6e (patch) | |
tree | 5d7f1c7fd896ebebfa3387eb30f82016c7cd9bff /Source/cmMakefile.cxx | |
parent | 9e4506a2d0586dacba53119bc7c651a1d16c1849 (diff) | |
download | CMake-100407394209e44cd8a2dae555d2424161f45a6e.zip CMake-100407394209e44cd8a2dae555d2424161f45a6e.tar.gz CMake-100407394209e44cd8a2dae555d2424161f45a6e.tar.bz2 |
ENH: performance improvements
Diffstat (limited to 'Source/cmMakefile.cxx')
-rw-r--r-- | Source/cmMakefile.cxx | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index 130d04a..61ab3ba 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -1355,7 +1355,8 @@ const char *cmMakefile::ExpandVariablesInString(std::string& source, bool escapeQuotes, bool atOnly, const char* filename, - long line) const + long line, + bool removeEmpty) const { // This method replaces ${VAR} and @VAR@ where VAR is looked up // with GetDefinition(), if not found in the map, nothing is expanded. @@ -1491,7 +1492,7 @@ const char *cmMakefile::ExpandVariablesInString(std::string& source, if (!found) { // if no definition is found then add the var back - if(endVariableMarker == '@') + if(!removeEmpty && endVariableMarker == '@') { result += "@"; result += var; @@ -2311,8 +2312,8 @@ void cmMakefile::ConfigureString(const std::string& input, } // Perform variable replacements. - this->ExpandVariablesInString(output, escapeQuotes, atOnly); - this->RemoveVariablesInString(output, atOnly); + this->ExpandVariablesInString(output, escapeQuotes, atOnly, 0, -1, true); +// this->RemoveVariablesInString(output, atOnly); } int cmMakefile::ConfigureFile(const char* infile, const char* outfile, |