Imported Upstream version 3.25.0
[platform/upstream/cmake.git] / Tests / RunCMake / CheckSourceCompiles / CheckCXXSourceCompiles.cmake
1
2 enable_language (CXX)
3 include(CheckCXXSourceCompiles)
4
5 set(CXX 1) # test that this is tolerated
6
7 check_cxx_source_compiles("I don't build" SHOULD_FAIL)
8 if(SHOULD_FAIL)
9   message(SEND_ERROR "invalid CXX source didn't fail.")
10 endif()
11
12 check_cxx_source_compiles([=[
13   #include <vector>
14   int main() {
15     return 0;
16   }
17 ]=]
18  SHOULD_BUILD)
19 if(NOT SHOULD_BUILD)
20   message(SEND_ERROR "Test fail for valid CXX source.")
21 endif()
22
23 CHECK_CXX_SOURCE_COMPILES("void l(char const (&x)[2]){}; int main() { l(\"\\\\n\"); return 0;}"
24   SHOULD_BUILD_COMPLEX)
25
26 if(NOT SHOULD_BUILD_COMPLEX)
27   message(SEND_ERROR "Test fail for valid CXX complex source.")
28 endif()