66# idf.py build
77
88set (min_supported_idf_version "5.3.0" )
9- set (max_supported_idf_version "5.5 .99" )
9+ set (max_supported_idf_version "6.0 .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
@@ -45,8 +44,7 @@ set(CORE_SRCS
4544 cores/esp32/esp32-hal-sigmadelta.c
4645 cores/esp32/esp32-hal-spi.c
4746 cores/esp32/esp32-hal-time.c
48- cores/esp32/esp32-hal-timer.c
49- cores/esp32/esp32-hal-tinyusb.c
47+ cores/esp32/esp32-hal-timer.c
5048 cores/esp32/esp32-hal-touch.c
5149 cores/esp32/esp32-hal-touch-ng.c
5250 cores/esp32/esp32-hal-uart.c
@@ -69,87 +67,59 @@ set(CORE_SRCS
6967 cores/esp32/StreamString.cpp
7068 cores/esp32/Tone.cpp
7169 cores/esp32/HWCDC.cpp
72- cores/esp32/USB.cpp
73- cores/esp32/USBCDC.cpp
74- cores/esp32/USBMSC.cpp
7570 cores/esp32/FirmwareMSC.cpp
7671 cores/esp32/firmware_msc_fat.c
7772 cores/esp32/wiring_pulse.c
7873 cores/esp32/wiring_shift.c
7974 cores/esp32/WMath.cpp
8075 cores/esp32/WString.cpp
8176 )
77+ if (IDF_TARGET MATCHES "esp32s2|esp32s3|esp32p4" AND CONFIG_TINYUSB_ENABLED)
78+ list (APPEND CORE_SRCS
79+ cores/esp32/esp32-hal-tinyusb.c
80+ cores/esp32/USB.cpp
81+ cores/esp32/USBCDC.cpp
82+ cores/esp32/USBMSC.cpp)
83+ endif ()
8284
8385set (ARDUINO_ALL_LIBRARIES
8486 ArduinoOTA
8587 AsyncUDP
86- BLE
87- BluetoothSerial
8888 DNSServer
8989 EEPROM
90- ESP_I2S
91- ESP_NOW
92- ESP_SR
93- ESP_HostedOTA
9490 ESPmDNS
9591 Ethernet
9692 FFat
9793 FS
9894 Hash
9995 HTTPClient
10096 HTTPUpdate
101- Insights
10297 LittleFS
103- Matter
10498 NetBIOS
10599 Network
106- OpenThread
107100 PPP
108101 Preferences
109- RainMaker
110102 SD_MMC
111103 SD
112- SimpleBLE
113- SPIFFS
114104 SPI
115105 Ticker
116106 Update
117- USB
118107 WebServer
119- NetworkClientSecure
120108 WiFi
121- WiFiProv
122109 Wire
123- Zigbee
124110 )
111+ if (IDF_TARGET MATCHES "esp32s2|esp32s3|esp32p4" AND CONFIG_TINYUSB_ENABLED)
112+ list (APPEND ARDUINO_ALL_LIBRARIES USB)
113+ endif ()
125114
126115set (ARDUINO_LIBRARY_ArduinoOTA_SRCS libraries/ArduinoOTA/src/ArduinoOTA.cpp)
127116
128117set (ARDUINO_LIBRARY_AsyncUDP_SRCS libraries/AsyncUDP/src/AsyncUDP.cpp)
129118
130- set (ARDUINO_LIBRARY_BluetoothSerial_SRCS
131- libraries/BluetoothSerial/src/BluetoothSerial.cpp
132- libraries/BluetoothSerial/src/BTAddress.cpp
133- libraries/BluetoothSerial/src/BTAdvertisedDeviceSet.cpp
134- libraries/BluetoothSerial/src/BTScanResultsSet.cpp)
135-
136119set (ARDUINO_LIBRARY_DNSServer_SRCS libraries/DNSServer/src/DNSServer.cpp)
137120
138121set (ARDUINO_LIBRARY_EEPROM_SRCS libraries/EEPROM/src/EEPROM.cpp)
139122
140- set (ARDUINO_LIBRARY_ESP_I2S_SRCS libraries/ESP_I2S/src/ESP_I2S.cpp)
141-
142- set (ARDUINO_LIBRARY_ESP_NOW_SRCS
143- libraries/ESP_NOW/src/ESP32_NOW.cpp
144- libraries/ESP_NOW/src/ESP32_NOW_Serial.cpp)
145-
146- set (ARDUINO_LIBRARY_ESP_SR_SRCS
147- libraries/ESP_SR/src/ESP_SR.cpp
148- libraries/ESP_SR/src/esp32-hal-sr.c)
149-
150- set (ARDUINO_LIBRARY_ESP_HostedOTA_SRCS
151- libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp)
152-
153123set (ARDUINO_LIBRARY_ESPmDNS_SRCS libraries/ESPmDNS/src/ESPmDNS.cpp)
154124
155125set (ARDUINO_LIBRARY_Ethernet_SRCS libraries/Ethernet/src/ETH.cpp)
@@ -164,75 +134,27 @@ set(ARDUINO_LIBRARY_Hash_SRCS
164134 libraries/Hash/src/SHA1Builder.cpp
165135 libraries/Hash/src/SHA2Builder.cpp
166136 libraries/Hash/src/SHA3Builder.cpp
167- libraries/Hash/src/PBKDF2_HMACBuilder.cpp
168- )
137+ libraries/Hash/src/PBKDF2_HMACBuilder.cpp)
169138
170139set (ARDUINO_LIBRARY_HTTPClient_SRCS libraries/HTTPClient/src/HTTPClient.cpp)
171140
172141set (ARDUINO_LIBRARY_HTTPUpdate_SRCS libraries/HTTPUpdate/src/HTTPUpdate.cpp)
173142
174- set (ARDUINO_LIBRARY_Insights_SRCS libraries/Insights/src/Insights.cpp)
175-
176143set (ARDUINO_LIBRARY_LittleFS_SRCS libraries/LittleFS/src/LittleFS.cpp)
177144
178145set (ARDUINO_LIBRARY_NetBIOS_SRCS libraries/NetBIOS/src/NetBIOS.cpp)
179146
180- set (ARDUINO_LIBRARY_OpenThread_SRCS
181- libraries/OpenThread/src/OThread.cpp
182- libraries/OpenThread/src/OThreadCLI.cpp
183- libraries/OpenThread/src/OThreadCLI_Util.cpp)
184-
185- set (ARDUINO_LIBRARY_Matter_SRCS
186- libraries/Matter/src/MatterEndpoints/MatterGenericSwitch.cpp
187- libraries/Matter/src/MatterEndpoints/MatterOnOffLight.cpp
188- libraries/Matter/src/MatterEndpoints/MatterDimmableLight.cpp
189- libraries/Matter/src/MatterEndpoints/MatterColorTemperatureLight.cpp
190- libraries/Matter/src/MatterEndpoints/MatterColorLight.cpp
191- libraries/Matter/src/MatterEndpoints/MatterEnhancedColorLight.cpp
192- libraries/Matter/src/MatterEndpoints/MatterFan.cpp
193- libraries/Matter/src/MatterEndpoints/MatterTemperatureSensor.cpp
194- libraries/Matter/src/MatterEndpoints/MatterTemperatureControlledCabinet.cpp
195- libraries/Matter/src/MatterEndpoints/MatterHumiditySensor.cpp
196- libraries/Matter/src/MatterEndpoints/MatterContactSensor.cpp
197- libraries/Matter/src/MatterEndpoints/MatterWaterLeakDetector.cpp
198- libraries/Matter/src/MatterEndpoints/MatterWaterFreezeDetector.cpp
199- libraries/Matter/src/MatterEndpoints/MatterRainSensor.cpp
200- libraries/Matter/src/MatterEndpoints/MatterPressureSensor.cpp
201- libraries/Matter/src/MatterEndpoints/MatterOccupancySensor.cpp
202- libraries/Matter/src/MatterEndpoints/MatterOnOffPlugin.cpp
203- libraries/Matter/src/MatterEndpoints/MatterDimmablePlugin.cpp
204- libraries/Matter/src/MatterEndpoints/MatterThermostat.cpp
205- libraries/Matter/src/MatterEndpoints/MatterWindowCovering.cpp
206- libraries/Matter/src/Matter.cpp
207- libraries/Matter/src/MatterEndPoint.cpp)
208-
209- set (ARDUINO_LIBRARY_PPP_SRCS
210- libraries/PPP/src/PPP.cpp
211- libraries/PPP/src/ppp.c)
147+ set (ARDUINO_LIBRARY_PPP_SRCS libraries/PPP/src/PPP.cpp)
212148
213149set (ARDUINO_LIBRARY_Preferences_SRCS libraries/Preferences/src/Preferences.cpp)
214150
215- set (ARDUINO_LIBRARY_RainMaker_SRCS
216- libraries/RainMaker/src/RMaker.cpp
217- libraries/RainMaker/src/RMakerNode.cpp
218- libraries/RainMaker/src/RMakerParam.cpp
219- libraries/RainMaker/src/RMakerDevice.cpp
220- libraries/RainMaker/src/RMakerType.cpp
221- libraries/RainMaker/src/RMakerQR.cpp
222- libraries/RainMaker/src/RMakerUtils.cpp
223- libraries/RainMaker/src/AppInsights.cpp)
224-
225151set (ARDUINO_LIBRARY_SD_MMC_SRCS libraries/SD_MMC/src/SD_MMC.cpp)
226152
227153set (ARDUINO_LIBRARY_SD_SRCS
228154 libraries/SD/src/SD.cpp
229155 libraries/SD/src/sd_diskio.cpp
230156 libraries/SD/src/sd_diskio_crc.c)
231157
232- set (ARDUINO_LIBRARY_SimpleBLE_SRCS libraries/SimpleBLE/src/SimpleBLE.cpp)
233-
234- set (ARDUINO_LIBRARY_SPIFFS_SRCS libraries/SPIFFS/src/SPIFFS.cpp)
235-
236158set (ARDUINO_LIBRARY_SPI_SRCS libraries/SPI/src/SPI.cpp)
237159
238160set (ARDUINO_LIBRARY_Ticker_SRCS libraries/Ticker/src/Ticker.cpp)
@@ -241,26 +163,28 @@ set(ARDUINO_LIBRARY_Update_SRCS
241163 libraries/Update/src/Updater.cpp
242164 libraries/Update/src/HttpsOTAUpdate.cpp)
243165
244- set (ARDUINO_LIBRARY_USB_SRCS
245- libraries/USB/src/USBHID.cpp
246- libraries/USB/src/USBMIDI.cpp
247- libraries/USB/src/USBHIDMouse.cpp
248- libraries/USB/src/USBHIDKeyboard.cpp
249- libraries/USB/src/keyboardLayout/KeyboardLayout_da_DK.cpp
250- libraries/USB/src/keyboardLayout/KeyboardLayout_de_DE.cpp
251- libraries/USB/src/keyboardLayout/KeyboardLayout_en_US.cpp
252- libraries/USB/src/keyboardLayout/KeyboardLayout_es_ES.cpp
253- libraries/USB/src/keyboardLayout/KeyboardLayout_fr_FR.cpp
254- libraries/USB/src/keyboardLayout/KeyboardLayout_hu_HU.cpp
255- libraries/USB/src/keyboardLayout/KeyboardLayout_it_IT.cpp
256- libraries/USB/src/keyboardLayout/KeyboardLayout_pt_BR.cpp
257- libraries/USB/src/keyboardLayout/KeyboardLayout_pt_PT.cpp
258- libraries/USB/src/keyboardLayout/KeyboardLayout_sv_SE.cpp
259- libraries/USB/src/USBHIDGamepad.cpp
260- libraries/USB/src/USBHIDConsumerControl.cpp
261- libraries/USB/src/USBHIDSystemControl.cpp
262- libraries/USB/src/USBHIDVendor.cpp
263- libraries/USB/src/USBVendor.cpp)
166+ if (IDF_TARGET MATCHES "esp32s2|esp32s3|esp32p4" AND CONFIG_TINYUSB_ENABLED)
167+ set (ARDUINO_LIBRARY_USB_SRCS
168+ libraries/USB/src/USBHID.cpp
169+ libraries/USB/src/USBMIDI.cpp
170+ libraries/USB/src/USBHIDMouse.cpp
171+ libraries/USB/src/USBHIDKeyboard.cpp
172+ libraries/USB/src/keyboardLayout/KeyboardLayout_da_DK.cpp
173+ libraries/USB/src/keyboardLayout/KeyboardLayout_de_DE.cpp
174+ libraries/USB/src/keyboardLayout/KeyboardLayout_en_US.cpp
175+ libraries/USB/src/keyboardLayout/KeyboardLayout_es_ES.cpp
176+ libraries/USB/src/keyboardLayout/KeyboardLayout_fr_FR.cpp
177+ libraries/USB/src/keyboardLayout/KeyboardLayout_hu_HU.cpp
178+ libraries/USB/src/keyboardLayout/KeyboardLayout_it_IT.cpp
179+ libraries/USB/src/keyboardLayout/KeyboardLayout_pt_BR.cpp
180+ libraries/USB/src/keyboardLayout/KeyboardLayout_pt_PT.cpp
181+ libraries/USB/src/keyboardLayout/KeyboardLayout_sv_SE.cpp
182+ libraries/USB/src/USBHIDGamepad.cpp
183+ libraries/USB/src/USBHIDConsumerControl.cpp
184+ libraries/USB/src/USBHIDSystemControl.cpp
185+ libraries/USB/src/USBHIDVendor.cpp
186+ libraries/USB/src/USBVendor.cpp)
187+ endif ()
264188
265189set (ARDUINO_LIBRARY_WebServer_SRCS
266190 libraries/WebServer/src/WebServer.cpp
@@ -271,10 +195,6 @@ set(ARDUINO_LIBRARY_WebServer_SRCS
271195 libraries/WebServer/src/middleware/CorsMiddleware.cpp
272196 libraries/WebServer/src/middleware/LoggingMiddleware.cpp)
273197
274- set (ARDUINO_LIBRARY_NetworkClientSecure_SRCS
275- libraries/NetworkClientSecure/src/ssl_client.cpp
276- libraries/NetworkClientSecure/src/NetworkClientSecure.cpp)
277-
278198set (ARDUINO_LIBRARY_Network_SRCS
279199 libraries/Network/src/NetworkInterface.cpp
280200 libraries/Network/src/NetworkEvents.cpp
@@ -293,75 +213,8 @@ set(ARDUINO_LIBRARY_WiFi_SRCS
293213 libraries/WiFi/src/STA.cpp
294214 libraries/WiFi/src/AP.cpp)
295215
296- set (ARDUINO_LIBRARY_WiFiProv_SRCS libraries/WiFiProv/src/WiFiProv.cpp)
297-
298216set (ARDUINO_LIBRARY_Wire_SRCS libraries/Wire/src/Wire.cpp)
299217
300- set (ARDUINO_LIBRARY_Zigbee_SRCS
301- libraries/Zigbee/src/ZigbeeCore.cpp
302- libraries/Zigbee/src/ZigbeeEP.cpp
303- libraries/Zigbee/src/ZigbeeHandlers.cpp
304- libraries/Zigbee/src/ep/ZigbeeColorDimmableLight.cpp
305- libraries/Zigbee/src/ep/ZigbeeColorDimmerSwitch.cpp
306- libraries/Zigbee/src/ep/ZigbeeDimmableLight.cpp
307- libraries/Zigbee/src/ep/ZigbeeLight.cpp
308- libraries/Zigbee/src/ep/ZigbeeSwitch.cpp
309- libraries/Zigbee/src/ep/ZigbeeTempSensor.cpp
310- libraries/Zigbee/src/ep/ZigbeeThermostat.cpp
311- libraries/Zigbee/src/ep/ZigbeeFlowSensor.cpp
312- libraries/Zigbee/src/ep/ZigbeePressureSensor.cpp
313- libraries/Zigbee/src/ep/ZigbeeOccupancySensor.cpp
314- libraries/Zigbee/src/ep/ZigbeeCarbonDioxideSensor.cpp
315- libraries/Zigbee/src/ep/ZigbeeContactSwitch.cpp
316- libraries/Zigbee/src/ep/ZigbeeDoorWindowHandle.cpp
317- libraries/Zigbee/src/ep/ZigbeeWindowCovering.cpp
318- libraries/Zigbee/src/ep/ZigbeeVibrationSensor.cpp
319- libraries/Zigbee/src/ep/ZigbeeAnalog.cpp
320- libraries/Zigbee/src/ep/ZigbeeRangeExtender.cpp
321- libraries/Zigbee/src/ep/ZigbeeGateway.cpp
322- libraries/Zigbee/src/ep/ZigbeeWindSpeedSensor.cpp
323- libraries/Zigbee/src/ep/ZigbeeIlluminanceSensor.cpp
324- libraries/Zigbee/src/ep/ZigbeePM25Sensor.cpp
325- libraries/Zigbee/src/ep/ZigbeeElectricalMeasurement.cpp
326- libraries/Zigbee/src/ep/ZigbeeBinary.cpp
327- libraries/Zigbee/src/ep/ZigbeePowerOutlet.cpp
328- libraries/Zigbee/src/ep/ZigbeeFanControl.cpp
329- libraries/Zigbee/src/ep/ZigbeeMultistate.cpp
330- )
331-
332- set (ARDUINO_LIBRARY_BLE_SRCS
333- libraries/BLE/src/BLE2901.cpp
334- libraries/BLE/src/BLE2902.cpp
335- libraries/BLE/src/BLE2904.cpp
336- libraries/BLE/src/BLEAddress.cpp
337- libraries/BLE/src/BLEAdvertisedDevice.cpp
338- libraries/BLE/src/BLEAdvertising.cpp
339- libraries/BLE/src/BLEBeacon.cpp
340- libraries/BLE/src/BLECharacteristic.cpp
341- libraries/BLE/src/BLECharacteristicMap.cpp
342- libraries/BLE/src/BLEClient.cpp
343- libraries/BLE/src/BLEDescriptor.cpp
344- libraries/BLE/src/BLEDescriptorMap.cpp
345- libraries/BLE/src/BLEDevice.cpp
346- libraries/BLE/src/BLEEddystoneTLM.cpp
347- libraries/BLE/src/BLEEddystoneURL.cpp
348- libraries/BLE/src/BLEExceptions.cpp
349- libraries/BLE/src/BLEHIDDevice.cpp
350- libraries/BLE/src/BLERemoteCharacteristic.cpp
351- libraries/BLE/src/BLERemoteDescriptor.cpp
352- libraries/BLE/src/BLERemoteService.cpp
353- libraries/BLE/src/BLEScan.cpp
354- libraries/BLE/src/BLESecurity.cpp
355- libraries/BLE/src/BLEServer.cpp
356- libraries/BLE/src/BLEService.cpp
357- libraries/BLE/src/BLEServiceMap.cpp
358- libraries/BLE/src/BLEUtils.cpp
359- libraries/BLE/src/BLEUUID.cpp
360- libraries/BLE/src/BLEValue.cpp
361- libraries/BLE/src/FreeRTOS.cpp
362- libraries/BLE/src/GeneralUtils.cpp
363- )
364-
365218set (ARDUINO_LIBRARIES_SRCS)
366219set (ARDUINO_LIBRARIES_REQUIRES)
367220set (ARDUINO_LIBRARIES_INCLUDEDIRS)
@@ -383,15 +236,7 @@ set(includedirs variants/${CONFIG_ARDUINO_VARIANT}/ cores/esp32/ ${ARDUINO_LIBRA
383236set (srcs ${CORE_SRCS} ${ARDUINO_LIBRARIES_SRCS} )
384237set (priv_includes cores/esp32/libb64)
385238set (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 esp_http_client esp_https_ota)
386- set (priv_requires fatfs nvs_flash app_update spiffs bootloader_support bt esp_hid usb esp_psram ${ARDUINO_LIBRARIES_REQUIRES} )
387-
388- if (NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_OpenThread)
389- #if(CONFIG_SOC_IEEE802154_SUPPORTED) # Does not work!
390- #if(CONFIG_OPENTHREAD_ENABLED) # Does not work!
391- if (IDF_TARGET STREQUAL "esp32c6" OR IDF_TARGET STREQUAL "esp32h2" OR IDF_TARGET STREQUAL "esp32c5" ) # Sadly only this works
392- list (APPEND requires openthread)
393- endif ()
394- endif ()
239+ set (priv_requires fatfs nvs_flash app_update bootloader_support bt esp_hid usb esp_psram ${ARDUINO_LIBRARIES_REQUIRES} )
395240
396241if (IDF_TARGET STREQUAL "esp32" OR IDF_TARGET STREQUAL "esp32s2" OR IDF_TARGET STREQUAL "esp32s3" OR IDF_TARGET STREQUAL "esp32p4" )
397242 list (APPEND requires esp_driver_touch_sens)
@@ -442,15 +287,6 @@ endif()
442287if (NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_ArduinoOTA)
443288 maybe_add_component(esp_https_ota)
444289endif ()
445- if (NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_ESP_SR)
446- maybe_add_component(espressif__esp_sr)
447- endif ()
448- if (NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_Matter)
449- maybe_add_component(espressif__esp_matter)
450- endif ()
451290if (NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_LittleFS)
452291 maybe_add_component(joltwallet__littlefs)
453292endif ()
454- if (NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_WiFiProv)
455- maybe_add_component(espressif__network_provisioning)
456- endif ()
0 commit comments