2019-08-08 01:33:45 -04:00
|
|
|
if(BOOTLOADER_BUILD)
|
|
|
|
# bootloader only needs FreeRTOS for config, not for anything else
|
|
|
|
idf_component_register()
|
|
|
|
return()
|
|
|
|
endif()
|
|
|
|
|
|
|
|
set(srcs
|
2019-06-21 02:29:32 -04:00
|
|
|
"croutine.c"
|
|
|
|
"event_groups.c"
|
|
|
|
"FreeRTOS-openocd.c"
|
|
|
|
"list.c"
|
|
|
|
"port.c"
|
|
|
|
"portasm.S"
|
|
|
|
"queue.c"
|
|
|
|
"tasks.c"
|
|
|
|
"timers.c"
|
|
|
|
"xtensa_context.S"
|
|
|
|
"xtensa_init.c"
|
|
|
|
"xtensa_intr.c"
|
|
|
|
"xtensa_intr_asm.S"
|
|
|
|
"xtensa_overlay_os_hook.c"
|
|
|
|
"xtensa_vector_defaults.S"
|
|
|
|
"xtensa_vectors.S")
|
|
|
|
|
2018-09-21 02:58:34 -04:00
|
|
|
# app_trace is required by FreeRTOS headers only when CONFIG_SYSVIEW_ENABLE=y,
|
|
|
|
# but requirements can't depend on config options, so always require it.
|
2019-04-28 03:38:23 -04:00
|
|
|
idf_component_register(SRCS "${srcs}"
|
|
|
|
INCLUDE_DIRS include
|
|
|
|
PRIV_INCLUDE_DIRS include/freertos .
|
|
|
|
LDFRAGMENTS linker.lf
|
|
|
|
REQUIRES app_trace
|
|
|
|
PRIV_REQUIRES soc)
|
2019-12-02 01:41:33 -05:00
|
|
|
|
|
|
|
idf_component_get_property(COMPONENT_DIR freertos COMPONENT_DIR)
|
|
|
|
idf_component_set_property(freertos ORIG_INCLUDE_PATH "${COMPONENT_DIR}/include/freertos/")
|
2018-01-11 21:49:13 -05:00
|
|
|
|
2019-10-16 08:23:05 -04:00
|
|
|
if(CONFIG_FREERTOS_DEBUG_OCDAWARE)
|
|
|
|
target_link_libraries(${COMPONENT_LIB} INTERFACE "-Wl,--undefined=uxTopUsedPriority")
|
|
|
|
endif()
|
2018-08-16 01:01:43 -04:00
|
|
|
|
|
|
|
set_source_files_properties(
|
|
|
|
tasks.c
|
|
|
|
event_groups.c
|
|
|
|
timers.c
|
|
|
|
queue.c
|
|
|
|
PROPERTIES COMPILE_DEFINITIONS
|
|
|
|
_ESP_FREERTOS_INTERNAL
|
|
|
|
)
|