Hi,
After two people told me they might have use for my Visual Studio setup to compile wined3d I finally got around to put it on my git server. You can download it with
GIT_SSL_NO_VERIFY=1 git clone https://84.112.174.163/~git/wined3d_vs
What is this good for? My aims were to have Microsoft-Style debug symbols to use various Windows development tools. The also aim was to to work without Mingw, Msys or any other Unix tool besides git, mostly because mingw+msys is a pain.
It performs an out-of-tree build of ddraw, d3d8, d3d9, the tests, wined3d and a few dependencies. Just put the files next to the wine sources, the project essentially loads the source files from ../wine/*. I also have d3dx9_36.dll in the project, but it doesn't link at the moment because d3dcompiler.dll is missing and some math functions. The testlist.c files for the tests cannot be autogenerated yet.
The main issue is that this project is a stripped-down reimplementation of the wine build system. The source files and library exports are hardcoded, so if they change the msvc project needs manual adjustments. It would be much nicer to use the msvcmaker script for that, but I wasn't aware of this script when I started this.
No additional software besides Visual Studio 2010 is needed, except for d3dx9_36 which needs the DirectX SDK. I just noticed that the d3d8 tests hardcode a path to the SDK sdk too, that is a bug that I can fix. I tried to compile the tests and d3d client libs with the MS headers to test our header compatibility but ran into some difficulties. The generated binaries also have no dependencies except the msvc2010 C runtime(msvcr100.dll)
One word about licensing: I didn't find any obstacles that prevent personal use of MSVC Express, but please double-check the EULAs. Redistribution of Microsoft code is a problem however. The project setup doesn't deliberately include any MS code in the binaries, but it is possible that some functions from the C runtime is inlined, so to stay on the safe side I don't redistribute any binaries built from Visual Studio.
There are a bunch of warnings left in the code. I fixed the warnings in wined3d.dll, d3d8.dll, d3d9.dll and the d3d8 tests, or silenced some warnings that I considered too pedantic or hard to fix. ddraw.dll, the ddraw tests and d3dx9 and the d3d9 tests have a number of legitimate warnings left.
Stefan