From eaa4062b7866b978a9285edf033c311f1d22b3e0 Mon Sep 17 00:00:00 2001 From: Matthew Stanley <1379tech@gmail.com> Date: Wed, 29 Jul 2026 00:42:44 -0700 Subject: [PATCH] fix: pin launcher boot timing implementation --- recomp-ui | 2 +- recompiler/tests/test_cli_project_packaging.py | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/recomp-ui b/recomp-ui index 3db3d604..c9d523bb 160000 --- a/recomp-ui +++ b/recomp-ui @@ -1 +1 @@ -Subproject commit 3db3d6042b2db8034775506bd8c1080fad2e5317 +Subproject commit c9d523bb14fdaaed7e03a47901175b658f2e927c diff --git a/recompiler/tests/test_cli_project_packaging.py b/recompiler/tests/test_cli_project_packaging.py index 5b124889..bbc16857 100644 --- a/recompiler/tests/test_cli_project_packaging.py +++ b/recompiler/tests/test_cli_project_packaging.py @@ -19,6 +19,12 @@ def main() -> int: package = (ROOT / "tools/build_cli.py").read_text(encoding="utf-8") launcher = (ROOT / "recomp-ui/src/recomp_launcher.h").read_text( encoding="utf-8") + launcher_cmake = (ROOT / "recomp-ui/recomp_ui.cmake").read_text( + encoding="utf-8") + boot_timing_header = ( + ROOT / "recomp-ui/src/common/launcher_boot_timing.h") + boot_timing_source = ( + ROOT / "recomp-ui/src/common/launcher_boot_timing.c") require(cli, 'bios_config = \\"psxrecomp/bios/{}\\"', "generated game.toml does not name its BIOS profile") @@ -59,6 +65,14 @@ def main() -> int: "pinned recomp-ui predates the runtime Mods provider API") require(launcher, "const RecompLauncherCModProvider* mods;", "pinned recomp-ui GameInfo lacks the Mods provider field") + if not boot_timing_header.is_file(): + raise AssertionError( + "pinned recomp-ui lacks launcher_boot_timing.h required by main.cpp") + if not boot_timing_source.is_file(): + raise AssertionError( + "pinned recomp-ui lacks the launcher boot timing implementation") + require(launcher_cmake, "common/launcher_boot_timing.c", + "pinned recomp-ui does not compile launcher boot timing") print("PASS: CLI profiles, stage order, BIOS overrides, and launcher API agree") return 0