66# idf.py build
77
88set (min_supported_idf_version "5.3.0" )
9- set (max_supported_idf_version "5.3 .99" )
9+ set (max_supported_idf_version "5.4 .99" )
1010set (idf_version "${IDF_VERSION_MAJOR} .${IDF_VERSION_MINOR} .${IDF_VERSION_PATCH} " )
1111
1212if ("${idf_version} " AND NOT "$ENV{ARDUINO_SKIP_IDF_VERSION_CHECK} " )
@@ -26,7 +26,6 @@ set(CORE_SRCS
2626 cores/esp32/base64.cpp
2727 cores/esp32/cbuf.cpp
2828 cores/esp32/ColorFormat.c
29- cores/esp32/chip-debug-report.cpp
3029 cores/esp32/esp32-hal-adc.c
3130 cores/esp32/esp32-hal-bt.c
3231 cores/esp32/esp32-hal-cpu.c
@@ -43,8 +42,7 @@ set(CORE_SRCS
4342 cores/esp32/esp32-hal-sigmadelta.c
4443 cores/esp32/esp32-hal-spi.c
4544 cores/esp32/esp32-hal-time.c
46- cores/esp32/esp32-hal-timer.c
47- cores/esp32/esp32-hal-tinyusb.c
45+ cores/esp32/esp32-hal-timer.c
4846 cores/esp32/esp32-hal-touch.c
4947 cores/esp32/esp32-hal-touch-ng.c
5048 cores/esp32/esp32-hal-uart.c
@@ -67,82 +65,58 @@ set(CORE_SRCS
6765 cores/esp32/StreamString.cpp
6866 cores/esp32/Tone.cpp
6967 cores/esp32/HWCDC.cpp
70- cores/esp32/USB.cpp
71- cores/esp32/USBCDC.cpp
72- cores/esp32/USBMSC.cpp
7368 cores/esp32/FirmwareMSC.cpp
7469 cores/esp32/firmware_msc_fat.c
7570 cores/esp32/wiring_pulse.c
7671 cores/esp32/wiring_shift.c
7772 cores/esp32/WMath.cpp
7873 cores/esp32/WString.cpp
7974 )
75+ if (IDF_TARGET MATCHES "esp32s2|esp32s3|esp32p4" AND CONFIG_TINYUSB_ENABLED)
76+ list (APPEND CORE_SRCS
77+ cores/esp32/esp32-hal-tinyusb.c
78+ cores/esp32/USB.cpp
79+ cores/esp32/USBCDC.cpp
80+ cores/esp32/USBMSC.cpp)
81+ endif ()
8082
8183set (ARDUINO_ALL_LIBRARIES
8284 ArduinoOTA
8385 AsyncUDP
84- BLE
85- BluetoothSerial
8686 DNSServer
8787 EEPROM
88- ESP_I2S
89- ESP_NOW
90- ESP_SR
9188 ESPmDNS
9289 Ethernet
9390 FFat
9491 FS
9592 HTTPClient
9693 HTTPUpdate
97- Insights
9894 LittleFS
99- Matter
10095 NetBIOS
10196 Network
102- OpenThread
10397 PPP
10498 Preferences
105- RainMaker
10699 SD_MMC
107100 SD
108- SimpleBLE
109- SPIFFS
110101 SPI
111102 Ticker
112103 Update
113- USB
114104 WebServer
115- NetworkClientSecure
116105 WiFi
117- WiFiProv
118106 Wire
119- Zigbee
120107 )
108+ if (IDF_TARGET MATCHES "esp32s2|esp32s3|esp32p4" AND CONFIG_TINYUSB_ENABLED)
109+ list (APPEND ARDUINO_ALL_LIBRARIES USB)
110+ endif ()
121111
122112set (ARDUINO_LIBRARY_ArduinoOTA_SRCS libraries/ArduinoOTA/src/ArduinoOTA.cpp)
123113
124114set (ARDUINO_LIBRARY_AsyncUDP_SRCS libraries/AsyncUDP/src/AsyncUDP.cpp)
125115
126- set (ARDUINO_LIBRARY_BluetoothSerial_SRCS
127- libraries/BluetoothSerial/src/BluetoothSerial.cpp
128- libraries/BluetoothSerial/src/BTAddress.cpp
129- libraries/BluetoothSerial/src/BTAdvertisedDeviceSet.cpp
130- libraries/BluetoothSerial/src/BTScanResultsSet.cpp)
131-
132116set (ARDUINO_LIBRARY_DNSServer_SRCS libraries/DNSServer/src/DNSServer.cpp)
133117
134118set (ARDUINO_LIBRARY_EEPROM_SRCS libraries/EEPROM/src/EEPROM.cpp)
135119
136- set (ARDUINO_LIBRARY_ESP_I2S_SRCS libraries/ESP_I2S/src/ESP_I2S.cpp)
137-
138- set (ARDUINO_LIBRARY_ESP_NOW_SRCS
139- libraries/ESP_NOW/src/ESP32_NOW.cpp
140- libraries/ESP_NOW/src/ESP32_NOW_Serial.cpp)
141-
142- set (ARDUINO_LIBRARY_ESP_SR_SRCS
143- libraries/ESP_SR/src/ESP_SR.cpp
144- libraries/ESP_SR/src/esp32-hal-sr.c)
145-
146120set (ARDUINO_LIBRARY_ESPmDNS_SRCS libraries/ESPmDNS/src/ESPmDNS.cpp)
147121
148122set (ARDUINO_LIBRARY_Ethernet_SRCS libraries/Ethernet/src/ETH.cpp)
@@ -157,52 +131,23 @@ set(ARDUINO_LIBRARY_HTTPClient_SRCS libraries/HTTPClient/src/HTTPClient.cpp)
157131
158132set (ARDUINO_LIBRARY_HTTPUpdate_SRCS libraries/HTTPUpdate/src/HTTPUpdate.cpp)
159133
160- set (ARDUINO_LIBRARY_Insights_SRCS libraries/Insights/src/Insights.cpp)
161-
162134set (ARDUINO_LIBRARY_LittleFS_SRCS libraries/LittleFS/src/LittleFS.cpp)
163135
164136set (ARDUINO_LIBRARY_NetBIOS_SRCS libraries/NetBIOS/src/NetBIOS.cpp)
165137
166- set (ARDUINO_LIBRARY_OpenThread_SRCS
167- libraries/OpenThread/src/OThreadCLI.cpp
168- libraries/OpenThread/src/OThreadCLI_Util.cpp)
169-
170- set (ARDUINO_LIBRARY_Matter_SRCS
171- libraries/Matter/src/MatterEndpoints/MatterGenericSwitch.cpp
172- libraries/Matter/src/MatterEndpoints/MatterOnOffLight.cpp
173- libraries/Matter/src/MatterEndpoints/MatterDimmableLight.cpp
174- libraries/Matter/src/MatterEndpoints/MatterColorTemperatureLight.cpp
175- libraries/Matter/src/MatterEndpoints/MatterColorLight.cpp
176- libraries/Matter/src/MatterEndpoints/MatterEnhancedColorLight.cpp
177- libraries/Matter/src/Matter.cpp)
178-
179138set (ARDUINO_LIBRARY_PPP_SRCS
180139 libraries/PPP/src/PPP.cpp
181140 libraries/PPP/src/ppp.c)
182141
183142set (ARDUINO_LIBRARY_Preferences_SRCS libraries/Preferences/src/Preferences.cpp)
184143
185- set (ARDUINO_LIBRARY_RainMaker_SRCS
186- libraries/RainMaker/src/RMaker.cpp
187- libraries/RainMaker/src/RMakerNode.cpp
188- libraries/RainMaker/src/RMakerParam.cpp
189- libraries/RainMaker/src/RMakerDevice.cpp
190- libraries/RainMaker/src/RMakerType.cpp
191- libraries/RainMaker/src/RMakerQR.cpp
192- libraries/RainMaker/src/RMakerUtils.cpp
193- libraries/RainMaker/src/AppInsights.cpp)
194-
195144set (ARDUINO_LIBRARY_SD_MMC_SRCS libraries/SD_MMC/src/SD_MMC.cpp)
196145
197146set (ARDUINO_LIBRARY_SD_SRCS
198147 libraries/SD/src/SD.cpp
199148 libraries/SD/src/sd_diskio.cpp
200149 libraries/SD/src/sd_diskio_crc.c)
201150
202- set (ARDUINO_LIBRARY_SimpleBLE_SRCS libraries/SimpleBLE/src/SimpleBLE.cpp)
203-
204- set (ARDUINO_LIBRARY_SPIFFS_SRCS libraries/SPIFFS/src/SPIFFS.cpp)
205-
206151set (ARDUINO_LIBRARY_SPI_SRCS libraries/SPI/src/SPI.cpp)
207152
208153set (ARDUINO_LIBRARY_Ticker_SRCS libraries/Ticker/src/Ticker.cpp)
@@ -211,36 +156,34 @@ set(ARDUINO_LIBRARY_Update_SRCS
211156 libraries/Update/src/Updater.cpp
212157 libraries/Update/src/HttpsOTAUpdate.cpp)
213158
214- set (ARDUINO_LIBRARY_USB_SRCS
215- libraries/USB/src/USBHID.cpp
216- libraries/USB/src/USBMIDI.cpp
217- libraries/USB/src/USBHIDMouse.cpp
218- libraries/USB/src/USBHIDKeyboard.cpp
219- libraries/USB/src/keyboardLayout/KeyboardLayout_da_DK.cpp
220- libraries/USB/src/keyboardLayout/KeyboardLayout_de_DE.cpp
221- libraries/USB/src/keyboardLayout/KeyboardLayout_en_US.cpp
222- libraries/USB/src/keyboardLayout/KeyboardLayout_es_ES.cpp
223- libraries/USB/src/keyboardLayout/KeyboardLayout_fr_FR.cpp
224- libraries/USB/src/keyboardLayout/KeyboardLayout_hu_HU.cpp
225- libraries/USB/src/keyboardLayout/KeyboardLayout_it_IT.cpp
226- libraries/USB/src/keyboardLayout/KeyboardLayout_pt_BR.cpp
227- libraries/USB/src/keyboardLayout/KeyboardLayout_pt_PT.cpp
228- libraries/USB/src/keyboardLayout/KeyboardLayout_sv_SE.cpp
229- libraries/USB/src/USBHIDGamepad.cpp
230- libraries/USB/src/USBHIDConsumerControl.cpp
231- libraries/USB/src/USBHIDSystemControl.cpp
232- libraries/USB/src/USBHIDVendor.cpp
233- libraries/USB/src/USBVendor.cpp)
159+ if (IDF_TARGET MATCHES "esp32s2|esp32s3|esp32p4" AND CONFIG_TINYUSB_ENABLED)
160+ set (ARDUINO_LIBRARY_USB_SRCS
161+ libraries/USB/src/USBHID.cpp
162+ libraries/USB/src/USBMIDI.cpp
163+ libraries/USB/src/USBHIDMouse.cpp
164+ libraries/USB/src/USBHIDKeyboard.cpp
165+ libraries/USB/src/keyboardLayout/KeyboardLayout_da_DK.cpp
166+ libraries/USB/src/keyboardLayout/KeyboardLayout_de_DE.cpp
167+ libraries/USB/src/keyboardLayout/KeyboardLayout_en_US.cpp
168+ libraries/USB/src/keyboardLayout/KeyboardLayout_es_ES.cpp
169+ libraries/USB/src/keyboardLayout/KeyboardLayout_fr_FR.cpp
170+ libraries/USB/src/keyboardLayout/KeyboardLayout_hu_HU.cpp
171+ libraries/USB/src/keyboardLayout/KeyboardLayout_it_IT.cpp
172+ libraries/USB/src/keyboardLayout/KeyboardLayout_pt_BR.cpp
173+ libraries/USB/src/keyboardLayout/KeyboardLayout_pt_PT.cpp
174+ libraries/USB/src/keyboardLayout/KeyboardLayout_sv_SE.cpp
175+ libraries/USB/src/USBHIDGamepad.cpp
176+ libraries/USB/src/USBHIDConsumerControl.cpp
177+ libraries/USB/src/USBHIDSystemControl.cpp
178+ libraries/USB/src/USBHIDVendor.cpp
179+ libraries/USB/src/USBVendor.cpp)
180+ endif ()
234181
235182set (ARDUINO_LIBRARY_WebServer_SRCS
236183 libraries/WebServer/src/WebServer.cpp
237184 libraries/WebServer/src/Parsing.cpp
238185 libraries/WebServer/src/detail/mimetable.cpp)
239186
240- set (ARDUINO_LIBRARY_NetworkClientSecure_SRCS
241- libraries/NetworkClientSecure/src/ssl_client.cpp
242- libraries/NetworkClientSecure/src/NetworkClientSecure.cpp)
243-
244187set (ARDUINO_LIBRARY_Network_SRCS
245188 libraries/Network/src/NetworkInterface.cpp
246189 libraries/Network/src/NetworkEvents.cpp
@@ -259,55 +202,8 @@ set(ARDUINO_LIBRARY_WiFi_SRCS
259202 libraries/WiFi/src/STA.cpp
260203 libraries/WiFi/src/AP.cpp)
261204
262- set (ARDUINO_LIBRARY_WiFiProv_SRCS libraries/WiFiProv/src/WiFiProv.cpp)
263-
264205set (ARDUINO_LIBRARY_Wire_SRCS libraries/Wire/src/Wire.cpp)
265206
266- set (ARDUINO_LIBRARY_Zigbee_SRCS
267- libraries/Zigbee/src/ZigbeeCore.cpp
268- libraries/Zigbee/src/ZigbeeEP.cpp
269- libraries/Zigbee/src/ZigbeeHandlers.cpp
270- libraries/Zigbee/src/ep/ZigbeeColorDimmableLight.cpp
271- libraries/Zigbee/src/ep/ZigbeeColorDimmerSwitch.cpp
272- libraries/Zigbee/src/ep/ZigbeeLight.cpp
273- libraries/Zigbee/src/ep/ZigbeeSwitch.cpp
274- libraries/Zigbee/src/ep/ZigbeeTempSensor.cpp
275- libraries/Zigbee/src/ep/ZigbeeThermostat.cpp
276- )
277-
278- set (ARDUINO_LIBRARY_BLE_SRCS
279- libraries/BLE/src/BLE2901.cpp
280- libraries/BLE/src/BLE2902.cpp
281- libraries/BLE/src/BLE2904.cpp
282- libraries/BLE/src/BLEAddress.cpp
283- libraries/BLE/src/BLEAdvertisedDevice.cpp
284- libraries/BLE/src/BLEAdvertising.cpp
285- libraries/BLE/src/BLEBeacon.cpp
286- libraries/BLE/src/BLECharacteristic.cpp
287- libraries/BLE/src/BLECharacteristicMap.cpp
288- libraries/BLE/src/BLEClient.cpp
289- libraries/BLE/src/BLEDescriptor.cpp
290- libraries/BLE/src/BLEDescriptorMap.cpp
291- libraries/BLE/src/BLEDevice.cpp
292- libraries/BLE/src/BLEEddystoneTLM.cpp
293- libraries/BLE/src/BLEEddystoneURL.cpp
294- libraries/BLE/src/BLEExceptions.cpp
295- libraries/BLE/src/BLEHIDDevice.cpp
296- libraries/BLE/src/BLERemoteCharacteristic.cpp
297- libraries/BLE/src/BLERemoteDescriptor.cpp
298- libraries/BLE/src/BLERemoteService.cpp
299- libraries/BLE/src/BLEScan.cpp
300- libraries/BLE/src/BLESecurity.cpp
301- libraries/BLE/src/BLEServer.cpp
302- libraries/BLE/src/BLEService.cpp
303- libraries/BLE/src/BLEServiceMap.cpp
304- libraries/BLE/src/BLEUtils.cpp
305- libraries/BLE/src/BLEUUID.cpp
306- libraries/BLE/src/BLEValue.cpp
307- libraries/BLE/src/FreeRTOS.cpp
308- libraries/BLE/src/GeneralUtils.cpp
309- )
310-
311207set (ARDUINO_LIBRARIES_SRCS)
312208set (ARDUINO_LIBRARIES_REQUIRES)
313209set (ARDUINO_LIBRARIES_INCLUDEDIRS)
@@ -329,15 +225,7 @@ set(includedirs variants/${CONFIG_ARDUINO_VARIANT}/ cores/esp32/ ${ARDUINO_LIBRA
329225set (srcs ${CORE_SRCS} ${ARDUINO_LIBRARIES_SRCS} )
330226set (priv_includes cores/esp32/libb64)
331227set (requires spi_flash esp_partition mbedtls wpa_supplicant esp_adc esp_eth http_parser esp_ringbuf esp_driver_gptimer esp_driver_usb_serial_jtag driver)
332- set (priv_requires fatfs nvs_flash app_update spiffs bootloader_support bt esp_hid usb esp_psram ${ARDUINO_LIBRARIES_REQUIRES} )
333-
334- if (NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_OpenThread)
335- #if(CONFIG_SOC_IEEE802154_SUPPORTED) # Does not work!
336- #if(CONFIG_OPENTHREAD_ENABLED) # Does not work!
337- if (IDF_TARGET STREQUAL "esp32c6" OR IDF_TARGET STREQUAL "esp32h2" ) # Sadly only this works
338- list (APPEND requires openthread)
339- endif ()
340- endif ()
228+ set (priv_requires fatfs nvs_flash app_update bootloader_support bt esp_hid usb esp_psram ${ARDUINO_LIBRARIES_REQUIRES} )
341229
342230if (IDF_TARGET STREQUAL "esp32p4" )
343231 list (APPEND requires esp_driver_touch_sens)
@@ -388,15 +276,6 @@ endif()
388276if (NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_ArduinoOTA)
389277 maybe_add_component(esp_https_ota)
390278endif ()
391- if (NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_ESP_SR)
392- maybe_add_component(espressif__esp_sr)
393- endif ()
394- if (NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_Matter)
395- maybe_add_component(espressif__esp_matter)
396- endif ()
397279if (NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_LittleFS)
398280 maybe_add_component(joltwallet__littlefs)
399281endif ()
400- if (NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_WiFiProv)
401- maybe_add_component(espressif__network_provisioning)
402- endif ()
0 commit comments