Refactor clang-tidy script to use actual compiler flags and includes (#2133)
Co-authored-by: Otto winter <otto@otto-winter.com>
This commit is contained in:
@@ -1,12 +1,28 @@
|
||||
; This file is so that the C++ files in this repo
|
||||
; can be edited with IDEs like VSCode or CLion
|
||||
; with the platformio system
|
||||
; This PlatformIO project is for development purposes *only*: clang-tidy derives its compilation
|
||||
; database from here, and IDEs like CLion and VSCode also use it. This does not actually create a
|
||||
; usable binary.
|
||||
; It's *not* used during runtime.
|
||||
|
||||
[platformio]
|
||||
default_envs = livingroom8266
|
||||
default_envs = esp8266
|
||||
src_dir = .
|
||||
include_dir = include
|
||||
include_dir =
|
||||
|
||||
[runtime]
|
||||
; This are the flags as set by the runtime.
|
||||
build_flags =
|
||||
-Wno-unused-variable
|
||||
-Wno-unused-but-set-variable
|
||||
-Wno-sign-compare
|
||||
|
||||
[clangtidy]
|
||||
; This are the flags for clang-tidy.
|
||||
build_flags =
|
||||
-Wall
|
||||
-Wunreachable-code
|
||||
-Wfor-loop-analysis
|
||||
-Wshadow-field
|
||||
-Wshadow-field-in-constructor
|
||||
|
||||
[common]
|
||||
lib_deps =
|
||||
@@ -19,17 +35,13 @@ lib_deps =
|
||||
6865@1.0.0 ; TM1651 Battery Display
|
||||
6306@1.0.3 ; HM3301
|
||||
build_flags =
|
||||
-fno-exceptions
|
||||
-Wno-sign-compare
|
||||
-Wno-unused-but-set-variable
|
||||
-Wno-unused-variable
|
||||
-DCLANG_TIDY
|
||||
-DESPHOME_LOG_LEVEL=ESPHOME_LOG_LEVEL_VERY_VERBOSE
|
||||
src_filter =
|
||||
+<esphome>
|
||||
+<tests/dummy_main.cpp>
|
||||
+<.temp/all-include.cpp>
|
||||
|
||||
[env:livingroom8266]
|
||||
[common:esp8266]
|
||||
; use Arduino framework v2.4.2 for clang-tidy (latest 2.5.2 breaks static code analysis, see #760)
|
||||
platform = platformio/espressif8266@1.8.0
|
||||
framework = arduino
|
||||
@@ -42,7 +54,7 @@ lib_deps =
|
||||
build_flags = ${common.build_flags}
|
||||
src_filter = ${common.src_filter}
|
||||
|
||||
[env:livingroom32]
|
||||
[common:esp32]
|
||||
platform = platformio/espressif32@3.2.0
|
||||
framework = arduino
|
||||
board = nodemcu-32s
|
||||
@@ -56,3 +68,19 @@ build_flags =
|
||||
src_filter =
|
||||
${common.src_filter}
|
||||
-<esphome/components/esp8266_pwm>
|
||||
|
||||
[env:esp8266]
|
||||
extends = common:esp8266
|
||||
build_flags = ${common:esp8266.build_flags} ${runtime.build_flags}
|
||||
|
||||
[env:esp8266-tidy]
|
||||
extends = common:esp8266
|
||||
build_flags = ${common:esp8266.build_flags} ${clangtidy.build_flags}
|
||||
|
||||
[env:esp32]
|
||||
extends = common:esp32
|
||||
build_flags = ${common:esp32.build_flags} ${runtime.build_flags}
|
||||
|
||||
[env:esp32-tidy]
|
||||
extends = common:esp32
|
||||
build_flags = ${common:esp32.build_flags} ${clangtidy.build_flags}
|
||||
|
||||
Reference in New Issue
Block a user