Commit Graph
5 Commits
Author SHA1 Message Date
Claude CodeandClaude Fable 5 a6859cb8c8 Install llvm in CI for the GoldHEN plugin job
The SDK's Makefile archives libGoldHEN_Hook.a with llvm-ar, which the runner's
clang package does not pull in, so the ci_ghplugin job failed with
"llvm-ar: not found".

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-28 18:30:31 +02:00
Claude CodeandClaude Fable 5 d863dd462d Add a GHPLUGIN target type for building GoldHEN plugins
A GoldHEN plugin is not a plain PRX. The loader enters the module at _init,
which the GoldHEN SDK's crtprx.o forwards to module_start/module_stop. Built
the stock way it links without complaint and then silently never loads on
console, so add_orbis_target(TYPE GHPLUGIN) applies all three differences:
crtprx.o instead of crtlib.o, -e _init, and SceLibcInternal/SceSysmodule
instead of c/c++. It also checks for the SDK up front and fails with install
instructions rather than producing an unloadable artifact.

The scaffolded starter plugin shows a PS4 notification from module_start. It
is emitted as C++ with extern "C" entry points -- generated projects are
project(<name> CXX), and without that the mangled names leave crtprx.o's _init
unresolved.

Reachable as --type ghplugin (aliases: goldhen, plugin) and as a fourth entry
in the GUI wizard. CI installs the SDK and builds one, since a plugin that
links but cannot load is exactly the failure unit tests cannot catch.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-28 17:57:14 +02:00
Claude Code 88e5214781 Fix flaky CI: authenticate GitHub API calls to avoid shared-runner rate limiting 2026-07-22 10:40:27 +02:00
Claude Code baea90ea77 Add xUnit tests for OrbisForge.Core, wire into CI 2026-07-22 10:37:42 +02:00
Claude Code ff8db35934 Add GitHub Actions CI: generate+build every target type, plus a Windows GUI build check 2026-07-22 10:12:09 +02:00