[SoC a1 a5 t2x s6] build: Add clang toolchain support for xtensa. [1/1]
PD#SWPL-160352
Problem:
Add clang toolchain support for xtensa.
Solution:
Add clang toolchain support for xtensa.
Verify:
N/A
Change-Id: Ic5f6e04419209feb409c575f9b126f1d9f7ebf21
Signed-off-by: xiaohu.huang <xiaohu.huang@amlogic.com>
diff --git a/cmake/root.cmake b/cmake/root.cmake
index cd5fc5e..0f1451c 100755
--- a/cmake/root.cmake
+++ b/cmake/root.cmake
@@ -46,7 +46,9 @@
add_compile_options(-fdiagnostics-color=always)
endif()
elseif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
- add_compile_options(-fcolor-diagnostics)
+ if(NOT "${ARCH}" STREQUAL "xtensa")
+ add_compile_options(-fcolor-diagnostics)
+ endif()
endif()
include(${SDK_BASE}/build_system/cmake/extensions.cmake)
diff --git a/cmake/toolchains/xtensa_compiler.cmake b/cmake/toolchains/xtensa_compiler.cmake
index 6880fc4..6b5ff4c 100755
--- a/cmake/toolchains/xtensa_compiler.cmake
+++ b/cmake/toolchains/xtensa_compiler.cmake
@@ -7,17 +7,23 @@
set(CMAKE_SYSTEM_NAME Generic)
# Find GCC for XTENSA.
-aml_find_compiler(COMPILER_CC xt-xcc)
-aml_find_compiler(COMPILER_CXX xt-xc++)
-aml_find_compiler(COMPILER_ASM xt-xcc)
+aml_find_compiler(COMPILER_GCC_CC xt-xcc)
+aml_find_compiler(COMPILER_GCC_CXX xt-xc++)
+aml_find_compiler(COMPILER_GCC_ASM xt-xcc)
+
+# Find CLANG for XTENSA.
+aml_find_compiler(COMPILER_CLANG_CC xt-clang)
+aml_find_compiler(COMPILER_CLANG_CXX xt-clang++)
+aml_find_compiler(COMPILER_CLANG_ASM xt-clang)
+
aml_find_compiler(COMPILER_OBJCOPY xt-objcopy)
aml_find_compiler(COMPILER_OBJDUMP xt-objdump)
aml_find_compiler(COMPILER_LD_GEN xt-genldscripts)
# Specify the cross compiler.
-set(CMAKE_C_COMPILER ${COMPILER_CC} CACHE FILEPATH "C compiler")
-set(CMAKE_CXX_COMPILER ${COMPILER_CXX} CACHE FILEPATH "C++ compiler")
-set(CMAKE_ASM_COMPILER ${COMPILER_ASM} CACHE FILEPATH "ASM compiler")
+set(CMAKE_C_COMPILER ${COMPILER_GCC_CC} CACHE FILEPATH "C compiler")
+set(CMAKE_CXX_COMPILER ${COMPILER_GCC_CXX} CACHE FILEPATH "C++ compiler")
+set(CMAKE_ASM_COMPILER ${COMPILER_GCC_ASM} CACHE FILEPATH "ASM compiler")
set(CMAKE_OBJCOPY_COMPILER ${COMPILER_OBJCOPY} CACHE FILEPATH "objcopy compiler")
set(CMAKE_OBJDUMP_COMPILER ${COMPILER_OBJDUMP} CACHE FILEPATH "objdump compiler")
set(CMAKE_LDGEN_COMPILER ${COMPILER_LD_GEN} CACHE FILEPATH "genldscripts compiler")