blob: cae1f11993d1b6a6f05ad20284f32b6b827094f9 [file] [log] [blame]
Ryan Prichardf6283ab2022-01-13 17:30:19 -08001include(Compiler/IntelLLVM)
2__compiler_intel_llvm(CXX)
3
4if("x${CMAKE_CXX_COMPILER_FRONTEND_VARIANT}" STREQUAL "xMSVC")
5 set(CMAKE_CXX_COMPILE_OPTIONS_EXPLICIT_LANGUAGE -TP)
6 set(CMAKE_CXX_CLANG_TIDY_DRIVER_MODE "cl")
7 set(CMAKE_CXX_INCLUDE_WHAT_YOU_USE_DRIVER_MODE "cl")
8 if((NOT DEFINED CMAKE_DEPENDS_USE_COMPILER OR CMAKE_DEPENDS_USE_COMPILER)
9 AND CMAKE_GENERATOR MATCHES "Makefiles|WMake"
10 AND CMAKE_DEPFILE_FLAGS_CXX)
11 set(CMAKE_CXX_DEPENDS_USE_COMPILER TRUE)
12 endif()
13else()
14 set(CMAKE_CXX_COMPILE_OPTIONS_EXPLICIT_LANGUAGE -x c++)
15 if((NOT DEFINED CMAKE_DEPENDS_USE_COMPILER OR CMAKE_DEPENDS_USE_COMPILER)
16 AND CMAKE_GENERATOR MATCHES "Makefiles|WMake"
17 AND CMAKE_DEPFILE_FLAGS_CXX)
18 # dependencies are computed by the compiler itself
19 set(CMAKE_CXX_DEPFILE_FORMAT gcc)
20 set(CMAKE_CXX_DEPENDS_USE_COMPILER TRUE)
21 endif()
22
23 set(CMAKE_CXX_COMPILE_OPTIONS_VISIBILITY_INLINES_HIDDEN "-fvisibility-inlines-hidden")
24
25 string(APPEND CMAKE_CXX_FLAGS_MINSIZEREL_INIT " -DNDEBUG")
26 string(APPEND CMAKE_CXX_FLAGS_RELEASE_INIT " -DNDEBUG")
27 string(APPEND CMAKE_CXX_FLAGS_RELWITHDEBINFO_INIT " -DNDEBUG")
28endif()
29
30set(CMAKE_CXX98_STANDARD__HAS_FULL_SUPPORT ON)
31set(CMAKE_CXX11_STANDARD__HAS_FULL_SUPPORT ON)
32set(CMAKE_CXX14_STANDARD__HAS_FULL_SUPPORT ON)
33
34if(NOT "x${CMAKE_CXX_SIMULATE_ID}" STREQUAL "xMSVC")
35 set(CMAKE_CXX98_STANDARD_COMPILE_OPTION "-std=c++98")
36 set(CMAKE_CXX98_EXTENSION_COMPILE_OPTION "-std=gnu++98")
37
38 set(CMAKE_CXX11_STANDARD_COMPILE_OPTION "-std=c++11")
39 set(CMAKE_CXX11_EXTENSION_COMPILE_OPTION "-std=gnu++11")
40
41 set(CMAKE_CXX14_STANDARD_COMPILE_OPTION "-std=c++14")
42 set(CMAKE_CXX14_EXTENSION_COMPILE_OPTION "-std=gnu++14")
43
44 set(CMAKE_CXX17_STANDARD_COMPILE_OPTION "-std=c++17")
45 set(CMAKE_CXX17_EXTENSION_COMPILE_OPTION "-std=gnu++17")
46
47 set(CMAKE_CXX20_STANDARD_COMPILE_OPTION "-std=c++20")
48 set(CMAKE_CXX20_EXTENSION_COMPILE_OPTION "-std=gnu++20")
49else()
50 set(CMAKE_CXX98_STANDARD_COMPILE_OPTION "")
51 set(CMAKE_CXX98_EXTENSION_COMPILE_OPTION "")
52
53 set(CMAKE_CXX11_STANDARD_COMPILE_OPTION "-Qstd=c++11")
54 set(CMAKE_CXX11_EXTENSION_COMPILE_OPTION "-Qstd=c++11")
55
56 set(CMAKE_CXX14_STANDARD_COMPILE_OPTION "-Qstd=c++14")
57 set(CMAKE_CXX14_EXTENSION_COMPILE_OPTION "-Qstd=c++14")
58
59 set(CMAKE_CXX17_STANDARD_COMPILE_OPTION "-Qstd=c++17")
60 set(CMAKE_CXX17_EXTENSION_COMPILE_OPTION "-Qstd=c++17")
61
62 set(CMAKE_CXX20_STANDARD_COMPILE_OPTION "-Qstd=c++20")
63 set(CMAKE_CXX20_EXTENSION_COMPILE_OPTION "-Qstd=c++20")
64endif()
65
66__compiler_check_default_language_standard(CXX 2020 14)