summaryrefslogtreecommitdiff
path: root/Tests/RunCMake/VS10Project/LanguageStandard-check.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'Tests/RunCMake/VS10Project/LanguageStandard-check.cmake')
-rw-r--r--Tests/RunCMake/VS10Project/LanguageStandard-check.cmake23
1 files changed, 23 insertions, 0 deletions
diff --git a/Tests/RunCMake/VS10Project/LanguageStandard-check.cmake b/Tests/RunCMake/VS10Project/LanguageStandard-check.cmake
new file mode 100644
index 0000000000..85e28581b4
--- /dev/null
+++ b/Tests/RunCMake/VS10Project/LanguageStandard-check.cmake
@@ -0,0 +1,23 @@
+set(vcProjectFile "${RunCMake_TEST_BINARY_DIR}/foo.vcxproj")
+if(NOT EXISTS "${vcProjectFile}")
+ set(RunCMake_TEST_FAILED "Project file ${vcProjectFile} does not exist.")
+ return()
+endif()
+
+set(found_LanguageStandard_stdcpp17 0)
+set(found_LanguageStandard_C_stdc11 0)
+file(STRINGS "${vcProjectFile}" lines)
+foreach(line IN LISTS lines)
+ if(line MATCHES "<LanguageStandard>stdcpp17</LanguageStandard>")
+ set(found_LanguageStandard_stdcpp17 1)
+ endif()
+ if(line MATCHES "<LanguageStandard_C>stdc11</LanguageStandard_C>")
+ set(found_LanguageStandard_C_stdc11 1)
+ endif()
+endforeach()
+if(NOT found_LanguageStandard_stdcpp17)
+ string(APPEND RunCMake_TEST_FAILED "LanguageStandard stdcpp17 not found in\n ${vcProjectFile}\n")
+endif()
+if(NOT found_LanguageStandard_C_stdc11)
+ string(APPEND RunCMake_TEST_FAILED "LanguageStandard_C stdc11 not found in\n ${vcProjectFile}\n")
+endif()