Skip to content

Conversation

@gojimmypi
Copy link
Contributor

Description

This PR modified some paths for including FreeRTOS headers in the PlatformIO environment.

I'm working on adding wolfSSL support to PlatformIO as noted in wolfSSL/Arduino-wolfSSL#7 and platformio/platformio-registry#85. See the wolfssl-staging/wolfSSL preview.

I'm making progress. It appears the Arduino-wolfSSL is trivial to publish to PlatformIO, but adding ESP-IDF support there is considerably more challenging.

Similar to the restructuring of directories in Arduino-wolfSSL as noted in wolfSSL/Arduino-wolfSSL#1 and arduino/arduino-cli#631, the PlatformIO also needs to have directories restructured for the wolfSSL include files to work properly. Fortunately in the case of PlatformIO - a new repository is not needed. Files can be assembled into a temporary directory and published from there, similar to the Espressif Managed Components.

One of the oddities encountered during the file restructuring process is a problem finding the FreeRTOS files, with compile-time errors similar to this:

Compiling .pio\build\esp32dev\bootloader_support\src\bootloader_random_esp32.o
In file included from src/main.c:2:
.pio/libdeps/esp32dev/wolfSSL/src/wolfssl/wolfcrypt/settings.h:998:14: fatal error: FreeRTOS.h: No such file or directory

******************************************************************
* Looking for FreeRTOS.h dependency? Check our library registry!
*
* CLI  > platformio lib search "header:FreeRTOS.h"
* Web  > https://registry.platformio.org/search?q=header:FreeRTOS.h
*
******************************************************************

Compiling .pio\build\esp32dev\bootloader_support\bootloader_flash\src\bootloader_flash.o
  998 |     #include "FreeRTOS.h"
      |              ^~~~~~~~~~~~
compilation terminated.
Compiling .pio\build\esp32dev\bootloader_support\bootloader_flash\src\flash_qio_mode.o
*** [.pio\build\esp32dev\src\main.o] Error 1
===================================================== [FAILED] Took 4.77 seconds =====================================================

 *  The terminal process "C:\Users\gojimmypi\.platformio\penv\Scripts\platformio.exe 'run'" terminated with exit code: 1. 
 *  Terminal will be reused by tasks, press any key to close it. 

This PR slightly modifies the path for FreeRTOS for inclusion when using PlatformIO to fix the compile errors.

Fixes zd# n/a

Testing

How did you test?

Minimal testing. Only simple compile checks from Linux prompt, Espressif projects, and of course PlatformIO library.

Checklist

  • added tests
  • updated/added doxygen
  • updated appropriate READMEs
  • Updated manual and documentation

@kaleb-himes
Copy link
Contributor

retest this please

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants