examples/elf: extend nxpkg validation coverage#3531
Draft
aviralgarg05 wants to merge 1 commit into
Draft
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This patch is another smaller upstream slice being extracted from the ongoing GSoC 2026 Dynamic ELF loading and
nxpkgwork for NuttX.An earlier draft PR (#3474) carries the initial
nxpkgpackage lifecycle helper. This PR is theexamples/elfvalidation-fixture follow-up from the same broader effort.Series order for this PR:
The change extends the
examples/elfROMFS path sonxpkgvalidation can use generated package fixtures instead of hand-managed metadata.Concretely, it:
index.json,bad-index.json,pkgtest.nsh, andpkgfail.nshfrom the builthelloELFarch/compatmetadata and SHA-256 digest for the valid fixturenxpkgtarget selection and failure handling can be exercised from the same example treeImpact
This makes the
examples/elfside of the Dynamic ELF /nxpkgseries easier to validate and reproduce.It keeps the fixture metadata tied to the actual built
helloartifact, instead of relying on manually maintained hashes or ad hoc shell setup. That should make follow-up review and later test reruns more predictable.There is no intended loader or board-behavior change in this patch. It is limited to fixture generation inside
examples/elf.Testing
Host:
arm64)xtensa-esp-elf-gcc (crosstool-NG esp-14.2.0_20241119) 14.2.0esptool.py v4.11.0Focused stacked verification for this PR:
appsworktree at the current#3474head, with this two-file patch appliedapache/nuttxworktree at local294d6d2763(boards/xtensa/esp32s3/xiao:sotest: enable nxpkg fixtures), which carries the matchingesp32s3-xiao:elfconfiguration used for the seriesxtensaesp32s3-xiao:elfBuild steps:
Generated fixture artifacts:
Build result:
Branch sanity build:
apache/nuttxworktree was also paired directly with this PR branch to confirm the slice still builds cleanly outside the stacked#3474setupSanity-build result: