- Add unified patch (wxwidgets-wasm.patch) for build validation - Add scripts: - generate-wxwidgets-patches.sh: Extract patches from wxwidgets state - build-wxwidgets-wasm-clean.sh: Build from clean clone + patches - build-wxuniversal-wasm.sh: Build wxWidgets for WASM - Add wxWidgets-wasm-reference submodule (ahilss/wxWidgets-wasm) - Update .gitignore for wxwidgets-clean/ directory Base commit: 5ff25322553c1870cf20a2e1ba6f20ed50d9fe9a 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
47 lines
1.2 KiB
Markdown
47 lines
1.2 KiB
Markdown
# wxWidgets WASM Port Patch
|
|
|
|
Single unified patch that transforms wxWidgets into a WASM-capable build.
|
|
|
|
## Base Version
|
|
|
|
- Repository: git@github.com:VV-EE/wxWidgets.git
|
|
- Commit: 5ff25322553c1870cf20a2e1ba6f20ed50d9fe9a
|
|
- Generated: 2025-11-27 14:10:12 UTC
|
|
|
|
## Patch Contents
|
|
|
|
This single patch includes:
|
|
- Main wxWidgets modifications (config.sub, configure.in, headers, sources)
|
|
- New WASM platform: src/wasm/, include/wx/wasm/
|
|
- New build files: build/wasm/
|
|
- WASM theme renderer: src/univ/themes/wasm.cpp
|
|
- Submodule config.sub updates for emscripten/wasm32 support:
|
|
- 3rdparty/pcre/config.sub
|
|
- src/expat/expat/conftools/config.sub
|
|
- src/jpeg/config.sub
|
|
- src/png/config.sub
|
|
- src/tiff/config/config.sub
|
|
|
|
## Apply Instructions
|
|
|
|
```bash
|
|
# Clone wxWidgets fork at the base commit
|
|
git clone git@github.com:VV-EE/wxWidgets.git wxwidgets-clean
|
|
cd wxwidgets-clean
|
|
git checkout 5ff25322553c1870cf20a2e1ba6f20ed50d9fe9a
|
|
git submodule update --init --recursive
|
|
|
|
# Apply the unified patch
|
|
patch -p1 < /path/to/patches/wxwidgets-wasm/wxwidgets-wasm.patch
|
|
|
|
# Build
|
|
mkdir build && cd build
|
|
emconfigure ../configure --host=emscripten --enable-universal ...
|
|
emmake make
|
|
```
|
|
|
|
## Verification
|
|
|
|
```bash
|
|
shasum -a 256 -c checksums.sha256
|
|
```
|