mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-04-19 21:11:57 -04:00
* Add CMake build Allows to build and link FreeRTOS using CMake build system. From top-level project it looks like this: set(FREERTOS_PORT_GCC_ARM_CM4F ON) set(FREERTOS_CONFIG_FILE_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} CACHE STRING "") add_subdirectory(third_party/FreeRTOS-Kernel) Where FREERTOS_PORT_GCC_ARM_CM4F is FreeRTOS port name. freertos is target name, which can be used in target_link_libraries() * Add feature to set custom heap source file Example how to set it from top-level project: set(FREERTOS_HEAP ${CMAKE_CURRENT_LIST_DIR}/path_to/my_heap.c CACHE STRING "") * Set cmake_minimum_required to 3.15 * Fail build when FREERTOS_CONFIG_FILE_DIRECTORY not set * Rename library to freertos_kernel * Rework FREERTOS_PORT option to act as combobox * Use freertos_kernel_port cmake target * Split port sources multiline Co-authored-by: Aniruddha Kanhere <60444055+AniruddhaKanhere@users.noreply.github.com> Co-authored-by: Paul Bartell <pbartell@amazon.com> |
||
---|---|---|
.. | ||
ARMClang | ||
ARMv8M | ||
BCC/16BitDOS | ||
CCS | ||
CodeWarrior | ||
Common | ||
GCC | ||
IAR | ||
Keil | ||
MemMang | ||
MikroC/ARM_CM4F | ||
MPLAB | ||
MSVC-MingW | ||
oWatcom/16BitDOS | ||
Paradigm/Tern_EE | ||
Renesas | ||
Rowley | ||
RVDS | ||
SDCC/Cygnal | ||
Softune | ||
Tasking/ARM_CM4F | ||
ThirdParty | ||
WizC/PIC18 | ||
CMakeLists.txt | ||
readme.txt |
Each real time kernel port consists of three files that contain the core kernel components and are common to every port, and one or more files that are specific to a particular microcontroller and/or compiler. + The FreeRTOS/Source/Portable/MemMang directory contains the five sample memory allocators as described on the https://www.FreeRTOS.org WEB site. + The other directories each contain files specific to a particular microcontroller or compiler, where the directory name denotes the compiler specific files the directory contains. For example, if you are interested in the [compiler] port for the [architecture] microcontroller, then the port specific files are contained in FreeRTOS/Source/Portable/[compiler]/[architecture] directory. If this is the only port you are interested in then all the other directories can be ignored.