[PATCH 6/9] gdi32: Introduce user_callbacks.

Jacek Caban jacek at codeweavers.com
Tue Sep 28 08:43:15 CDT 2021


On 9/28/21 1:50 PM, Huw Davies wrote:
> On Tue, Sep 28, 2021 at 01:17:27PM +0200, Jacek Caban wrote:
>> Signed-off-by: Jacek Caban <jacek at codeweavers.com>
>> ---
>>
>> This is one more hack to unblock the transition. Ultimately, both relevant
>> parts of user32 and gdi32 will live in win32u, so those will be just
>> internal calls. The plan is to move ntgdi to win32u first (we're fairly
>> close to that with this series, but we still need to make it compatible with
>> proper Unix lib) and then work at moving user32 bits (hopefully this can be
>> done more incrementally).
>>
>>     dlls/gdi32/Makefile.in      |   3 +-
>>     dlls/gdi32/driver.c         |  74 ++++++++-----------
>>     dlls/gdi32/gdiobj.c         |   9 +--
>>     dlls/gdi32/ntgdi_private.h  |   3 +-
>>     dlls/gdi32/palette.c        |  27 ++-----
>>     dlls/gdi32/region.c         |  11 +--
>>     dlls/gdi32/win32u_private.h |  41 +++++++++++
>>     dlls/gdi32/wrappers.c       | 141 ++++++++++++++++++++++++++++++++++++
>>     8 files changed, 228 insertions(+), 81 deletions(-)
>>     create mode 100644 dlls/gdi32/win32u_private.h
>>     create mode 100644 dlls/gdi32/wrappers.c
> Hi Jacek,
>
> Unfortunately, this is failing to build on macOS:
>
> gcc -m32 -c -o dlls/gdi32/freetype.o dlls/gdi32/freetype.c -Idlls/gdi32 -Iinclude \
>    -I/Users/daviesh/extras/include/freetype2 -I/Users/daviesh/extras/include/libpng16 \
>    -I/Users/daviesh/extras/include -D__WINESRC__ -D_GDI32_ -D_UCRT -DWINE_UNIX_LIB -fPIC \
>    -fasynchronous-unwind-tables -Wall -pipe -fno-stack-protector -fno-strict-aliasing \
>    -Wdeclaration-after-statement -Wempty-body -Wignored-qualifiers -Winit-self -Wno-pragma-pack \
>    -Wstrict-prototypes -Wtype-limits -Wvla -Wwrite-strings -Wpointer-arith -gdwarf-2 -gstrict-dwarf \
>    -fno-omit-frame-pointer -O2 -g -Wno-deprecated-declarations -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0
> In file included from dlls/gdi32/freetype.c:108:
> In file included from dlls/gdi32/ntgdi_private.h:31:
> In file included from dlls/gdi32/win32u_private.h:25:
> include/winuser.h:3589:31: error: function declared 'stdcall' here was previously declared without calling convention
> WINUSERAPI DWORD       WINAPI CheckMenuItem(HMENU,UINT,UINT);
>                                ^
> /System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Menus.h:2892:1: note: previous declaration is here
> MacCheckMenuItem(
> ^
> /System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Menus.h:2889:30: note: expanded from macro 'MacCheckMenuItem'
>      #define MacCheckMenuItem CheckMenuItem
>                               ^


Sorry about that, I didn't expect problems there. I will send v2.


Thanks,

Jacek




More information about the wine-devel mailing list