Imported Upstream version 3.25.0
[platform/upstream/cmake.git] / Modules / Compiler / Tasking-CXX.cmake
1 # Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
2 # file Copyright.txt or https://cmake.org/licensing for details.
3 include(Compiler/Tasking)
4 __compiler_tasking(CXX)
5
6 set(CMAKE_CXX98_STANDARD_COMPILE_OPTION "--c++=03" "--strict")
7 set(CMAKE_CXX98_EXTENSION_COMPILE_OPTION "--iso=03" " ")
8
9 set(CMAKE_CXX11_STANDARD_COMPILE_OPTION "--c++=11" "--strict")
10 set(CMAKE_CXX11_EXTENSION_COMPILE_OPTION "--c++=11" " ")
11
12 set(CMAKE_CXX14_STANDARD_COMPILE_OPTION "--c++=14" "--strict")
13 set(CMAKE_CXX14_EXTENSION_COMPILE_OPTION "--c++=14" " ")
14
15 if(CMAKE_CXX_COMPILER_ARCHITECTURE_ID STREQUAL "TriCore")
16   if(CMAKE_TASKING_TOOLSET STREQUAL "SmartCode")
17     __compiler_check_default_language_standard(CXX 10.1 14)
18   else()
19     __compiler_check_default_language_standard(CXX 6.3 14)
20   endif()
21 elseif(CMAKE_CXX_COMPILER_ARCHITECTURE_ID STREQUAL "ARM")
22   if(CMAKE_TASKING_TOOLSET STREQUAL "SmartCode")
23     __compiler_check_default_language_standard(CXX 10.1 14)
24   elseif(CMAKE_TASKING_TOOLSET STREQUAL "TriCore")
25     __compiler_check_default_language_standard(CXX 6.3 14)
26   else()
27     __compiler_check_default_language_standard(CXX 6.0 14)
28   endif()
29 else()
30   message(FATAL_ERROR "CXX is not supported with the ${CMAKE_CXX_COMPILER_ARCHITECTURE_ID} architecture.")
31 endif()