target.cmake 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. # SPDX-License-Identifier: Apache-2.0
  2. set(CROSS_COMPILE_TARGET_arm arm-zephyr-eabi)
  3. set(CROSS_COMPILE_TARGET_arm64 aarch64-zephyr-elf)
  4. set(CROSS_COMPILE_TARGET_nios2 nios2-zephyr-elf)
  5. set(CROSS_COMPILE_TARGET_riscv riscv64-zephyr-elf)
  6. set(CROSS_COMPILE_TARGET_mips mipsel-zephyr-elf)
  7. set(CROSS_COMPILE_TARGET_xtensa xtensa-zephyr-elf)
  8. set(CROSS_COMPILE_TARGET_arc arc-zephyr-elf)
  9. set(CROSS_COMPILE_TARGET_x86 x86_64-zephyr-elf)
  10. set(CROSS_COMPILE_TARGET_sparc sparc-zephyr-elf)
  11. set(CROSS_COMPILE_TARGET ${CROSS_COMPILE_TARGET_${ARCH}})
  12. set(SYSROOT_TARGET ${CROSS_COMPILE_TARGET})
  13. if("${ARCH}" STREQUAL "xtensa")
  14. # Xtensa GCC needs a different toolchain per SOC
  15. if("${SOC_SERIES}" STREQUAL "cavs_v15")
  16. set(SR_XT_TC_SOC intel_apl_adsp)
  17. elseif("${SOC_SERIES}" STREQUAL "cavs_v18")
  18. set(SR_XT_TC_SOC intel_s1000)
  19. elseif("${SOC_SERIES}" STREQUAL "cavs_v20")
  20. set(SR_XT_TC_SOC intel_s1000)
  21. elseif("${SOC_SERIES}" STREQUAL "cavs_v25")
  22. set(SR_XT_TC_SOC intel_s1000)
  23. elseif("${SOC_SERIES}" STREQUAL "baytrail_adsp")
  24. set(SR_XT_TC_SOC intel_byt_adsp)
  25. elseif("${SOC_SERIES}" STREQUAL "broadwell_adsp")
  26. set(SR_XT_TC_SOC intel_bdw_adsp)
  27. elseif("${SOC_SERIES}" STREQUAL "imx8")
  28. set(SR_XT_TC_SOC nxp_imx_adsp)
  29. elseif("${SOC_SERIES}" STREQUAL "imx8m")
  30. set(SR_XT_TC_SOC nxp_imx8m_adsp)
  31. else()
  32. message(FATAL_ERROR "Not compiler set for SOC_SERIES ${SOC_SERIES}")
  33. endif()
  34. set(SYSROOT_DIR ${TOOLCHAIN_HOME}/xtensa/${SR_XT_TC_SOC}/${SYSROOT_TARGET})
  35. set(CROSS_COMPILE ${TOOLCHAIN_HOME}/xtensa/${SR_XT_TC_SOC}/${CROSS_COMPILE_TARGET}/bin/${CROSS_COMPILE_TARGET}-)
  36. else()
  37. # Non-Xtensa SDK toolchains follow a simpler convention
  38. set(SYSROOT_DIR ${TOOLCHAIN_HOME}/${SYSROOT_TARGET}/${SYSROOT_TARGET})
  39. set(CROSS_COMPILE ${TOOLCHAIN_HOME}/${CROSS_COMPILE_TARGET}/bin/${CROSS_COMPILE_TARGET}-)
  40. endif()
  41. if("${ARCH}" STREQUAL "x86")
  42. if(CONFIG_X86_64)
  43. list(APPEND TOOLCHAIN_C_FLAGS -m64)
  44. list(APPEND TOOLCHAIN_LD_FLAGS -m64)
  45. else()
  46. list(APPEND TOOLCHAIN_C_FLAGS -m32)
  47. list(APPEND TOOLCHAIN_LD_FLAGS -m32)
  48. endif()
  49. endif()