gpu-dawn: x86_64-windows support #86

Closed
opened 2021-11-21 15:40:42 +00:00 by emidoots · 3 comments
emidoots commented 2021-11-21 15:40:42 +00:00 (Migrated from github.com)
- [x] https://github.com/hexops/mach/issues/167 - [x] Publish binary releases of `gpu-dawn` for Windows - [x] #169 - [x] Build DirectXShaderCompiler with `zig build` system - [x] Land patches to `gpu-dawn/build.zig` required for Windows builds - [x] Update and publish WIDL-produced Direct3D headers in a Windows SDK repo - [x] Add Windows SDK repo to `system_sdk.zig` for use in `mach/gpu-dawn` - [x] Merge patches to Dawn into `main` of our fork, - [x] https://github.com/hexops/dawn/pull/8 - [x] https://github.com/hexops/dawn/pull/7 - [x] https://github.com/hexops/dawn/pull/6 - [x] Patch Dawn to eliminate dependency on `windows.ui.*` headers and fix other issues building with Zig - [x] https://github.com/hexops/dawn/pull/8 - [x] https://github.com/hexops/dawn/pull/7 - [x] https://github.com/hexops/dawn/pull/6 - [x] Debug the compatibility issues with DX debug API expecting 3 params in Dawn vs. 1 according to headers (???) -> most likely due to outdated d3d12 headers. - [x] Debug cause of segfaults that occurred when hacking in updated d3d headers (see COM calling convention issues discussed at https://github.com/ziglang/zig/issues/9998#issuecomment-997088467) - [x] Produce up-to-date MinGW/GNU compatible Direct3D headers https://github.com/ziglang/zig/issues/9998#issuecomment-997088467
emidoots commented 2021-12-24 09:07:58 +00:00 (Migrated from github.com)

Super close to having Windows builds actually. Everything compiles, but need dxcompiler to get it to link and then we should be golden. Lots of changes to land here both in Mach and upstream in Dawn itself, though. Updated issue description.

Super close to having Windows builds actually. Everything compiles, but need dxcompiler to get it to link and then we should be golden. Lots of changes to land here both in Mach and upstream in Dawn itself, though. Updated issue description.
emidoots commented 2022-03-06 06:25:31 +00:00 (Migrated from github.com)

This officially works, complete with binary releases from the CI system and cross compilation from any OS:

cd gpu-dawn/
zig build run-dawn-example -Dtarget=x86_64-windows-gnu

If you want to build from source, just add -Ddawn-from-source=true but note that you'll need a patched version of Zig temporarily until the patch lands upstream, see https://github.com/hexops/mach/issues/167

No -msvc builds, yet.

This officially works, complete with binary releases from the CI system and cross compilation from any OS: ``` cd gpu-dawn/ zig build run-dawn-example -Dtarget=x86_64-windows-gnu ``` If you want to build from source, just add `-Ddawn-from-source=true` but note that you'll need a patched version of Zig temporarily until the patch lands upstream, see https://github.com/hexops/mach/issues/167 No `-msvc` builds, yet.
alichraghi commented 2022-03-06 06:25:40 +00:00 (Migrated from github.com)

congrats

congrats
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
hexops/mach#86
No description provided.