Merge pull request #4669 from willmmiles/4597-usermods-not-building

Correct issues with usermods not being linked.
- Explicitly set libArchive: false in usermod library.json files
- Fix up symlink path generation on Windows
- Add validation script to report usermod linkage in resulting binary
This commit is contained in:
Will Miles
2025-05-26 22:41:45 -04:00
committed by GitHub
55 changed files with 236 additions and 97 deletions

View File

@@ -1,6 +1,7 @@
{
"name": "rotary_encoder_ui_ALT",
"build": {
"libArchive": false,
"extraScript": "setup_deps.py"
}
}

View File

@@ -1,8 +1,8 @@
from platformio.package.meta import PackageSpec
Import('env')
usermods = env.GetProjectOption("custom_usermods","").split()
libs = [PackageSpec(lib).name for lib in env.GetProjectOption("lib_deps",[])]
# Check for partner usermod
# Allow both "usermod_v2" and unqualified syntax
if any(mod in ("four_line_display_ALT", "usermod_v2_four_line_display_ALT") for mod in usermods):
if any(mod in ("four_line_display_ALT", "usermod_v2_four_line_display_ALT") for mod in libs):
env.Append(CPPDEFINES=[("USERMOD_FOUR_LINE_DISPLAY")])