dzn: Build in WSL
This series gets dozen building for Linux.
It gets far enough in initialization to enumerate physical devices, but crashes shortly after that due to an ABI difference between the C calling code and the C++ implementing code in D3D. This is a bug in the D3D headers, and I'm pursuing a fix in the MIDL compiler to address it. In the meantime, this will build, but not work. The first point of failure is the call to ID3D12Device_GetCustomHeapProperties
in dzn_device_query_init
.
This is able to run VkInfo
but fails to run any GUI apps due to missing windowing extensions, and will likely fail off-screen rendering too due to more ABI differences that are not yet addressed. but offline rendering should work.
Similar to what I did for the d3d12
GL driver, this swaps out the use of DXGI for DXCore, bypasses the need for DXIL.dll, and replaces some Windows-isms with cross-platform helpers.