Stefan Weil wrote:
Here is a patch using WIN32_LEAN_AND_MEAN which tries not to break
dsound (and vl.c). I could only test it using cross compilation from Linux,
so please send comments.
Patch description:
* add WIN32_LEAN_AND_MEAN to all inclusions of windows.h
* remove windows.h from vl.c (it is already included otherwise)
* add mmsystem.h to vl.c and dsoundaudio.c (they need it and got it from
windows.h)
* fixed indentation in vl.c (wrong indentation was caused by an earlier
patch from me)
It will be difficult to avoid using variable names like "interface" in the
future, so I still think using a minimal set of includes is the better
(and faster) solution.
Anyway, Windows users need a working solution, so it would be nice if one
of these patches could be applied to CVS HEAD.
Thank you.
Stefan
JonY schrieb:
Stefan Weil wrote:
basetyps.h is included by windows.h / rpc.h. QEMU does not need it, so
you can avoid it like this:
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
WIN32_LEAN_AND_MEAN reduces the number of includes in windows.h
and increases compilation speed. And you don't have to rename
variables like interface :-)
Regards,
Stefan
Hi,
I would prefer Eduardo's patch, defining WIN32_LEAN_AND_MEAN breaks
dsound.
Thanks.
Ok, this patch works as intended. Thanks for the patch!
Slightly off topic, but still on Windows builds broken.
For some odd reason, dyngen-exec.h is always conflicting with
stdint.h(?!!) for me. Can somebody explain why the typedefs are in
dyngen-exec.h?
Mingw does not have ffs, localtime_r, gmtime_r, which breaks when
compiling some files.
I propose adding the following for *_r functions on mingw hosts.
#define localtime_r(x, y) memcpy(y, localtime(x), sizeof(y))
#define gmtime_r(x, y) memcpy(y, gmtime(x), sizeof(y))
There are many implementations of ffs(), but I'm unsure what it does :(