mirror of
				https://github.com/FreeRTOS/FreeRTOS-Kernel.git
				synced 2025-11-04 02:59:01 +01:00 
			
		
		
		
	Remove the idle_task_static_memory.c and use the new default implementations to allows for FreeRTOS-Kernel-Static to be used with configNUMBER_OF_CORES > 1
		
			
				
	
	
		
			73 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
			
		
		
	
	
			73 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
# Copyright (c) 2020 Raspberry Pi (Trading) Ltd.
 | 
						|
#
 | 
						|
# SPDX-License-Identifier: BSD-3-Clause
 | 
						|
 | 
						|
# Called after the Raspberry Pi Pico SDK has been initialized to add our libraries
 | 
						|
 | 
						|
add_library(FreeRTOS-Kernel-Core INTERFACE)
 | 
						|
target_sources(FreeRTOS-Kernel-Core INTERFACE
 | 
						|
        ${FREERTOS_KERNEL_PATH}/croutine.c
 | 
						|
        ${FREERTOS_KERNEL_PATH}/event_groups.c
 | 
						|
        ${FREERTOS_KERNEL_PATH}/list.c
 | 
						|
        ${FREERTOS_KERNEL_PATH}/queue.c
 | 
						|
        ${FREERTOS_KERNEL_PATH}/stream_buffer.c
 | 
						|
        ${FREERTOS_KERNEL_PATH}/tasks.c
 | 
						|
        ${FREERTOS_KERNEL_PATH}/timers.c
 | 
						|
        )
 | 
						|
target_include_directories(FreeRTOS-Kernel-Core INTERFACE ${FREERTOS_KERNEL_PATH}/include)
 | 
						|
 | 
						|
if (PICO_SDK_VERSION_STRING VERSION_GREATER_EQUAL "1.3.2")
 | 
						|
    target_compile_definitions(FreeRTOS-Kernel-Core INTERFACE
 | 
						|
            PICO_CONFIG_RTOS_ADAPTER_HEADER=${CMAKE_CURRENT_LIST_DIR}/include/freertos_sdk_config.h)
 | 
						|
endif()
 | 
						|
 | 
						|
add_library(FreeRTOS-Kernel INTERFACE)
 | 
						|
target_sources(FreeRTOS-Kernel INTERFACE
 | 
						|
        ${CMAKE_CURRENT_LIST_DIR}/port.c
 | 
						|
)
 | 
						|
 | 
						|
target_include_directories(FreeRTOS-Kernel INTERFACE
 | 
						|
        ${CMAKE_CURRENT_LIST_DIR}/include
 | 
						|
        ${FREERTOS_CONFIG_FILE_DIRECTORY})
 | 
						|
 | 
						|
target_link_libraries(FreeRTOS-Kernel INTERFACE
 | 
						|
        FreeRTOS-Kernel-Core
 | 
						|
        pico_base_headers
 | 
						|
        hardware_clocks
 | 
						|
        hardware_exception
 | 
						|
        pico_multicore
 | 
						|
)
 | 
						|
 | 
						|
target_compile_definitions(FreeRTOS-Kernel INTERFACE
 | 
						|
        LIB_FREERTOS_KERNEL=1
 | 
						|
        FREE_RTOS_KERNEL_SMP=1
 | 
						|
)
 | 
						|
 | 
						|
add_library(FreeRTOS-Kernel-Static INTERFACE)
 | 
						|
target_compile_definitions(FreeRTOS-Kernel-Static INTERFACE
 | 
						|
        configSUPPORT_STATIC_ALLOCATION=1
 | 
						|
        configKERNEL_PROVIDED_STATIC_MEMORY=1
 | 
						|
        )
 | 
						|
 | 
						|
target_link_libraries(FreeRTOS-Kernel-Static INTERFACE FreeRTOS-Kernel)
 | 
						|
 | 
						|
add_library(FreeRTOS-Kernel-Heap1 INTERFACE)
 | 
						|
target_sources(FreeRTOS-Kernel-Heap1 INTERFACE ${FREERTOS_KERNEL_PATH}/portable/MemMang/heap_1.c)
 | 
						|
target_link_libraries(FreeRTOS-Kernel-Heap1 INTERFACE FreeRTOS-Kernel)
 | 
						|
 | 
						|
add_library(FreeRTOS-Kernel-Heap2 INTERFACE)
 | 
						|
target_sources(FreeRTOS-Kernel-Heap2 INTERFACE ${FREERTOS_KERNEL_PATH}/portable/MemMang/heap_2.c)
 | 
						|
target_link_libraries(FreeRTOS-Kernel-Heap2 INTERFACE FreeRTOS-Kernel)
 | 
						|
 | 
						|
add_library(FreeRTOS-Kernel-Heap3 INTERFACE)
 | 
						|
target_sources(FreeRTOS-Kernel-Heap3 INTERFACE ${FREERTOS_KERNEL_PATH}/portable/MemMang/heap_3.c)
 | 
						|
target_link_libraries(FreeRTOS-Kernel-Heap3 INTERFACE FreeRTOS-Kernel)
 | 
						|
 | 
						|
add_library(FreeRTOS-Kernel-Heap4 INTERFACE)
 | 
						|
target_sources(FreeRTOS-Kernel-Heap4 INTERFACE ${FREERTOS_KERNEL_PATH}/portable/MemMang/heap_4.c)
 | 
						|
target_link_libraries(FreeRTOS-Kernel-Heap4 INTERFACE FreeRTOS-Kernel)
 | 
						|
 | 
						|
add_library(FreeRTOS-Kernel-Heap5 INTERFACE)
 | 
						|
target_sources(FreeRTOS-Kernel-Heap5 INTERFACE ${FREERTOS_KERNEL_PATH}/portable/MemMang/heap_5.c)
 | 
						|
target_link_libraries(FreeRTOS-Kernel-Heap5 INTERFACE FreeRTOS-Kernel)
 |