[Mesa-dev] [PATCH] st/nine: clean up WINAPI definition

Christian Schmidbauer ch.schmidbauer at gmail.com
Wed May 4 18:47:35 UTC 2016


On Sun, May 1, 2016 at 6:03 PM, Axel Davy <axel.davy at ens.fr> wrote:
> Do we need the #ifndef WINAPI part ?
>
> Axel
>
>
> On 29/04/2016 20:53, Christian Schmidbauer wrote:
>>
>> As Emil pointed out, only gcc, clang and MSVC compatibility is required.
>> Hence the check for GNUC can be skipped, as __i386__ and __x86_64__ are
>> only defined for gcc/clang, not for MSVC.
>>
>> Remove the #undef which has been there for historic reasons, when wine
>> dlls for nine have been built inside mesa. Instead use #ifndef in order
>> to avoid redefining WINAPI from MSVC's headers.
>> ---
>>   include/D3D9/d3d9types.h | 16 +++++-----------
>>   1 file changed, 5 insertions(+), 11 deletions(-)
>>
>> diff --git a/include/D3D9/d3d9types.h b/include/D3D9/d3d9types.h
>> index e0b8652..88f22b9 100644
>> --- a/include/D3D9/d3d9types.h
>> +++ b/include/D3D9/d3d9types.h
>> @@ -173,22 +173,16 @@ typedef struct _RGNDATA {
>>   #define D3DPRESENTFLAG_RESTRICTED_CONTENT              0x00000400
>>   #define D3DPRESENTFLAG_RESTRICT_SHARED_RESOURCE_DRIVER 0x00000800
>>   -
>> -#ifdef WINAPI
>> -#undef WINAPI
>> -#endif /* WINAPI*/
>> -
>> -#ifdef __GNUC__
>> -  #if (defined(__x86_64__) && !defined(__ILP32__)) || defined(_M_X64)
>> +/* Windows calling convention */
>> +#ifndef WINAPI
>> +  #if defined(__x86_64__) && !defined(__ILP32__)
>>       #define WINAPI __attribute__((ms_abi))
>> -  #elif defined(__i386) || defined(_M_IX86)
>> +  #elif defined(__i386__)
>>       #define WINAPI __attribute__((__stdcall__))
>>     #else /* neither amd64 nor i386 */
>>       #define WINAPI
>>     #endif
>> -#else /* __GNUC__ */
>> -  #define WINAPI
>> -#endif
>> +#endif /* WINAPI */
>>     /* Implementation caps */
>>   #define D3DPRESENT_BACK_BUFFERS_MAX    3
>

If you do not care about compatibility with MSVC, you can skip it.


More information about the mesa-dev mailing list