File tree Expand file tree Collapse file tree 4 files changed +29
-10
lines changed
Expand file tree Collapse file tree 4 files changed +29
-10
lines changed Original file line number Diff line number Diff line change @@ -95,7 +95,7 @@ zephyr_file(APPLICATION_ROOT TOOLCHAIN_ROOT)
9595
9696# Host-tools don't unconditionally set TOOLCHAIN_HOME anymore,
9797# but in case Zephyr's SDK toolchain is used, set TOOLCHAIN_HOME
98- if ("${ZEPHYR_TOOLCHAIN_VARIANT} " STREQUAL " zephyr" )
98+ if ("${ZEPHYR_TOOLCHAIN_VARIANT} " MATCHES "^ zephyr/? " )
9999 set (TOOLCHAIN_HOME ${HOST_TOOLS_HOME} )
100100endif ()
101101
@@ -108,12 +108,11 @@ if("${ZEPHYR_TOOLCHAIN_VARIANT}" MATCHES "^([^/]+)/([^/]+)$")
108108 set (_variant "${CMAKE_MATCH_1} " )
109109 set (_compiler "${CMAKE_MATCH_2} " )
110110 set (ZEPHYR_TOOLCHAIN_VARIANT "${_variant} " )
111- set (TOOLCHAIN_VARIANT_COMPILER "${_compiler} " )
112111 set (TOOLCHAIN_VARIANT_COMPILER ${_compiler} CACHE STRING "compiler used by the toolchain variant" FORCE)
113112endif ()
114113
115114# Set cached ZEPHYR_TOOLCHAIN_VARIANT.
116- set (ZEPHYR_TOOLCHAIN_VARIANT ${ZEPHYR_TOOLCHAIN_VARIANT} CACHE STRING "Zephyr toolchain variant" )
115+ set (ZEPHYR_TOOLCHAIN_VARIANT ${ZEPHYR_TOOLCHAIN_VARIANT} CACHE STRING "Zephyr toolchain variant" FORCE )
117116
118117# Configure the toolchain based on what SDK/toolchain is in use.
119118include (${TOOLCHAIN_ROOT} /cmake/toolchain/${ZEPHYR_TOOLCHAIN_VARIANT} /generic.cmake)
Original file line number Diff line number Diff line change @@ -54,7 +54,7 @@ endif()
5454# 1) Zephyr specified as toolchain (ZEPHYR_SDK_INSTALL_DIR still used if defined)
5555# 2) No toolchain specified == Default to Zephyr toolchain
5656# Until we completely deprecate it
57- if (("zephyr" STREQUAL ${ZEPHYR_TOOLCHAIN_VARIANT} ) OR
57+ if ((${ZEPHYR_TOOLCHAIN_VARIANT} MATCHES "^zephyr/?" ) OR
5858 (NOT DEFINED ZEPHYR_TOOLCHAIN_VARIANT) OR
5959 (DEFINED ZEPHYR_SDK_INSTALL_DIR) OR
6060 (Zephyr-sdk_FIND_REQUIRED))
Original file line number Diff line number Diff line change 11# SPDX-License-Identifier: Apache-2.0
22
3- include (${ZEPHYR_SDK_INSTALL_DIR} /cmake/zephyr/generic.cmake)
3+ if (TOOLCHAIN_VARIANT_COMPILER STREQUAL "gnu" OR
4+ NOT DEFINED TOOLCHAIN_VARIANT_COMPILER)
5+ include (${ZEPHYR_SDK_INSTALL_DIR} /cmake/zephyr/gnu/generic.cmake)
6+ set (TOOLCHAIN_VARIANT_COMPILER "gnu" CACHE STRING "compiler used by the toolchain variant" FORCE)
47
5- set (TOOLCHAIN_KCONFIG_DIR ${ZEPHYR_SDK_INSTALL_DIR} /cmake/zephyr)
8+ set (TOOLCHAIN_KCONFIG_DIR ${ZEPHYR_SDK_INSTALL_DIR} /cmake/zephyr)
9+ # Zephyr SDK < 0.17.1 does not set TOOLCHAIN_HAS_GLIBCXX
10+ set (TOOLCHAIN_HAS_GLIBCXX ON CACHE BOOL "True if toolchain supports libstdc++" )
11+ message (STATUS "Found toolchain: zephyr ${SDK_VERSION} (${ZEPHYR_SDK_INSTALL_DIR} )" )
12+ elseif (TOOLCHAIN_VARIANT_COMPILER STREQUAL "llvm" )
13+ include (${ZEPHYR_SDK_INSTALL_DIR} /cmake/zephyr/llvm/generic.cmake)
14+ set (TOOLCHAIN_VARIANT_COMPILER "llvm" CACHE STRING "compiler used by the toolchain variant" FORCE)
615
7- # Zephyr SDK < 0.17.1 does not set TOOLCHAIN_HAS_GLIBCXX
8- set (TOOLCHAIN_HAS_GLIBCXX ON CACHE BOOL "True if toolchain supports libstdc++" )
16+ set (TOOLCHAIN_KCONFIG_DIR ${ZEPHYR_SDK_INSTALL_DIR} /cmake/zephyr)
917
10- message (STATUS "Found toolchain: zephyr-sdk-gnu ${SDK_VERSION} (${ZEPHYR_SDK_INSTALL_DIR} )" )
18+ message (STATUS "Found toolchain: zephyr ${SDK_VERSION} (${ZEPHYR_SDK_INSTALL_DIR} )" )
19+ else ()
20+ message (FATAL_ERROR "Unsupported TOOLCHAIN_VARIANT_COMPILER: ${TOOLCHAIN_VARIANT_COMPILER} " )
21+ endif ()
Original file line number Diff line number Diff line change 11# SPDX-License-Identifier: Apache-2.0
22
3- include (${ZEPHYR_SDK_INSTALL_DIR} /cmake/zephyr/target .cmake)
3+ if (TOOLCHAIN_VARIANT_COMPILER STREQUAL "gnu" OR
4+ TOOLCHAIN_VARIANT_COMPILER STREQUAL "default" )
5+ set (TOOLCHAIN_VARIANT_COMPILER gnu CACHE STRING "Variant compiler being used" )
6+ include (${ZEPHYR_SDK_INSTALL_DIR} /cmake/zephyr/gnu/target .cmake)
7+ elseif (TOOLCHAIN_VARIANT_COMPILER STREQUAL "llvm" )
8+ set (TOOLCHAIN_VARIANT_COMPILER llvm CACHE STRING "Variant compiler being used" )
9+ include (${ZEPHYR_SDK_INSTALL_DIR} /cmake/zephyr/llvm/target .cmake)
10+ else ()
11+ message (FATAL_ERROR "Unsupported TOOLCHAIN_VARIANT_COMPILER: ${TOOLCHAIN_VARIANT_COMPILER} " )
12+ endif ()
You can’t perform that action at this time.
0 commit comments