mirror of
https://github.com/tangerineturtle1/NX2navi.git
synced 2026-11-15 19:19:58 -04:00
The runtime takes a missing optional export (nx2sl_reflex2, nx2sl_frames_max) for an older DLL and leaves the feature out with one log line, so a release that ships a DLL built from older sources than its runtime loses Reflex's frame limit without an error; the release script took the DLL of 0.8.0 from a fixed path. After the build, build_dlssg.py now reads every PFN_nx2sl_<name> in runtime/dlssg/nx2_sl.h and the DLL's export directory (a small PE reader of its own, PE32 and PE32+) and exits naming each export that is missing; --check <dll> makes the same check without building. tests/dlssg_exports_check.py builds a DLL with two of three declared exports with MSYS2's clang and checks that the third is named, and that nx2_sl.h's own declarations are read in full; docs/building.md "Checks" and docs/launcher.md name both. The DLL built from this branch with the pinned Streamline 2.14.16 SDK passes (15 exports); the one built before nx2sl_reflex2 fails, naming it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>