Make PRK.Client native dependencies build automatically through MSBuild
Make ordinary dotnet run/build produce and copy Lua, font and audio native packages on Linux, macOS and Windows without separate native build commands. Reuse the existing pinned CMake recipes; preserve package overrides and publish licensing checks. Native builds must be incremental, generated files must be included on the first build, and unsupported cross-target builds must fail clearly rather than package host binaries. Validate clean-package and repeat builds locally and document prerequisites and platform validation limits. Linux isolated builds verified first-build libraries/notices/source copying, unchanged-build skipping, Lua notice recovery, source-triggered recompilation, explicit override ownership and cross-target rejection. Native recipes now preserve macOS deployment settings; ClientScripting retains the SDK target RID. Docker launchers use the shared native-capable SDK image and isolated caches, while release CI reuses prepared native packages. Validation passed on Linux: client build, dotnet run audio diagnostic (4 codecs, 0 failures), Lua and font runtime checks, managed publish artifacts, 4214 client tests (44 skipped), 719 graphics tests, fresh/repeat Docker client builds, Docker Lua capability tests (3 passed), and Docker playground build. Each missing native library recovers independently and unchanged builds skip CMake. SDK reference metadata confirms target RID retention. Review findings were corrected, including moving CI audio cache/preparation before all managed builds. Workflow YAML, shell syntax and diff whitespace checks pass. Native Windows/macOS/arm64 execution and remote CI runs remain unverified; platform prerequisites and limitations are documented in PRK.Client/NativeBuild/README.md. Pull request: #2874 — https://git.project-rk.com/prk/engines/pulls/2874
Checklist
2 of 2 complete- Integrate incremental native builds and first-build/transitive package copying into MSBuild; preserve overrides and publish requirements.
- Validate missing-package recovery, unchanged builds, native source rebuilds, and client build/run on the available host; document prerequisites and untested platforms.
- Area
- Project Rubi-Ka
- Project
- engines
- Kind
- Chore
- Task ID
tsk_ju9rrmhee6- Updated