From 59b2163eeb160aa636beeeab4b474820d17fa5cb Mon Sep 17 00:00:00 2001 From: Daniel Leung Date: Tue, 8 Oct 2024 11:39:42 -0700 Subject: [PATCH] cmake: toolchain/xt-clang: force assembler ID to GNU xt-clang uses GNU Assembler (xt-as) based on binutils. However, CMake doesn't recognize it when invoking through xt-clang. This results in CMake going through all possible combinations of command line arguments while invoking xt-clang to determine assembler vendor. This multiple invocation of xt-clang unnecessarily lengthens the CMake phase of build, especially when xt-clang needs to obtain license information from remote licensing servers. So here forces the assembler ID to be GNU to speed things up a bit. Signed-off-by: Daniel Leung --- cmake/toolchain/xt-clang/generic.cmake | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/cmake/toolchain/xt-clang/generic.cmake b/cmake/toolchain/xt-clang/generic.cmake index e2293a5cff8..66a56a2adb1 100644 --- a/cmake/toolchain/xt-clang/generic.cmake +++ b/cmake/toolchain/xt-clang/generic.cmake @@ -7,4 +7,14 @@ set(CC clang) set(C++ clang++) set(LINKER xt-ld) +# xt-clang uses GNU Assembler (xt-as) based on binutils. +# However, CMake doesn't recognize it when invoking through xt-clang. +# This results in CMake going through all possible combinations of +# command line arguments while invoking xt-clang to determine +# assembler vendor. This multiple invocation of xt-clang unnecessarily +# lengthens the CMake phase of build, especially when xt-clang needs to +# obtain license information from remote licensing servers. So here +# forces the assembler ID to be GNU to speed things up a bit. +set(CMAKE_ASM_COMPILER_ID "GNU") + message(STATUS "Found toolchain: xt-clang (${XTENSA_TOOLCHAIN_PATH})")