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} " )
@@ -25,7 +25,6 @@ endif()
2525set (CORE_SRCS
2626 cores/esp32/base64.cpp
2727 cores/esp32/cbuf.cpp
28- cores/esp32/chip-debug-report.cpp
2928 cores/esp32/esp32-hal-adc.c
3029 cores/esp32/esp32-hal-bt.c
3130 cores/esp32/esp32-hal-cpu.c
@@ -42,8 +41,7 @@ set(CORE_SRCS
4241 cores/esp32/esp32-hal-sigmadelta.c
4342 cores/esp32/esp32-hal-spi.c
4443 cores/esp32/esp32-hal-time.c
45- cores/esp32/esp32-hal-timer.c
46- cores/esp32/esp32-hal-tinyusb.c
44+ cores/esp32/esp32-hal-timer.c
4745 cores/esp32/esp32-hal-touch.c
4846 cores/esp32/esp32-hal-touch-ng.c
4947 cores/esp32/esp32-hal-uart.c
@@ -66,82 +64,58 @@ set(CORE_SRCS
6664 cores/esp32/StreamString.cpp
6765 cores/esp32/Tone.cpp
6866 cores/esp32/HWCDC.cpp
69- cores/esp32/USB.cpp
70- cores/esp32/USBCDC.cpp
71- cores/esp32/USBMSC.cpp
7267 cores/esp32/FirmwareMSC.cpp
7368 cores/esp32/firmware_msc_fat.c
7469 cores/esp32/wiring_pulse.c
7570 cores/esp32/wiring_shift.c
7671 cores/esp32/WMath.cpp
7772 cores/esp32/WString.cpp
7873 )
74+ if (IDF_TARGET MATCHES "esp32s2|esp32s3|esp32p4" AND CONFIG_TINYUSB_ENABLED)
75+ list (APPEND CORE_SRCS
76+ cores/esp32/esp32-hal-tinyusb.c
77+ cores/esp32/USB.cpp
78+ cores/esp32/USBCDC.cpp
79+ cores/esp32/USBMSC.cpp)
80+ endif ()
7981
8082set (ARDUINO_ALL_LIBRARIES
8183 ArduinoOTA
8284 AsyncUDP
83- BLE
84- BluetoothSerial
8585 DNSServer
8686 EEPROM
87- ESP_I2S
88- ESP_NOW
89- ESP_SR
9087 ESPmDNS
9188 Ethernet
9289 FFat
9390 FS
9491 HTTPClient
9592 HTTPUpdate
96- Insights
9793 LittleFS
98- Matter
9994 NetBIOS
10095 Network
101- OpenThread
10296 PPP
10397 Preferences
104- RainMaker
10598 SD_MMC
10699 SD
107- SimpleBLE
108- SPIFFS
109100 SPI
110101 Ticker
111102 Update
112- USB
113103 WebServer
114- NetworkClientSecure
115104 WiFi
116- WiFiProv
117105 Wire
118- Zigbee
119106 )
107+ if (IDF_TARGET MATCHES "esp32s2|esp32s3|esp32p4" AND CONFIG_TINYUSB_ENABLED)
108+ list (APPEND ARDUINO_ALL_LIBRARIES USB)
109+ endif ()
120110
121111set (ARDUINO_LIBRARY_ArduinoOTA_SRCS libraries/ArduinoOTA/src/ArduinoOTA.cpp)
122112
123113set (ARDUINO_LIBRARY_AsyncUDP_SRCS libraries/AsyncUDP/src/AsyncUDP.cpp)
124114
125- set (ARDUINO_LIBRARY_BluetoothSerial_SRCS
126- libraries/BluetoothSerial/src/BluetoothSerial.cpp
127- libraries/BluetoothSerial/src/BTAddress.cpp
128- libraries/BluetoothSerial/src/BTAdvertisedDeviceSet.cpp
129- libraries/BluetoothSerial/src/BTScanResultsSet.cpp)
130-
131115set (ARDUINO_LIBRARY_DNSServer_SRCS libraries/DNSServer/src/DNSServer.cpp)
132116
133117set (ARDUINO_LIBRARY_EEPROM_SRCS libraries/EEPROM/src/EEPROM.cpp)
134118
135- set (ARDUINO_LIBRARY_ESP_I2S_SRCS libraries/ESP_I2S/src/ESP_I2S.cpp)
136-
137- set (ARDUINO_LIBRARY_ESP_NOW_SRCS
138- libraries/ESP_NOW/src/ESP32_NOW.cpp
139- libraries/ESP_NOW/src/ESP32_NOW_Serial.cpp)
140-
141- set (ARDUINO_LIBRARY_ESP_SR_SRCS
142- libraries/ESP_SR/src/ESP_SR.cpp
143- libraries/ESP_SR/src/esp32-hal-sr.c)
144-
145119set (ARDUINO_LIBRARY_ESPmDNS_SRCS libraries/ESPmDNS/src/ESPmDNS.cpp)
146120
147121set (ARDUINO_LIBRARY_Ethernet_SRCS libraries/Ethernet/src/ETH.cpp)
@@ -156,48 +130,23 @@ set(ARDUINO_LIBRARY_HTTPClient_SRCS libraries/HTTPClient/src/HTTPClient.cpp)
156130
157131set (ARDUINO_LIBRARY_HTTPUpdate_SRCS libraries/HTTPUpdate/src/HTTPUpdate.cpp)
158132
159- set (ARDUINO_LIBRARY_Insights_SRCS libraries/Insights/src/Insights.cpp)
160-
161133set (ARDUINO_LIBRARY_LittleFS_SRCS libraries/LittleFS/src/LittleFS.cpp)
162134
163135set (ARDUINO_LIBRARY_NetBIOS_SRCS libraries/NetBIOS/src/NetBIOS.cpp)
164136
165- set (ARDUINO_LIBRARY_OpenThread_SRCS
166- libraries/OpenThread/src/OThreadCLI.cpp
167- libraries/OpenThread/src/OThreadCLI_Util.cpp)
168-
169- set (ARDUINO_LIBRARY_Matter_SRCS
170- libraries/Matter/src/MatterEndpoints/MatterOnOffLight.cpp
171- libraries/Matter/src/MatterEndpoints/MatterDimmableLight.cpp
172- libraries/Matter/src/Matter.cpp)
173-
174137set (ARDUINO_LIBRARY_PPP_SRCS
175138 libraries/PPP/src/PPP.cpp
176139 libraries/PPP/src/ppp.c)
177140
178141set (ARDUINO_LIBRARY_Preferences_SRCS libraries/Preferences/src/Preferences.cpp)
179142
180- set (ARDUINO_LIBRARY_RainMaker_SRCS
181- libraries/RainMaker/src/RMaker.cpp
182- libraries/RainMaker/src/RMakerNode.cpp
183- libraries/RainMaker/src/RMakerParam.cpp
184- libraries/RainMaker/src/RMakerDevice.cpp
185- libraries/RainMaker/src/RMakerType.cpp
186- libraries/RainMaker/src/RMakerQR.cpp
187- libraries/RainMaker/src/RMakerUtils.cpp
188- libraries/RainMaker/src/AppInsights.cpp)
189-
190143set (ARDUINO_LIBRARY_SD_MMC_SRCS libraries/SD_MMC/src/SD_MMC.cpp)
191144
192145set (ARDUINO_LIBRARY_SD_SRCS
193146 libraries/SD/src/SD.cpp
194147 libraries/SD/src/sd_diskio.cpp
195148 libraries/SD/src/sd_diskio_crc.c)
196149
197- set (ARDUINO_LIBRARY_SimpleBLE_SRCS libraries/SimpleBLE/src/SimpleBLE.cpp)
198-
199- set (ARDUINO_LIBRARY_SPIFFS_SRCS libraries/SPIFFS/src/SPIFFS.cpp)
200-
201150set (ARDUINO_LIBRARY_SPI_SRCS libraries/SPI/src/SPI.cpp)
202151
203152set (ARDUINO_LIBRARY_Ticker_SRCS libraries/Ticker/src/Ticker.cpp)
@@ -206,36 +155,34 @@ set(ARDUINO_LIBRARY_Update_SRCS
206155 libraries/Update/src/Updater.cpp
207156 libraries/Update/src/HttpsOTAUpdate.cpp)
208157
209- set (ARDUINO_LIBRARY_USB_SRCS
210- libraries/USB/src/USBHID.cpp
211- libraries/USB/src/USBMIDI.cpp
212- libraries/USB/src/USBHIDMouse.cpp
213- libraries/USB/src/USBHIDKeyboard.cpp
214- libraries/USB/src/keyboardLayout/KeyboardLayout_da_DK.cpp
215- libraries/USB/src/keyboardLayout/KeyboardLayout_de_DE.cpp
216- libraries/USB/src/keyboardLayout/KeyboardLayout_en_US.cpp
217- libraries/USB/src/keyboardLayout/KeyboardLayout_es_ES.cpp
218- libraries/USB/src/keyboardLayout/KeyboardLayout_fr_FR.cpp
219- libraries/USB/src/keyboardLayout/KeyboardLayout_hu_HU.cpp
220- libraries/USB/src/keyboardLayout/KeyboardLayout_it_IT.cpp
221- libraries/USB/src/keyboardLayout/KeyboardLayout_pt_BR.cpp
222- libraries/USB/src/keyboardLayout/KeyboardLayout_pt_PT.cpp
223- libraries/USB/src/keyboardLayout/KeyboardLayout_sv_SE.cpp
224- libraries/USB/src/USBHIDGamepad.cpp
225- libraries/USB/src/USBHIDConsumerControl.cpp
226- libraries/USB/src/USBHIDSystemControl.cpp
227- libraries/USB/src/USBHIDVendor.cpp
228- libraries/USB/src/USBVendor.cpp)
158+ if (IDF_TARGET MATCHES "esp32s2|esp32s3|esp32p4" AND CONFIG_TINYUSB_ENABLED)
159+ set (ARDUINO_LIBRARY_USB_SRCS
160+ libraries/USB/src/USBHID.cpp
161+ libraries/USB/src/USBMIDI.cpp
162+ libraries/USB/src/USBHIDMouse.cpp
163+ libraries/USB/src/USBHIDKeyboard.cpp
164+ libraries/USB/src/keyboardLayout/KeyboardLayout_da_DK.cpp
165+ libraries/USB/src/keyboardLayout/KeyboardLayout_de_DE.cpp
166+ libraries/USB/src/keyboardLayout/KeyboardLayout_en_US.cpp
167+ libraries/USB/src/keyboardLayout/KeyboardLayout_es_ES.cpp
168+ libraries/USB/src/keyboardLayout/KeyboardLayout_fr_FR.cpp
169+ libraries/USB/src/keyboardLayout/KeyboardLayout_hu_HU.cpp
170+ libraries/USB/src/keyboardLayout/KeyboardLayout_it_IT.cpp
171+ libraries/USB/src/keyboardLayout/KeyboardLayout_pt_BR.cpp
172+ libraries/USB/src/keyboardLayout/KeyboardLayout_pt_PT.cpp
173+ libraries/USB/src/keyboardLayout/KeyboardLayout_sv_SE.cpp
174+ libraries/USB/src/USBHIDGamepad.cpp
175+ libraries/USB/src/USBHIDConsumerControl.cpp
176+ libraries/USB/src/USBHIDSystemControl.cpp
177+ libraries/USB/src/USBHIDVendor.cpp
178+ libraries/USB/src/USBVendor.cpp)
179+ endif ()
229180
230181set (ARDUINO_LIBRARY_WebServer_SRCS
231182 libraries/WebServer/src/WebServer.cpp
232183 libraries/WebServer/src/Parsing.cpp
233184 libraries/WebServer/src/detail/mimetable.cpp)
234185
235- set (ARDUINO_LIBRARY_NetworkClientSecure_SRCS
236- libraries/NetworkClientSecure/src/ssl_client.cpp
237- libraries/NetworkClientSecure/src/NetworkClientSecure.cpp)
238-
239186set (ARDUINO_LIBRARY_Network_SRCS
240187 libraries/Network/src/NetworkInterface.cpp
241188 libraries/Network/src/NetworkEvents.cpp
@@ -254,55 +201,8 @@ set(ARDUINO_LIBRARY_WiFi_SRCS
254201 libraries/WiFi/src/STA.cpp
255202 libraries/WiFi/src/AP.cpp)
256203
257- set (ARDUINO_LIBRARY_WiFiProv_SRCS libraries/WiFiProv/src/WiFiProv.cpp)
258-
259204set (ARDUINO_LIBRARY_Wire_SRCS libraries/Wire/src/Wire.cpp)
260205
261- set (ARDUINO_LIBRARY_Zigbee_SRCS
262- libraries/Zigbee/src/ZigbeeCore.cpp
263- libraries/Zigbee/src/ZigbeeEP.cpp
264- libraries/Zigbee/src/ZigbeeHandlers.cpp
265- libraries/Zigbee/src/ep/ZigbeeColorDimmableLight.cpp
266- libraries/Zigbee/src/ep/ZigbeeColorDimmerSwitch.cpp
267- libraries/Zigbee/src/ep/ZigbeeLight.cpp
268- libraries/Zigbee/src/ep/ZigbeeSwitch.cpp
269- libraries/Zigbee/src/ep/ZigbeeTempSensor.cpp
270- libraries/Zigbee/src/ep/ZigbeeThermostat.cpp
271- )
272-
273- set (ARDUINO_LIBRARY_BLE_SRCS
274- libraries/BLE/src/BLE2901.cpp
275- libraries/BLE/src/BLE2902.cpp
276- libraries/BLE/src/BLE2904.cpp
277- libraries/BLE/src/BLEAddress.cpp
278- libraries/BLE/src/BLEAdvertisedDevice.cpp
279- libraries/BLE/src/BLEAdvertising.cpp
280- libraries/BLE/src/BLEBeacon.cpp
281- libraries/BLE/src/BLECharacteristic.cpp
282- libraries/BLE/src/BLECharacteristicMap.cpp
283- libraries/BLE/src/BLEClient.cpp
284- libraries/BLE/src/BLEDescriptor.cpp
285- libraries/BLE/src/BLEDescriptorMap.cpp
286- libraries/BLE/src/BLEDevice.cpp
287- libraries/BLE/src/BLEEddystoneTLM.cpp
288- libraries/BLE/src/BLEEddystoneURL.cpp
289- libraries/BLE/src/BLEExceptions.cpp
290- libraries/BLE/src/BLEHIDDevice.cpp
291- libraries/BLE/src/BLERemoteCharacteristic.cpp
292- libraries/BLE/src/BLERemoteDescriptor.cpp
293- libraries/BLE/src/BLERemoteService.cpp
294- libraries/BLE/src/BLEScan.cpp
295- libraries/BLE/src/BLESecurity.cpp
296- libraries/BLE/src/BLEServer.cpp
297- libraries/BLE/src/BLEService.cpp
298- libraries/BLE/src/BLEServiceMap.cpp
299- libraries/BLE/src/BLEUtils.cpp
300- libraries/BLE/src/BLEUUID.cpp
301- libraries/BLE/src/BLEValue.cpp
302- libraries/BLE/src/FreeRTOS.cpp
303- libraries/BLE/src/GeneralUtils.cpp
304- )
305-
306206set (ARDUINO_LIBRARIES_SRCS)
307207set (ARDUINO_LIBRARIES_REQUIRES)
308208set (ARDUINO_LIBRARIES_INCLUDEDIRS)
@@ -324,15 +224,7 @@ set(includedirs variants/${CONFIG_ARDUINO_VARIANT}/ cores/esp32/ ${ARDUINO_LIBRA
324224set (srcs ${CORE_SRCS} ${ARDUINO_LIBRARIES_SRCS} )
325225set (priv_includes cores/esp32/libb64)
326226set (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)
327- set (priv_requires fatfs nvs_flash app_update spiffs bootloader_support bt esp_hid usb esp_psram ${ARDUINO_LIBRARIES_REQUIRES} )
328-
329- if (NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_OpenThread)
330- #if(CONFIG_SOC_IEEE802154_SUPPORTED) # Does not work!
331- #if(CONFIG_OPENTHREAD_ENABLED) # Does not work!
332- if (IDF_TARGET STREQUAL "esp32c6" OR IDF_TARGET STREQUAL "esp32h2" ) # Sadly only this works
333- list (APPEND requires openthread)
334- endif ()
335- endif ()
227+ set (priv_requires fatfs nvs_flash app_update bootloader_support bt esp_hid usb esp_psram ${ARDUINO_LIBRARIES_REQUIRES} )
336228
337229if (IDF_TARGET STREQUAL "esp32p4" )
338230 list (APPEND requires esp_driver_touch_sens)
@@ -383,15 +275,6 @@ endif()
383275if (NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_ArduinoOTA)
384276 maybe_add_component(esp_https_ota)
385277endif ()
386- if (NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_ESP_SR)
387- maybe_add_component(espressif__esp_sr)
388- endif ()
389- if (NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_Matter)
390- maybe_add_component(espressif__esp_matter)
391- endif ()
392278if (NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_LittleFS)
393279 maybe_add_component(joltwallet__littlefs)
394280endif ()
395- if (NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_WiFiProv)
396- maybe_add_component(espressif__network_provisioning)
397- endif ()
0 commit comments