Kernel and buildscript improvements (#477)
* **New Features** * Centralized module management with global symbol resolution * Level-aware logging with colored prefixes and millisecond timestamps * **Breaking Changes** * ModuleParent hierarchy and getModuleParent() removed * Logging API and adapter model replaced; LogLevel-driven log_generic signature changed * **Improvements** * Unified, simplified module registration across build targets * Tests updated to reflect new module lifecycle and global symbol resolution
This commit is contained in:
committed by
GitHub
parent
1a61eac8e0
commit
a935410f82
@@ -1,30 +1,22 @@
|
||||
cmake_minimum_required(VERSION 3.20)
|
||||
|
||||
file(GLOB_RECURSE SOURCE_FILES Source/*.c*)
|
||||
file(GLOB_RECURSE SOURCE_FILES "Source/*.c*")
|
||||
|
||||
list(APPEND REQUIRES_LIST
|
||||
TactilityKernel
|
||||
lvgl
|
||||
)
|
||||
|
||||
if (DEFINED ENV{ESP_IDF_VERSION})
|
||||
|
||||
idf_component_register(
|
||||
SRCS ${SOURCE_FILES}
|
||||
INCLUDE_DIRS "Include/"
|
||||
REQUIRES TactilityKernel lvgl esp_lvgl_port
|
||||
)
|
||||
|
||||
list(APPEND REQUIRES_LIST esp_lvgl_port)
|
||||
else ()
|
||||
|
||||
add_library(lvgl-module OBJECT)
|
||||
|
||||
target_sources(lvgl-module PRIVATE ${SOURCE_FILES})
|
||||
|
||||
target_include_directories(lvgl-module
|
||||
PUBLIC Include/
|
||||
)
|
||||
|
||||
target_link_libraries(lvgl-module PUBLIC
|
||||
TactilityKernel
|
||||
freertos_kernel
|
||||
lvgl
|
||||
)
|
||||
|
||||
list(APPEND REQUIRES_LIST freertos_kernel)
|
||||
endif ()
|
||||
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/../../Buildscripts/module.cmake")
|
||||
|
||||
tactility_add_module(lvgl-module
|
||||
SRCS ${SOURCE_FILES}
|
||||
INCLUDE_DIRS Include/
|
||||
REQUIRES ${REQUIRES_LIST}
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user