Details
-
Improvement
-
Resolution: Unresolved
-
Major
-
None
-
None
Description
Fix all compilation problems of our d3d9 (not Wine's), which is located in dll/directx/d3d9:
- Add CMakeLists.txt with all *.c files and needed sections included.
- Fix the syntax of all stubs for unimplemented functions by adding `;` after each `UNIMPLEMENTED`.
- Add some missing definitions into included sdk headers, since they are used by our d3d9.
- Comment out defined error `You should not include d3dtypes.h when compiling for DX8 or newer.` in sdk/include/psdk/d3dtypes.h, because otherwise compilation fails with this error and doesn't go any further. Removing this header or any other headers which include it from d3d9 source files is not an option since there are a lot of needed definitions which are required by that sources. Ftr, Wine's d3dtypes.h has no this error defined, but MS header from DirectX SDK has, as I see.
- Make d3d8thk linkable with others dlls and link it with d3d9, since many parts of the d3d9 code are referenced to d3d8thk functions (spotted by learn_more).
If you want to test this, you need to comment out `add_subdirectory(d3d9)` in dll/directx/wine/CMakeLists.txt and uncomment `#add_subdirectory(d3d9) #disabled in trunk, see wine subfolder` in dll/directx/CMakeLists.txt.
P.S.: I double-rechecked: after my changes, compilation of the current (Wine's) d3d9 still succeeds. So they don't break anything.