Implement support for module symbols (#475)

* **New Features**
  - Adds module symbol support and per-module symbol tables, including LVGL symbol exports moved into a dedicated table.
* **API**
  - Adds symbol-resolution APIs and an accessor to enable dynamic lookup between modules.
* **Bug Fixes / Chores**
  - Explicitly initializes module symbol pointers across device and platform modules to avoid uninitialized state.
* **Tests**
  - Updates tests to account for symbol pointer initialization.
This commit is contained in:
Ken Van Hoeylandt
2026-02-02 07:50:43 +01:00
committed by GitHub
parent 9f721e6655
commit 1f9e7f82fd
55 changed files with 563 additions and 357 deletions
+3
View File
@@ -35,6 +35,7 @@ TEST_CASE("ModuleParent destruction with children") {
.name = "test",
.start = test_start,
.stop = test_stop,
.symbols = nullptr,
.internal = {.started = false, .parent = nullptr}
};
@@ -62,6 +63,7 @@ TEST_CASE("Module parent management") {
.name = "test",
.start = test_start,
.stop = test_stop,
.symbols = nullptr,
.internal = {.started = false, .parent = nullptr}
};
@@ -100,6 +102,7 @@ TEST_CASE("Module lifecycle") {
.name = "test",
.start = test_start,
.stop = test_stop,
.symbols = nullptr,
.internal = {.started = false, .parent = nullptr}
};