summaryrefslogtreecommitdiffstats
path: root/Source/cmLocalUnixMakefileGenerator3.cxx
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2011-08-24 20:08:31 (GMT)
committerBill Hoffman <bill.hoffman@kitware.com>2011-08-24 20:08:31 (GMT)
commit281f51e063c2f3245d11b085c06a7f4b5fe69fd3 (patch)
tree34405cbe49bc6b2dbaa550ecbcdc62fe09f6b0d2 /Source/cmLocalUnixMakefileGenerator3.cxx
parentd7184e0e4dc22163b4564d93634736a145ac2c4d (diff)
downloadCMake-281f51e063c2f3245d11b085c06a7f4b5fe69fd3.zip
CMake-281f51e063c2f3245d11b085c06a7f4b5fe69fd3.tar.gz
CMake-281f51e063c2f3245d11b085c06a7f4b5fe69fd3.tar.bz2
Fix for bug #12413, nmake did not handle targets with + in the name.
If you had a + in the name of a target with nmake, it created a variable in the makefile that used + in its name, which is not allowed by nmake. To make the implementation easier, + is now not allowed for any make generators as part of a variable name.
Diffstat (limited to 'Source/cmLocalUnixMakefileGenerator3.cxx')
-rw-r--r--Source/cmLocalUnixMakefileGenerator3.cxx2
1 files changed, 2 insertions, 0 deletions
diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx
index 6ab5c2a..2eae9d0 100644
--- a/Source/cmLocalUnixMakefileGenerator3.cxx
+++ b/Source/cmLocalUnixMakefileGenerator3.cxx
@@ -1276,6 +1276,7 @@ cmLocalUnixMakefileGenerator3
// and there are no "." charactors in the string, then return the
// unmodified combination.
if((!this->MakefileVariableSize && unmodified.find('.') == s.npos)
+ && (!this->MakefileVariableSize && unmodified.find('+') == s.npos)
&& (!this->MakefileVariableSize && unmodified.find('-') == s.npos))
{
return unmodified;
@@ -1297,6 +1298,7 @@ cmLocalUnixMakefileGenerator3
{
cmSystemTools::ReplaceString(ret, ".", "_");
cmSystemTools::ReplaceString(ret, "-", "__");
+ cmSystemTools::ReplaceString(ret, "+", "___");
int ni = 0;
char buffer[5];
// make sure the _ version is not already used, if