Ken Van Hoeylandt a94baf0d00
Support for PC platform (#12)
* 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
2024-01-19 17:39:30 +01:00

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}
)