ENH: change the way #cmakedefine is changed to #undef, so it is similar to

what autoconf does. This makes porting software from autoconf to cmake
easier, since it's easier to diff the resulting config headers.

Now the following
#cmakedefine HAVE_STRING_H 1
#cmakedefine HAVE_STRLCAT 1

produce:

#define HAVE_STRING_H 1
/* #undef HAVE_STRLCAT */

whereas before they produced:

#define HAVE_STRING_H 1
/* #undef HAVE_STRLCAT 1 */

Since it's commented out anyway, it's now change in behaviour.

Alex
This commit is contained in:
Alexander Neundorf 2007-07-11 15:50:32 -04:00
parent d885d45b0f
commit ab10b43ec5

View File

@ -2379,9 +2379,8 @@ void cmMakefile::ConfigureString(const std::string& input,
} }
else else
{ {
cmSystemTools::ReplaceString(line, "#cmakedefine", "#undef"); output += "/* #undef ";
output += "/* "; output += this->cmDefineRegex.match(1);
output += line;
output += " */"; output += " */";
} }
} }