Xtensa requires building a new toolchain for a specific SoC. By default xtools built Xtensa toolchains all have prefix of xtensa-zephyr-elf. In order to distinguish different toolchains, they are now placed in their own directories under their SoC name. This allows us to have multiple Xtensa toolchains targeting multiple SoCs. The additional level in path name is introduced in SDK v0.11 and sdk-ng master. Signed-off-by: Daniel Leung <daniel.leung@intel.com>
31 lines
1.1 KiB
CMake
31 lines
1.1 KiB
CMake
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
set(CROSS_COMPILE_TARGET_arm arm-zephyr-eabi)
|
|
set(CROSS_COMPILE_TARGET_nios2 nios2-zephyr-elf)
|
|
set(CROSS_COMPILE_TARGET_riscv riscv64-zephyr-elf)
|
|
set(CROSS_COMPILE_TARGET_mips mipsel-zephyr-elf)
|
|
set(CROSS_COMPILE_TARGET_xtensa xtensa-zephyr-elf)
|
|
set(CROSS_COMPILE_TARGET_arc arc-zephyr-elf)
|
|
set(CROSS_COMPILE_TARGET_x86 x86_64-zephyr-elf)
|
|
|
|
set(CROSS_COMPILE_TARGET ${CROSS_COMPILE_TARGET_${ARCH}})
|
|
set(SYSROOT_TARGET ${CROSS_COMPILE_TARGET})
|
|
|
|
if("${ARCH}" STREQUAL "xtensa")
|
|
set(SYSROOT_DIR ${TOOLCHAIN_HOME}/xtensa/${SOC_NAME}/${SYSROOT_TARGET})
|
|
set(CROSS_COMPILE ${TOOLCHAIN_HOME}/xtensa/${SOC_NAME}/${CROSS_COMPILE_TARGET}/bin/${CROSS_COMPILE_TARGET}-)
|
|
else()
|
|
set(SYSROOT_DIR ${TOOLCHAIN_HOME}/${SYSROOT_TARGET}/${SYSROOT_TARGET})
|
|
set(CROSS_COMPILE ${TOOLCHAIN_HOME}/${CROSS_COMPILE_TARGET}/bin/${CROSS_COMPILE_TARGET}-)
|
|
endif()
|
|
|
|
if("${ARCH}" STREQUAL "x86")
|
|
if(CONFIG_X86_64)
|
|
list(APPEND TOOLCHAIN_C_FLAGS -m64)
|
|
list(APPEND TOOLCHAIN_LD_FLAGS -m64)
|
|
else()
|
|
list(APPEND TOOLCHAIN_C_FLAGS -m32)
|
|
list(APPEND TOOLCHAIN_LD_FLAGS -m32)
|
|
endif()
|
|
endif()
|