build(hook): exclude openfut-hook from workspace so its release profile applies
openfut-hook (Windows version.dll injected into the FIFA client) declared a [profile.release] with panic=abort/strip/opt-level=s that Cargo silently ignored because it was a non-root workspace member (per-package `panic` overrides are forbidden). Move it out of `members` into `exclude`; the submodule now carries a matching empty [workspace] table so it builds as its own root. Fixes cross-FFI panic-unwind UB in the injected DLL, shrinks it 1200126 -> 861696 B, and lands the artifact in openfut-hook/target/ (matching launcher config.rs hook_dll_path). Bumps openfut-launcher submoduleca7ce26->0d3f33c.
This commit is contained in:
+8
-1
@@ -15,7 +15,14 @@ members = [
|
||||
"openfut-import-fifa17",
|
||||
"openfut-bridge",
|
||||
"openfut-launcher",
|
||||
"openfut-launcher/openfut-hook",
|
||||
"fifa-blaze/crates/blaze-proto",
|
||||
"fifa-blaze/crates/server",
|
||||
]
|
||||
# openfut-hook is a Windows-only version.dll proxy injected into the FIFA client.
|
||||
# It MUST build with its own [profile.release] (panic="abort" — unwinding across
|
||||
# the DllMain/FFI boundary into the game process is UB — plus strip + opt-level="s").
|
||||
# Cargo ignores a non-root member's profile and forbids per-package `panic` overrides,
|
||||
# so the hook is deliberately EXCLUDED from this workspace to build as its own root
|
||||
# (this also lands its artifact in openfut-hook/target/, matching the launcher's
|
||||
# config.rs default hook_dll_path). Build: cargo build --release --target x86_64-pc-windows-gnu.
|
||||
exclude = ["openfut-launcher/openfut-hook"]
|
||||
|
||||
+1
-1
Submodule openfut-launcher updated: ca7ce267a0...0d3f33cede
Reference in New Issue
Block a user