On Fri, Nov 11, 2011 at 12:45, Francois Gouget <[email protected]> wrote: > On Thu, 10 Nov 2011, Daniel Scharrer wrote: >> >> > Does the Microsoft header include math.h? >> I'm sorry, it seems I made a mistake here: the actual header file >> (d3dx9math.h) from wine includes math.h so the sqrt usage is ok. >> >> However, d3dx9math.inl also uses min and max macros which aren't >> included anywhere. Because of this a winelib user has to >> define/include those symbols before including d3dx9math.h (that was my >> original problem). I'm pretty certain that is not the case for the >> Microsoft headers. >> >> A quick grep of the wine include files shows that the min/max macros >> are defined in windef.h, minmax.h and msvcrt/stdlib.h - I have no idea >> which one should be included here. > > At least up to DirectX 9.0c, d3dx9math.h only includes d3dx9.h and > math.h (and d3dx9math.inl) so that's what we have to work with. But as > has been pointed out previously, in DirectX 9.0c d3dx9math.inl does not > use min() and max(). So removing them from our version is probably the > right fix.
Ok, I've submitted a new patch that removes min/max usage in d3dx9math.inl. Cheers, Daniel
