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.
This commit is contained in:
parent
d7184e0e4d
commit
281f51e063
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue