[PATCH 6/9] gdi32: Introduce user_callbacks.

Huw Davies huw at codeweavers.com
Tue Sep 28 06:50:30 CDT 2021


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
                             ^
etc.

Huw.



More information about the wine-devel mailing list