ENH: Added STRING(CONFIGURE ...) command.

This commit is contained in:
Brad King
2004-03-04 10:05:14 -05:00
parent 1dd718457f
commit 4990e1481d
4 changed files with 74 additions and 0 deletions
+5
View File
@@ -55,6 +55,11 @@ FOREACH(var
FILE(APPEND "${file}" "#define ${var} \"${${var}}\"\n")
ENDFOREACH(var)
# Test configuration of the string
SET(TEST_DEFINED 123)
SET(TEST_NOT_DEFINED)
STRING(CONFIGURE "${infile}" infile @ONLY)
# Write include file to a file
STRING(REGEX REPLACE "includefile" "${file}" outfile "${infile}")
FILE(WRITE "${CMAKE_CURRENT_BINARY_DIR}/OutputFile.h" "${outfile}")
+13
View File
@@ -1,5 +1,10 @@
#include "includefile"
/* This should be configured to a define. */
#cmakedefine TEST_DEFINED @TEST_DEFINED@
/* This should be configured to a commented undef with the curlies in place */
#cmakedefine TEST_NOT_DEFINED ${TEST_NOT_DEFINED}
int CheckMethod(const char* var, const char* val )
{
if ( !var )
@@ -17,5 +22,13 @@ int CheckMethod(const char* var, const char* val )
printf("Var (%s) and Val (%s) are not the same...\n", var, val);
return 1;
}
#if !defined(TEST_DEFINED) || TEST_DEFINED != 123
printf("TEST_DEFINED is not defined to 123\n");
return 1;
#elif defined(TEST_NOT_DEFINED)
printf("TEST_NOT_DEFINED is defined\n");
return 1;
#else
return 0;
#endif
}