diff --git a/cmake/toolchain/armclang/generic.cmake b/cmake/toolchain/armclang/generic.cmake index 8a94102dd15..769ba2c2ff0 100644 --- a/cmake/toolchain/armclang/generic.cmake +++ b/cmake/toolchain/armclang/generic.cmake @@ -4,6 +4,15 @@ set_ifndef(ARMCLANG_TOOLCHAIN_PATH "$ENV{ARMCLANG_TOOLCHAIN_PATH}") set(ARMCLANG_TOOLCHAIN_PATH ${ARMCLANG_TOOLCHAIN_PATH} CACHE PATH "armclang tools install directory") assert(ARMCLANG_TOOLCHAIN_PATH "ARMCLANG_TOOLCHAIN_PATH is not set") +if(${CMAKE_VERSION} VERSION_LESS 3.21 + AND NOT ${CMAKE_GENERATOR} STREQUAL Ninja +) + message(FATAL_ERROR "ARMClang Toolchain and '${CMAKE_GENERATOR}' generator " + "doesn't work properly for target object files on CMake version: " + "${CMAKE_VERSION}. Use the 'Ninja' generator or update to CMake >= 3.21." + ) +endif() + if(NOT EXISTS ${ARMCLANG_TOOLCHAIN_PATH}) message(FATAL_ERROR "Nothing found at ARMCLANG_TOOLCHAIN_PATH: '${ARMCLANG_TOOLCHAIN_PATH}'") endif()