Files
gtk3/gdk/win32/meson.build
Chun-wei Fan a0306f758f GDK-Win32: Add wrapper functions for calling core wgl* functions
This is a backport from the GTK-4.x update, so that we can aim to
support gtkglsink in gst-plugins-good even on Windows, beyond using
just Cairo in gstsink for rendering.

From the commit message in GTK-4.x, in commit 627ee674:

We might be dealing with GL contexts from different threads, which have more
gotchas when we are using libepoxy, so in case the function pointers for
these are invalidated by wglMakeCurrent() calls outside of GTK/GDK, such as
in GstGL, we want to use these functions that are directly linked to
opengl32.dll provided by the system/ICD, by linking to opengl32.lib.

This will ensure that we will indeed call the "correct" wgl* functions that
we need.
2024-05-22 19:26:31 +08:00

63 lines
1.5 KiB
Meson

gdk_win32_sources = files(
'gdkcursor-win32.c',
'gdkdevicemanager-win32.c',
'gdkdevice-virtual.c',
'gdkdevice-win32.c',
'gdkdevice-winpointer.c',
'gdkdevice-wintab.c',
'gdkdisplay-win32.c',
'gdkdisplaymanager-win32.c',
'gdkdnd-win32.c',
'gdkevents-win32.c',
'gdkgeometry-win32.c',
'gdkglcontext-win32.c',
'gdkglcontext-win32-private.c',
'gdkglobals-win32.c',
'gdkkeys-win32.c',
'gdkkeys-win32-impl.c',
'gdkkeys-win32-impl-wow64.c',
'gdkmain-win32.c',
'gdkmonitor-win32.c',
'gdkproperty-win32.c',
'gdkscreen-win32.c',
'gdkselection-win32.c',
'gdktestutils-win32.c',
'gdkwin32id.c',
'gdkwin32langnotification.c',
'gdkwindow-win32.c',
)
gdk_win32_public_headers = files(
'gdkwin32cursor.h',
'gdkwin32display.h',
'gdkwin32displaymanager.h',
'gdkwin32dnd.h',
'gdkwin32glcontext.h',
'gdkwin32keys.h',
'gdkwin32misc.h',
'gdkwin32monitor.h',
'gdkwin32screen.h',
'gdkwin32window.h',
)
GDK_WIN32_CFLAGS = ['-DGDK_COMPILATION', '-DG_LOG_DOMAIN="Gdk"', '-DINSIDE_GDK_WIN32']
if win32_has_egl
GDK_WIN32_CFLAGS += '-DGDK_WIN32_ENABLE_EGL'
endif
install_headers(gdk_win32_public_headers, subdir: 'gtk-3.0/gdk/win32')
install_headers('gdkwin32.h', subdir: 'gtk-3.0/gdk')
gdk_win32_deps = [ # FIXME
pangowin32_dep,
meson.get_compiler('c').find_library('hid')
]
libgdk_win32 = static_library('gdk-win32',
gdk_win32_sources, gdkconfig, gdkenum_h,
include_directories: [confinc, gdkinc],
c_args: GDK_WIN32_CFLAGS,
dependencies: [gdk_deps, gdk_win32_deps])