summaryrefslogtreecommitdiffstats
path: root/Tests/CompileDefinitions/runtest.c
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2013-03-25 13:43:22 (GMT)
committerBrad King <brad.king@kitware.com>2013-03-25 14:49:42 (GMT)
commit1703b00c7fc34f473e84f4ba29bdc73476637005 (patch)
treed32cb8e0ef24144e0ee7c904884cbd8adebc78d5 /Tests/CompileDefinitions/runtest.c
parenta6286e92c9be9f5b8ad8fb25b3c6e15c0ec17fa0 (diff)
downloadCMake-1703b00c7fc34f473e84f4ba29bdc73476637005.zip
CMake-1703b00c7fc34f473e84f4ba29bdc73476637005.tar.gz
CMake-1703b00c7fc34f473e84f4ba29bdc73476637005.tar.bz2
Test evaluation of per-config COMPILE_DEFINITIONS (#14037)
Teach the CompileDefinitions test to cover evaluation of config-specific generator expressions.
Diffstat (limited to 'Tests/CompileDefinitions/runtest.c')
-rw-r--r--Tests/CompileDefinitions/runtest.c47
1 files changed, 47 insertions, 0 deletions
diff --git a/Tests/CompileDefinitions/runtest.c b/Tests/CompileDefinitions/runtest.c
new file mode 100644
index 0000000..02d2cad
--- /dev/null
+++ b/Tests/CompileDefinitions/runtest.c
@@ -0,0 +1,47 @@
+#include <string.h>
+#include <stdio.h>
+#include <ctype.h>
+
+#ifndef BUILD_CONFIG_NAME
+# error "BUILD_CONFIG_NAME not defined!"
+#endif
+
+int main()
+{
+ char build_config_name[] = BUILD_CONFIG_NAME;
+ char* c;
+ for(c = build_config_name; *c; ++c)
+ {
+ *c = (char)tolower((int)*c);
+ }
+ fprintf(stderr, "build_config_name=\"%s\"\n", build_config_name);
+#ifdef TEST_CONFIG_DEBUG
+ if(strcmp(build_config_name, "debug") != 0)
+ {
+ fprintf(stderr, "build_config_name is not \"debug\"\n");
+ return 1;
+ }
+#endif
+#ifdef TEST_CONFIG_RELEASE
+ if(strcmp(build_config_name, "release") != 0)
+ {
+ fprintf(stderr, "build_config_name is not \"release\"\n");
+ return 1;
+ }
+#endif
+#ifdef TEST_CONFIG_MINSIZEREL
+ if(strcmp(build_config_name, "minsizerel") != 0)
+ {
+ fprintf(stderr, "build_config_name is not \"minsizerel\"\n");
+ return 1;
+ }
+#endif
+#ifdef TEST_CONFIG_RELWITHDEBINFO
+ if(strcmp(build_config_name, "relwithdebinfo") != 0)
+ {
+ fprintf(stderr, "build_config_name is not \"relwithdebinfo\"\n");
+ return 1;
+ }
+#endif
+ return 0;
+}