esphome/platformio.ini
Oxan van Leeuwen 924df1e7de
Run clang-tidy against Arduino 3 (#2146)
* Add macros header with more usable Arduino version defines

* Change Arduino version checking to use our version defines

* Add missing ESP8266 check

* Rename Arduino version macro to ARDUINO_VERSION_CODE

* Upgrade clang-tidy to use Arduino 3

* Fix clang-tidy warnings

* Upgrade NeoPixelBus to upstream 2.6.7

* Use Arduino-version-appropriate API to set redirect flags

* Remove now unnecessary CLANG_TIDY ifdefs

* Add preprocessor hackery to avoid including pgmspace.h

* Bump base image to 4.1.1 and update lint

* Fix nfctag

* Fix make_unique ambiguous

* Fix ignore name

* Fix ambiguous v2

* Remove unused begin

* Cast time_t to prevent issues on platforms where time_t is 32bit

Co-authored-by: Otto winter <otto@otto-winter.com>
2021-09-13 18:55:04 +02:00

90 lines
2.2 KiB
INI

; 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 = esp8266
src_dir = .
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 =
AsyncMqttClient-esphome@0.8.4
ArduinoJson-esphomelib@5.13.3
esphome/ESPAsyncWebServer-esphome@1.3.0
FastLED@3.3.2
NeoPixelBus@2.6.7
1655@1.0.2 ; TinyGPSPlus (has name conflict)
6865@1.0.0 ; TM1651 Battery Display
6306@1.0.3 ; HM3301
glmnet/Dsmr@0.3 ; used by dsmr
rweather/Crypto@0.2.0 ; used by dsmr
esphome/noise-c@0.1.1 ; used by api
dudanov/MideaUART@1.1.0 ; used by midea
build_flags =
-DESPHOME_LOG_LEVEL=ESPHOME_LOG_LEVEL_VERY_VERBOSE
src_filter =
+<esphome>
+<tests/dummy_main.cpp>
+<.temp/all-include.cpp>
[common:esp8266]
platform = platformio/espressif8266@3.1.0
framework = arduino
board = nodemcuv2
lib_deps =
${common.lib_deps}
ESP8266WiFi
ESPAsyncTCP-esphome@1.2.3
Update
build_flags = ${common.build_flags}
src_filter = ${common.src_filter}
[common:esp32]
platform = platformio/espressif32@3.2.0
framework = arduino
board = nodemcu-32s
lib_deps =
${common.lib_deps}
esphome/AsyncTCP-esphome@1.2.2
Update
build_flags =
${common.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}