diff options
| author | skal <pascal.massimino@gmail.com> | 2026-02-17 11:00:51 +0100 |
|---|---|---|
| committer | skal <pascal.massimino@gmail.com> | 2026-02-17 11:00:51 +0100 |
| commit | a30a9878fe083240dbd98ae4ca93339cd8a8d667 (patch) | |
| tree | 169632773d7570f8847629d9177844b809cb4566 /cmake/DemoExecutables.cmake | |
| parent | a5e3e1bdb104555394e9f3aad6d1cf07e93998bf (diff) | |
fix(build): Resolve Windows cross-compilation failures
This commit fixes several issues that caused the Windows cross-compilation build (`scripts/build_win.sh`) to fail.
The root causes were platform-specific API differences in the wgpu-native library and incorrect dependency tracking in the CMake build system for generated code.
Changes:
- **`tools/seq_compiler.py`**: The timeline generator now wraps `depthSlice` assignments in `#if !defined(DEMO_CROSS_COMPILE_WIN32)` directives to handle API differences in `WGPURenderPassColorAttachment`.
- **`src/gpu/gpu.h`**: The `gpu_init_color_attachment` helper is now platform-aware, using a preprocessor guard for the `depthSlice` member.
- **`src/effects/*.cc`**: All effects are updated to use the new platform-aware helper or have explicit guards for `depthSlice`. Also, replaced `WGPUTexelCopyTextureInfo` with the cross-platform alias `GpuTextureCopyInfo` in `rotating_cube_effect.cc`.
- **`cmake`**: Added `tools/seq_compiler.py` as an explicit dependency to the `generate_timeline` and `generate_test_demo_timeline` custom commands. This ensures that changes to the generator script correctly trigger a rebuild of the generated C++ files.
- **`scripts/build_win.sh`**: Removed the erroneous attempt to build the `seq_compiler.py` script as a native executable.
With these changes, the Windows cross-compilation build now completes successfully.
Diffstat (limited to 'cmake/DemoExecutables.cmake')
| -rw-r--r-- | cmake/DemoExecutables.cmake | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/cmake/DemoExecutables.cmake b/cmake/DemoExecutables.cmake index 223f406..4417eec 100644 --- a/cmake/DemoExecutables.cmake +++ b/cmake/DemoExecutables.cmake @@ -55,7 +55,7 @@ add_custom_command( COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_SOURCE_DIR}/src/generated COMMAND ${Python3_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/tools/seq_compiler.py ${TEST_DEMO_SEQ_PATH} --output ${GENERATED_TEST_DEMO_TIMELINE_CC} - DEPENDS ${TEST_DEMO_SEQ_PATH} src/gpu/demo_effects.h + DEPENDS ${TEST_DEMO_SEQ_PATH} src/gpu/demo_effects.h ${CMAKE_CURRENT_SOURCE_DIR}/tools/seq_compiler.py COMMENT "Compiling test_demo sequence..." ) add_custom_target(generate_test_demo_timeline ALL DEPENDS ${GENERATED_TEST_DEMO_TIMELINE_CC}) |
