-
-
Notifications
You must be signed in to change notification settings - Fork 2
/
platformio.ini
129 lines (115 loc) · 3.93 KB
/
platformio.ini
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
; PlatformIO Project Configuration File
;
; Build options: build flags, source filter
; Upload options: custom upload port, speed and extra flags
; Library options: dependencies, extra library storages
; Advanced options: extra scripting
;
; Please visit documentation for the other options and examples
; https://docs.platformio.org/page/projectconf.html
[platformio]
default_envs = esp32dev
; #src_dir = ./googlemock
; #src_dir = ./googletest
; src_dir = ./src
[env:esp32dev]
; 22 Dec 2021: #feature/arduino-idf-master is 33ff4132ef9a79be50552bd89e6fd44b9518643c
platform = https://github.com/platformio/platform-espressif32.git#feature/arduino-idf-master
platform_packages =
; use upstream Git version
; 01 Jan 2022: #2.0.2 is caef4006af491130136b219c1205bdcf8f08bf2b
framework-arduino-esp32 @ https://github.com/espressif/arduino-esp32#2.0.2
board = esp32dev
framework = arduino
monitor_filters = esp32_exception_decoder ;, log2file
monitor_speed = 115200
extra_scripts =
; you can disable debug linker flag to reduce binary size (comment out line below), but the backtraces will become less readable
scripts/extra_linker_flags.py
; fix the platform package to use gcc-ar and gcc-ranlib to enable lto linker plugin
; more detail: https://embeddedartistry.com/blog/2020/04/13/prefer-gcc-ar-to-ar-in-your-buildsystems/
pre:scripts/apply_patches.py
; Not using OTAs for now, so this can be used to increase the flash capacity
; board_build.partitions = no_ota.csv
build_flags =
-DCORE_DEBUG_LEVEL=0
; ; Debug logs - might need the no_ota partition setting to make the code fit into flash
; -DCORE_DEBUG_LEVEL=5
; -DCONFIG_NIMBLE_CPP_ENABLE_RETURN_CODE_TEXT=1
; -DCONFIG_NIMBLE_CPP_ENABLE_GAP_EVENT_CODE_TEXT=1
-DTEMPLATE_PLACEHOLDER="\'$\'"
-DCONFIG_BT_NIMBLE_ROLE_OBSERVER_DISABLED=1
-DCONFIG_BT_NIMBLE_ROLE_PERIPHERAL_DISABLED=1
-DCONFIG_BT_NIMBLE_ROLE_BROADCASTER_DISABLED=1
-DCONFIG_BT_NIMBLE_MAX_BONDS=1
-DCONFIG_BT_NIMBLE_MAX_CCCDS=1
-DCONFIG_BT_NIMBLE_MAX_CONNECTIONS=1
-DCONFIG_BT_NIMBLE_PINNED_TO_CORE=1
-DCONFIG_ASYNC_TCP_RUNNING_CORE=1
-DCONFIG_ASYNC_TCP_USE_WDT=1
-std=gnu++17
-Wall
-Wextra
-flto
build_unflags =
-std=gnu++11
; re-enable lto - afaik it was only disabled because of https://github.com/espressif/esp-idf/issues/3989
-fno-lto
upload_speed = 921600
; debug_tool = esp-prog
; upload_protocol = esp-prog
; debug_init_break = tbreak setup
lib_ignore =
; ignore BLE lib as we use NimBLE
ESP32 BLE Arduino
; ignore LittleFS as it's now part of IDF
LittleFS_esp32
lib_deps =
bblanchon/ArduinoJson @ 6.18.5
khoih-prog/ESPAsync_WiFiManager @ 1.9.8
h2zero/NimBLE-Arduino @ 1.3.4
vintlabs/FauxmoESP @ 3.4.0
arkhipenko/TaskScheduler@^3.6.0
[env:googletest_esp32]
platform = https://github.com/platformio/platform-espressif32.git#feature/idf-v4.0
platform_packages =
; use upstream Git version
framework-arduino-esp32 @ https://github.com/espressif/arduino-esp32#idf-release/v4.2
board = esp32dev
framework = arduino
monitor_speed = 115200
monitor_filters = esp32_exception_decoder
build_flags = -std=gnu++17
build_unflags = -std=gnu++11
test_build_project_src = yes
lib_compat_mode = off
src_filter = -<main.cpp> +<test/test_common/LinakDesk>
; src_dir = test/test_common/LinakDesk
lib_ignore =
LinakDeskEmbedded
lib_deps =
# RECOMMENDED
# Accept new functionality in a backwards compatible manner and patches
google/googletest @ ^1.10.0
[env:native]
platform = native
build_type = debug
build_flags =
-std=gnu++17
-g
-pthread
-Wall
-Wextra
; -Wpedantic
build_unflags = -std=gnu++11
lib_compat_mode = off
; test_build_project_src = no
src_filter = -<main.cpp>
lib_ignore =
LinakDeskEmbedded
lib_deps =
# RECOMMENDED
# Accept new functionality in a backwards compatible manner and patches
# mainline of arduino-mock doesn't work for me, but top of 'client' branch does:
https://github.com/balp/arduino-mock#83307c89793ad62ab7d0bf722615103da5a1f46f
googletest @ ^1.10.0