* improvements for cross-platform compiling * moved tactility-core to libs/ * splitup improvements * remove git/gitmodules from freertos * better platformbetter platform checks * added build scripts * delete mbedtls * re-add mbedtls * fixes and improvements * added pc build * simplify build scripts * revert build scrpit * updated builds * fix for pc * fix for pc * fix for build
38 lines
1002 B
CMake
38 lines
1002 B
CMake
cmake_minimum_required(VERSION 3.5)
|
|
project(freertos-kernel C)
|
|
|
|
set(FREERTOS_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
|
|
set(KERNEL_DIR ${FREERTOS_DIR}/portable/ThirdParty/GCC/Posix)
|
|
|
|
include_directories(
|
|
.
|
|
${FREERTOS_DIR}/include
|
|
${KERNEL_DIR}
|
|
${KERNEL_DIR}/utils
|
|
)
|
|
|
|
# FreeRTOS sources
|
|
FILE(GLOB FREERTOS_SOURCES ${FREERTOS_DIR}/*.c)
|
|
|
|
# Memory manager (use malloc() / free())
|
|
list(APPEND FREERTOS_SOURCES "${FREERTOS_DIR}/portable/MemMang/heap_3.c")
|
|
|
|
# Port sources
|
|
FILE(GLOB KERNEL_SOURCES ${KERNEL_DIR}/*.c)
|
|
list(APPEND FREERTOS_SOURCES ${KERNEL_SOURCES})
|
|
FILE(GLOB KERNEL_SOURCES ${KERNEL_DIR}/utils/*.c)
|
|
list(APPEND FREERTOS_SOURCES ${KERNEL_SOURCES})
|
|
|
|
# Link FreeRTOS as a static library
|
|
add_library(freertos-kernel STATIC ${FREERTOS_SOURCES})
|
|
|
|
target_sources(freertos-kernel
|
|
PRIVATE ${FREERTOS_SOURCES}
|
|
PUBLIC ${FREERTOS_HEADERS}
|
|
)
|
|
target_include_directories(freertos-kernel
|
|
PRIVATE ${FREERTOS_DIR}/include
|
|
INTERFACE ${FREERTOS_DIR}/include
|
|
INTERFACE ${KERNEL_DIR}
|
|
)
|