Closed bartimaeusnek closed 1 year ago
Can not confirm.
When disabling the multiplayer module, classes defined in it will no longer show up in the glue. Notable MultiplayerAPI
is defined in core, not the multiplayer module, so its continued existence is expected.
Only MultiplayerSpawner
, MultiplayerSynchronizer
, SceneMultiplayer
, SceneReplicationConfig
and OfflineMultiplayerPeer
are actually defined in the multiplayer module.
Godot version
809a98216267f3066b9fec2f02b2042bdc9d3e0d
System information
OS: Windows 10 WSL Ubuntu 22.04.2 LTS, CPU: AMD Ryzen 5 5600x, x86_64 architecture
Issue description
When building Godot with i. E.
module_multiplayer_enabled=no
the C# glue code still generate definitionsGodot.MultiplayerApi
for it. This also applys to other modules, like XR. I'm cross-compiling for Windows only. I have cleaned my build cache prior to building godot by deleting the/godot-build-scripts/out
and/godot-build-scripts/mono-glue
folders.my options in
/godot-build-scripts/build-mono-glue
:export OPTIONS="debug_symbols=no use_static_cpp=no production=yes arch=x86_64 dev_build=false optimize=speed lto=full module_openxr_enabled=no module_enet_enabled=no module_mobile_vr_enabled=no module_multiplayer_enabled=no module_websocket_enabled=no module_webxr_enabled=no module_webrtc_enabled=no module_webp_enabled=no module_noise_enabled=no module_mbedtls_enabled=no module_upnp_enabled=no"
my options in
/godot-build-scripts/build-windows
:export OPTIONS="production=yes arch=x86_64 dev_build=false optimize=speed lto=full module_openxr_enabled=no module_enet_enabled=no module_mobile_vr_enabled=no module_multiplayer_enabled=no module_websocket_enabled=no module_webxr_enabled=no module_webrtc_enabled=no module_webp_enabled=no module_noise_enabled=no module_mbedtls_enabled=no module_upnp_enabled=no"
Logs: mono-glue.log windows.log
Steps to reproduce
module_multiplayer_enabled=no
godot.editor.mono --headless --generate-mono-glue <path>
mono-glue\GodotSharp\GodotSharp\Generated\GodotObjects
already contains multiplayer api (MultiplayerApi.cs
) definitionsGodotSharp.dll
and decompile that with i.E.dotPeek
,ILSpy
,dnSpy
or something similarGodot.MultiplayerApi
) are still present in the glue code.Minimal reproduction project
N/A