Merge topic 'iar-fail-early'

a26ebb894b IAR: Abort if compiler version or target architecture is not detected

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2353
This commit is contained in:
Brad King 2018-09-11 12:31:13 +00:00 committed by Kitware Robot
commit 528d7625b8
3 changed files with 14 additions and 0 deletions

View File

@ -18,4 +18,6 @@ elseif("${CMAKE_ASM${ASM_DIALECT}_COMPILER_ARCHITECTURE_ID}" STREQUAL "AVR")
__compiler_iar_AVR(ASM) __compiler_iar_AVR(ASM)
set(CMAKE_ASM_SOURCE_FILE_EXTENSIONS s90;asm;msa) set(CMAKE_ASM_SOURCE_FILE_EXTENSIONS s90;asm;msa)
else()
message(FATAL_ERROR "CMAKE_ASM${ASM_DIALECT}_COMPILER_ARCHITECTURE_ID not detected as \"AVR\" or \"ARM\". This should be automatic.")
endif() endif()

View File

@ -5,6 +5,9 @@ include(Compiler/CMakeCommonCompilerMacros)
# The toolchains for ARM and AVR are quite different: # The toolchains for ARM and AVR are quite different:
if("${CMAKE_C_COMPILER_ARCHITECTURE_ID}" STREQUAL "ARM") if("${CMAKE_C_COMPILER_ARCHITECTURE_ID}" STREQUAL "ARM")
if(NOT CMAKE_C_COMPILER_VERSION)
message(FATAL_ERROR "CMAKE_C_COMPILER_VERSION not detected. This should be automatic.")
endif()
set(CMAKE_C_EXTENSION_COMPILE_OPTION -e) set(CMAKE_C_EXTENSION_COMPILE_OPTION -e)
@ -40,4 +43,7 @@ elseif("${CMAKE_C_COMPILER_ARCHITECTURE_ID}" STREQUAL "AVR")
get_filename_component(_compilerDir "${CMAKE_C_COMPILER}" PATH) get_filename_component(_compilerDir "${CMAKE_C_COMPILER}" PATH)
get_filename_component(_compilerDir "${_compilerDir}" PATH) get_filename_component(_compilerDir "${_compilerDir}" PATH)
include_directories("${_compilerDir}/inc" ) include_directories("${_compilerDir}/inc" )
else()
message(FATAL_ERROR "CMAKE_C_COMPILER_ARCHITECTURE_ID not detected as \"AVR\" or \"ARM\". This should be automatic.")
endif() endif()

View File

@ -10,6 +10,9 @@ if("${CMAKE_CXX_COMPILER_ARCHITECTURE_ID}" STREQUAL "ARM")
# #
# --c++ is full C++ and supported since 6.10 # --c++ is full C++ and supported since 6.10
if(NOT CMAKE_IAR_CXX_FLAG) if(NOT CMAKE_IAR_CXX_FLAG)
if(NOT CMAKE_CXX_COMPILER_VERSION)
message(FATAL_ERROR "CMAKE_CXX_COMPILER_VERSION not detected. This should be automatic.")
endif()
if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 6.10) if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 6.10)
set(CMAKE_IAR_CXX_FLAG --c++) set(CMAKE_IAR_CXX_FLAG --c++)
else() else()
@ -48,4 +51,7 @@ elseif("${CMAKE_CXX_COMPILER_ARCHITECTURE_ID}" STREQUAL "AVR")
get_filename_component(_compilerDir "${CMAKE_C_COMPILER}" PATH) get_filename_component(_compilerDir "${CMAKE_C_COMPILER}" PATH)
get_filename_component(_compilerDir "${_compilerDir}" PATH) get_filename_component(_compilerDir "${_compilerDir}" PATH)
include_directories("${_compilerDir}/inc") include_directories("${_compilerDir}/inc")
else()
message(FATAL_ERROR "CMAKE_CXX_COMPILER_ARCHITECTURE_ID not detected as \"AVR\" or \"ARM\". This should be automatic." )
endif() endif()