Tactility/tactility-core/CMakeLists.txt
Ken Van Hoeylandt 27730260e0
Project restructuring: add tactility-headless (#55)
- Created `tactility-headless` to support ESP32 firmwares that don't require graphics
- `tactility` subproject now contains both PC and ESP32 code (to avoid having to split up `tactility` and `tactility-headless` into separate projects, which would result in a very complex dependency tree)
- `tactility` subproject is now defined as component for ESP32 and as regular module for PC
- Improvements for dispatcher
- Added `project-structure.puml` to docs
- `Gui` service now depends on `Loader` service instead of the reverse
- Added `statusbar_updater` service for updating Wi-Fi and SD card icons
2024-08-31 17:56:28 +02:00

37 lines
808 B
CMake

cmake_minimum_required(VERSION 3.16)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
file(GLOB SOURCES "src/*.c")
file(GLOB HEADERS "src/*.h")
add_library(tactility-core OBJECT)
target_sources(tactility-core
PRIVATE ${SOURCES}
PUBLIC ${HEADERS}
)
target_include_directories(tactility-core SYSTEM
PRIVATE src/
INTERFACE src/
)
if (DEFINED ENV{ESP_IDF_VERSION})
add_definitions(-DESP_PLATFORM)
target_link_libraries(tactility-core
PUBLIC mlib
PUBLIC idf::mbedtls
PRIVATE idf::nvs_flash # ESP-IDF // for secure.c
)
else()
add_definitions(-D_Nullable=)
add_definitions(-D_Nonnull=)
target_link_libraries(tactility-core
PUBLIC mlib
PUBLIC mbedtls
PUBLIC freertos_kernel
)
endif()