pcbjam/wasm/stubs/nl_pcbnew_plugin_stub.cpp
Viktor Vaczi 9c271996c2 Fix KiCad WASM build and runtime errors
Build improvements:
- Change -O0 to -O1 to fix "local count too large" asyncify error
- Add wasm-emscripten-finalize to host (Docker OOMs on large WASM)
- Use -gseparate-dwarf for smaller main binary with debug info
- Build native protoc for code generation
- Add more functions to asyncify removelist

Runtime fixes:
- Add inject-dyncall-shims.sh to fix "dynCall_* is not defined" in Emscripten 4.x
- Update wxwidgets with browserInfo.name fix

New stubs and bindings:
- Add Embind bindings for JavaScript interop
- Add stubs for scripting, API plugin, PCB frame, navlib

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 16:30:53 +01:00

26 lines
592 B
C++

/*
* SpaceNavigator plugin stubs for KiCad WASM build
* 3D mouse support is not available in WASM
*/
// Minimal definition for NL_PCBNEW_PLUGIN_IMPL
// Required because unique_ptr destructor needs a complete type
class NL_PCBNEW_PLUGIN_IMPL {};
#include <navlib/nl_pcbnew_plugin.h>
// NL_PCBNEW_PLUGIN stub implementation
NL_PCBNEW_PLUGIN::NL_PCBNEW_PLUGIN( PCB_DRAW_PANEL_GAL* aViewport )
{
(void)aViewport;
// No implementation - 3D mouse not available in WASM
}
NL_PCBNEW_PLUGIN::~NL_PCBNEW_PLUGIN()
{
}
void NL_PCBNEW_PLUGIN::SetFocus( bool aFocus )
{
(void)aFocus;
}