suikan4github / murasaki

STM32 HAL class library
MIT License
17 stars 3 forks source link

Support new FreeRTOS installation by CubeIDE. #147

Closed suikan4github closed 1 year ago

suikan4github commented 1 year ago

Is your feature request related to a problem? Please describe. Yes.

CubeIDE/CubeMX pushed FreeRTOS out from its default RTOS selection. For STM32H5 series, FreeRTOS is packaged as x-CUBE-FREERTOS. With this modification, the FreeRTOS directory structure at main.c is changed from past.

The murasaki installer struggles to install. So, the installer must change.

Describe the solution you'd like Installer is trying to modify the main.c without any condition.

To work with above change, the installer must check the contents of main.c or the existence of the FREERTOS-related file at first.

Describe alternatives you've considered

Additional context

suikan4github commented 1 year ago

In addition to the above difference, the x-CUBE-FREERTOS generated the code to the different dependenciescy of the os include file.

None of the pre-defined macro or header files help to discriminate the above differences.

One of the reasonable fixes is to use the murasaki_include_stub.h. file. In both cases above, the main.c includes the cmsis_os.h or cmsis_os2.h. So we can detect them by the installer and insert the correct include directive to the murasaki_include_stub.h.

suikan4github commented 1 year ago

Merged to develop. Ready to release.