mirror of
https://github.com/Kitware/CMake.git
synced 2026-05-24 09:09:43 -05:00
ENH: Added STRING(CONFIGURE ...) command.
This commit is contained in:
@@ -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}")
|
||||
|
||||
@@ -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
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user