31 lines
1012 B
CMake
31 lines
1012 B
CMake
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
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()
|
|
|
|
set(TOOLCHAIN_HOME ${ARMCLANG_TOOLCHAIN_PATH})
|
|
|
|
set(COMPILER armclang)
|
|
set(LINKER armlink)
|
|
set(BINTOOLS armclang)
|
|
|
|
set(SYSROOT_TARGET arm)
|
|
|
|
set(CROSS_COMPILE ${TOOLCHAIN_HOME}/bin/)
|
|
|
|
set(TOOLCHAIN_HAS_NEWLIB OFF CACHE BOOL "True if toolchain supports newlib")
|