mirror of
https://github.com/reactos/CMake.git
synced 2025-02-23 05:22:26 +00:00
IAR: Abort if compiler version or target architecture is not detected
If these are not detected then we cannot support the IAR compiler. Fail early with an explicit message instead of silently proceeding and getting strange errors. Issue: #18333
This commit is contained in:
parent
cc5bac458b
commit
a26ebb894b
@ -18,4 +18,6 @@ elseif("${CMAKE_ASM${ASM_DIALECT}_COMPILER_ARCHITECTURE_ID}" STREQUAL "AVR")
|
||||
__compiler_iar_AVR(ASM)
|
||||
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()
|
||||
|
@ -5,6 +5,9 @@ include(Compiler/CMakeCommonCompilerMacros)
|
||||
|
||||
# The toolchains for ARM and AVR are quite different:
|
||||
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)
|
||||
|
||||
@ -40,4 +43,7 @@ elseif("${CMAKE_C_COMPILER_ARCHITECTURE_ID}" STREQUAL "AVR")
|
||||
get_filename_component(_compilerDir "${CMAKE_C_COMPILER}" PATH)
|
||||
get_filename_component(_compilerDir "${_compilerDir}" PATH)
|
||||
include_directories("${_compilerDir}/inc" )
|
||||
|
||||
else()
|
||||
message(FATAL_ERROR "CMAKE_C_COMPILER_ARCHITECTURE_ID not detected as \"AVR\" or \"ARM\". This should be automatic.")
|
||||
endif()
|
||||
|
@ -10,6 +10,9 @@ if("${CMAKE_CXX_COMPILER_ARCHITECTURE_ID}" STREQUAL "ARM")
|
||||
#
|
||||
# --c++ is full C++ and supported since 6.10
|
||||
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)
|
||||
set(CMAKE_IAR_CXX_FLAG --c++)
|
||||
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 "${_compilerDir}" PATH)
|
||||
include_directories("${_compilerDir}/inc")
|
||||
|
||||
else()
|
||||
message(FATAL_ERROR "CMAKE_CXX_COMPILER_ARCHITECTURE_ID not detected as \"AVR\" or \"ARM\". This should be automatic." )
|
||||
endif()
|
||||
|
Loading…
x
Reference in New Issue
Block a user