Skip to content

fix(lvgl): re-pin submodule to upstream-fetchable commit + edk2 shims#39

Merged
MarsDoge merged 1 commit into
mainfrom
experimental/lvgl-spike
Jun 5, 2026
Merged

fix(lvgl): re-pin submodule to upstream-fetchable commit + edk2 shims#39
MarsDoge merged 1 commit into
mainfrom
experimental/lvgl-spike

Conversation

@MarsDoge

@MarsDoge MarsDoge commented Jun 5, 2026

Copy link
Copy Markdown
Owner

Problem

PR #38 pinned External/lvgl at 4cdddfe — a local PR-branch SHA that does not exist on upstream lvgl/lvgl. .gitmodules points at upstream, so a fresh clone of main + git submodule update fails to fetch the submodule. (The same change was merged upstream, but as a different SHA.)

Fix

Re-pin to the upstream merged commit 0b1ea312d (v9.5.0-273), which is upstream master carrying the LoongArch64/RISC-V64 UEFI build support (PR #10221). Genuinely pristine and fetchable.

That commit carries unrelated v9.5.0→273 churn, handled edk2-side without patching the submodule:

  • Drop dead wayland/* sources from LvglCoreLib.inf (upstream refactored that dir away).
  • Add a documented empty efi.h shim (Experimental/LvglSpikePkg/Library/LvglLib/efi.h) for the header-reorg PR #10041, which made <lvgl/lvgl.h> unconditionally #include <efi.h> even when the EDK2 framework is selected via LV_USE_UEFI_INCLUDE. The shim pulls in no gnu-efi types.
  • Switch spike sources to the canonical <lvgl/lvgl.h> umbrella instead of the now-deprecated lvgl/src/drivers/uefi/* public headers (they became #warning stubs failing under -Werror=cpp).

Both shims are removable once upstream gates the gnu-efi include behind the framework selection.

Validation

  • OVMF X64 MODERN_SETUP_DISPLAY_ENGINE=lvgl build — clean
  • LoongArch LvglSpikeProbe.efi spike build — clean
  • smoke_validate.py — PASS

Notes

  • External/edk2 baseline intentionally untouched.
  • RISC-V spike DSC (LvglSpikeRiscV.dsc) is pre-existing incomplete (missing LvglCoreLib/HII libs) — unrelated to this fix, not addressed here.

🤖 Generated with Claude Code

PR #38 pinned External/lvgl at 4cdddfe, a local PR-branch SHA that does
not exist on upstream lvgl/lvgl, so fresh clones can't fetch the submodule.
Re-pin to the upstream merged commit 0b1ea312d (v9.5.0-273, PR #10221).

That commit carries unrelated v9.5.0->273 churn, handled edk2-side without
patching the submodule: drop dead wayland sources from LvglCoreLib.inf,
add a documented empty efi.h shim for PR #10041's unconditional gnu-efi
include, and switch spike sources to the <lvgl/lvgl.h> umbrella instead of
deprecated lvgl/src/drivers/uefi/* headers.

Validated: OVMF X64 lvgl-mode build, LoongArch lvgl spike build, smoke.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@MarsDoge MarsDoge merged commit e86e8c2 into main Jun 5, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant