From 193d3e02068a8a25752b77957c8341cecc0c852e Mon Sep 17 00:00:00 2001 From: Oxan van Leeuwen Date: Tue, 4 Jan 2022 20:34:17 +0100 Subject: [PATCH] Fix clang-tidy with multiple ESP32 toolchains installed (#2998) --- script/clang-tidy | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/script/clang-tidy b/script/clang-tidy index 7450084634..8ad25a3dbf 100755 --- a/script/clang-tidy +++ b/script/clang-tidy @@ -58,10 +58,14 @@ def clang_options(idedata): # defines cmd.extend(f'-D{define}' for define in idedata['defines']) - # add include directories, using -isystem for dependencies to suppress their errors + # add toolchain include directories using -isystem + # idedata contains include directories for all toolchains of this platform, only use those from the one in use + toolchain_dir = os.path.normpath(f"{idedata['cxx_path']}/../../") for directory in idedata['includes']['toolchain']: - if 'xtensa-esp32s2-elf' not in directory: + if directory.startswith(toolchain_dir): cmd.extend(['-isystem', directory]) + + # add include directories, using -isystem for dependencies to suppress their errors for directory in sorted(set(idedata['includes']['build'])): dependency = "framework-arduino" in directory or "/libdeps/" in directory cmd.extend(['-isystem' if dependency else '-I', directory])