mirror of https://github.com/opencv/opencv.git
-enable using -DWITH_WAYLAND=ON -adapted from https://github.com/pfpacket/opencv-wayland -using xdg_shell stable protocol -overrides HAVE_QT if HAVE_WAYLAND and WITH_WAYLAND are set Signed-off-by: Joel Winarske <joel.winarske@gmail.com> Co-authored-by: Ryo Munakata <afpacket@gmail.com>pull/22102/head
parent
b19683eb41
commit
0769bf416f
9 changed files with 2566 additions and 1 deletions
@ -0,0 +1,35 @@ |
||||
# --- Wayland --- |
||||
macro(ocv_wayland_generate protocol_file output_file) |
||||
add_custom_command(OUTPUT ${output_file}.h |
||||
COMMAND ${WAYLAND_SCANNER_EXECUTABLE} client-header < ${protocol_file} > ${output_file}.h |
||||
DEPENDS ${protocol_file}) |
||||
add_custom_command(OUTPUT ${output_file}.c |
||||
COMMAND ${WAYLAND_SCANNER_EXECUTABLE} private-code < ${protocol_file} > ${output_file}.c |
||||
DEPENDS ${protocol_file}) |
||||
list(APPEND WAYLAND_PROTOCOL_SOURCES ${output_file}.h ${output_file}.c) |
||||
endmacro() |
||||
|
||||
ocv_clear_vars(HAVE_WAYLAND_CLIENT HAVE_WAYLAND_CURSOR HAVE_XKBCOMMON HAVE_WAYLAND_PROTOCOLS) |
||||
if(WITH_WAYLAND) |
||||
ocv_check_modules(WAYLAND_CLIENT wayland-client) |
||||
if(WAYLAND_CLIENT_FOUND) |
||||
set(HAVE_WAYLAND_CLIENT ON) |
||||
endif() |
||||
ocv_check_modules(WAYLAND_CURSOR wayland-cursor) |
||||
if(WAYLAND_CURSOR_FOUND) |
||||
set(HAVE_WAYLAND_CURSOR ON) |
||||
endif() |
||||
ocv_check_modules(XKBCOMMON xkbcommon) |
||||
if(XKBCOMMON_FOUND) |
||||
set(HAVE_XKBCOMMON ON) |
||||
endif() |
||||
ocv_check_modules(WAYLAND_PROTOCOLS wayland-protocols>=1.13) |
||||
if(HAVE_WAYLAND_PROTOCOLS) |
||||
pkg_get_variable(WAYLAND_PROTOCOLS_BASE wayland-protocols pkgdatadir) |
||||
find_host_program(WAYLAND_SCANNER_EXECUTABLE NAMES wayland-scanner REQUIRED) |
||||
endif() |
||||
|
||||
if(HAVE_WAYLAND_CLIENT AND HAVE_WAYLAND_CURSOR AND HAVE_XKBCOMMON AND HAVE_WAYLAND_PROTOCOLS) |
||||
set(HAVE_WAYLAND TRUE) |
||||
endif() |
||||
endif() |
File diff suppressed because it is too large
Load Diff
Loading…
Reference in new issue