diff options
author | Campbell Barton <campbell@blender.org> | 2022-07-05 07:49:36 +0300 |
---|---|---|
committer | Campbell Barton <campbell@blender.org> | 2022-07-06 08:30:47 +0300 |
commit | e58e023e1a3e10f4ff2557aedcd730b5dba23579 (patch) | |
tree | 6f4383d011e359b13add3dd7917a7e69b4231c0e /build_files/cmake | |
parent | d9505831a4549e872bcef023ac082d002e8d8392 (diff) |
GHOST/Wayland: support dynamic loading libraries for Wayland
Add intern/wayland_dynload which is used when WITH_GHOST_WAYLAND_DYNLOAD
is enabled (off by default). When enabled, systems without Wayland
installed will fall back to X11.
This allows Blender to dynamically load:
- libwayland-client
- libwayland-cursor
- libwayland-egl
- libdecor-0 (when WITH_GHOST_WAYLAND_LIBDECOR is enabled).
Diffstat (limited to 'build_files/cmake')
-rw-r--r-- | build_files/cmake/platform/platform_unix.cmake | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/build_files/cmake/platform/platform_unix.cmake b/build_files/cmake/platform/platform_unix.cmake index dff860d9876..4b654420531 100644 --- a/build_files/cmake/platform/platform_unix.cmake +++ b/build_files/cmake/platform/platform_unix.cmake @@ -641,12 +641,17 @@ if(WITH_GHOST_WAYLAND) endif() list(APPEND PLATFORM_LINKLIBS - ${wayland-client_LINK_LIBRARIES} - ${wayland-egl_LINK_LIBRARIES} ${xkbcommon_LINK_LIBRARIES} - ${wayland-cursor_LINK_LIBRARIES} ) + if(NOT WITH_GHOST_WAYLAND_DYNLOAD) + list(APPEND PLATFORM_LINKLIBS + ${wayland-client_LINK_LIBRARIES} + ${wayland-egl_LINK_LIBRARIES} + ${wayland-cursor_LINK_LIBRARIES} + ) + endif() + if(WITH_GHOST_WAYLAND_DBUS) list(APPEND PLATFORM_LINKLIBS ${dbus_LINK_LIBRARIES} @@ -655,9 +660,11 @@ if(WITH_GHOST_WAYLAND) endif() if(WITH_GHOST_WAYLAND_LIBDECOR) - list(APPEND PLATFORM_LINKLIBS - ${libdecor_LIBRARIES} - ) + if(NOT WITH_GHOST_WAYLAND_DYNLOAD) + list(APPEND PLATFORM_LINKLIBS + ${libdecor_LIBRARIES} + ) + endif() add_definitions(-DWITH_GHOST_WAYLAND_LIBDECOR) endif() endif() |