Fix compilation and detection under debian/ubuntu
This commit is contained in:
parent
87d6caa69a
commit
5dcb3dfe8b
@ -29,30 +29,30 @@ include(FindPkgConfig)
|
|||||||
|
|
||||||
if(PKG_CONFIG_FOUND)
|
if(PKG_CONFIG_FOUND)
|
||||||
pkg_check_modules(WAYLAND_SCANNER_PKG wayland-scanner)
|
pkg_check_modules(WAYLAND_SCANNER_PKG wayland-scanner)
|
||||||
pkg_check_modules(WAYLAND_CLIENT wayland-client)
|
pkg_check_modules(WAYLAND_CLIENT_PKG wayland-client)
|
||||||
pkg_check_modules(XKBCOMMON xkbcommon)
|
pkg_check_modules(XKBCOMMON_PC_PKG xkbcommon)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
find_program(WAYLAND_SCANNER wayland-scanner
|
find_program(WAYLAND_SCANNER wayland-scanner
|
||||||
HINTS "${WAYLAND_SCANNER_PREFIX}/bin"
|
HINTS "${WAYLAND_SCANNER_PKG_PREFIX}/bin"
|
||||||
)
|
)
|
||||||
|
|
||||||
find_path(WAYLAND_INCLUDE_DIR wayland-client.h
|
find_path(WAYLAND_INCLUDE_DIR wayland-client.h
|
||||||
HINTS ${WAYLAND_CLIENT_INCLUDE_DIRS}
|
HINTS ${WAYLAND_CLIENT_PKG_INCLUDE_DIRS}
|
||||||
)
|
)
|
||||||
|
|
||||||
find_library(WAYLAND_LIBS
|
find_library(WAYLAND_LIBS
|
||||||
NAMES "wayland-client"
|
NAMES "wayland-client"
|
||||||
HINTS "${WAYLAND_CLIENT_LIBRARIES}"
|
HINTS "${WAYLAND_CLIENT_PKG_LIBRARIES}"
|
||||||
)
|
)
|
||||||
|
|
||||||
find_path(XKBCOMMON_INCLUDE_DIR xkbcommon/xkbcommon.h
|
find_path(XKBCOMMON_INCLUDE_DIR xkbcommon/xkbcommon.h
|
||||||
HINTS ${XKBCOMMON_INCLUDE_DIRS}
|
HINTS ${XKBCOMMON_PC_INCLUDE_DIRS}
|
||||||
)
|
)
|
||||||
|
|
||||||
find_library(XKBCOMMON_LIBS
|
find_library(XKBCOMMON_LIBS
|
||||||
NAMES xkbcommon
|
NAMES xkbcommon
|
||||||
HINTS "${XKBCOMMON_LIBRARIES}"
|
HINTS "${XKBCOMMON_PC_LIBRARIES}"
|
||||||
)
|
)
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
include(FindPackageHandleStandardArgs)
|
||||||
|
@ -696,9 +696,11 @@ static void seat_handle_capabilities(void *data, struct wl_seat *seat, enum wl_s
|
|||||||
wl_pointer_set_user_data(input->pointer, input);
|
wl_pointer_set_user_data(input->pointer, input);
|
||||||
wl_pointer_add_listener(input->pointer, &pointer_listener, input);
|
wl_pointer_add_listener(input->pointer, &pointer_listener, input);
|
||||||
} else if (!(caps & WL_SEAT_CAPABILITY_POINTER) && input->pointer) {
|
} else if (!(caps & WL_SEAT_CAPABILITY_POINTER) && input->pointer) {
|
||||||
|
#ifdef WL_POINTER_RELEASE_SINCE_VERSION
|
||||||
if (input->seat_version >= WL_POINTER_RELEASE_SINCE_VERSION)
|
if (input->seat_version >= WL_POINTER_RELEASE_SINCE_VERSION)
|
||||||
wl_pointer_release(input->pointer);
|
wl_pointer_release(input->pointer);
|
||||||
else
|
else
|
||||||
|
#endif
|
||||||
wl_pointer_destroy(input->pointer);
|
wl_pointer_destroy(input->pointer);
|
||||||
input->pointer = NULL;
|
input->pointer = NULL;
|
||||||
}
|
}
|
||||||
@ -708,9 +710,11 @@ static void seat_handle_capabilities(void *data, struct wl_seat *seat, enum wl_s
|
|||||||
wl_keyboard_set_user_data(input->keyboard, input);
|
wl_keyboard_set_user_data(input->keyboard, input);
|
||||||
wl_keyboard_add_listener(input->keyboard, &keyboard_listener, input);
|
wl_keyboard_add_listener(input->keyboard, &keyboard_listener, input);
|
||||||
} else if (!(caps & WL_SEAT_CAPABILITY_KEYBOARD) && input->keyboard) {
|
} else if (!(caps & WL_SEAT_CAPABILITY_KEYBOARD) && input->keyboard) {
|
||||||
|
#ifdef WL_KEYBOARD_RELEASE_SINCE_VERSION
|
||||||
if (input->seat_version >= WL_KEYBOARD_RELEASE_SINCE_VERSION)
|
if (input->seat_version >= WL_KEYBOARD_RELEASE_SINCE_VERSION)
|
||||||
wl_keyboard_release(input->keyboard);
|
wl_keyboard_release(input->keyboard);
|
||||||
else
|
else
|
||||||
|
#endif
|
||||||
wl_keyboard_destroy(input->keyboard);
|
wl_keyboard_destroy(input->keyboard);
|
||||||
input->keyboard = NULL;
|
input->keyboard = NULL;
|
||||||
}
|
}
|
||||||
@ -720,9 +724,11 @@ static void seat_handle_capabilities(void *data, struct wl_seat *seat, enum wl_s
|
|||||||
wl_touch_set_user_data(input->touch, input);
|
wl_touch_set_user_data(input->touch, input);
|
||||||
wl_touch_add_listener(input->touch, &touch_listener, input);
|
wl_touch_add_listener(input->touch, &touch_listener, input);
|
||||||
} else if (!(caps & WL_SEAT_CAPABILITY_TOUCH) && input->touch) {
|
} else if (!(caps & WL_SEAT_CAPABILITY_TOUCH) && input->touch) {
|
||||||
|
#ifdef WL_TOUCH_RELEASE_SINCE_VERSION
|
||||||
if (input->seat_version >= WL_TOUCH_RELEASE_SINCE_VERSION)
|
if (input->seat_version >= WL_TOUCH_RELEASE_SINCE_VERSION)
|
||||||
wl_touch_release(input->touch);
|
wl_touch_release(input->touch);
|
||||||
else
|
else
|
||||||
|
#endif
|
||||||
wl_touch_destroy(input->touch);
|
wl_touch_destroy(input->touch);
|
||||||
input->touch = NULL;
|
input->touch = NULL;
|
||||||
}
|
}
|
||||||
@ -788,9 +794,11 @@ error_xkb_context:
|
|||||||
|
|
||||||
void UwacSeatDestroy(UwacSeat *s) {
|
void UwacSeatDestroy(UwacSeat *s) {
|
||||||
if (s->seat) {
|
if (s->seat) {
|
||||||
|
#ifdef WL_SEAT_RELEASE_SINCE_VERSION
|
||||||
if (s->seat_version >= WL_SEAT_RELEASE_SINCE_VERSION)
|
if (s->seat_version >= WL_SEAT_RELEASE_SINCE_VERSION)
|
||||||
wl_seat_release(s->seat);
|
wl_seat_release(s->seat);
|
||||||
else
|
else
|
||||||
|
#endif
|
||||||
wl_seat_destroy(s->seat);
|
wl_seat_destroy(s->seat);
|
||||||
}
|
}
|
||||||
s->seat = NULL;
|
s->seat = NULL;
|
||||||
@ -802,23 +810,29 @@ void UwacSeatDestroy(UwacSeat *s) {
|
|||||||
xkb_context_unref(s->xkb_context);
|
xkb_context_unref(s->xkb_context);
|
||||||
|
|
||||||
if (s->pointer) {
|
if (s->pointer) {
|
||||||
|
#ifdef WL_POINTER_RELEASE_SINCE_VERSION
|
||||||
if (s->seat_version >= WL_POINTER_RELEASE_SINCE_VERSION)
|
if (s->seat_version >= WL_POINTER_RELEASE_SINCE_VERSION)
|
||||||
wl_pointer_release(s->pointer);
|
wl_pointer_release(s->pointer);
|
||||||
else
|
else
|
||||||
|
#endif
|
||||||
wl_pointer_destroy(s->pointer);
|
wl_pointer_destroy(s->pointer);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (s->touch) {
|
if (s->touch) {
|
||||||
|
#ifdef WL_TOUCH_RELEASE_SINCE_VERSION
|
||||||
if (s->seat_version >= WL_TOUCH_RELEASE_SINCE_VERSION)
|
if (s->seat_version >= WL_TOUCH_RELEASE_SINCE_VERSION)
|
||||||
wl_touch_release(s->touch);
|
wl_touch_release(s->touch);
|
||||||
else
|
else
|
||||||
|
#endif
|
||||||
wl_touch_destroy(s->touch);
|
wl_touch_destroy(s->touch);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (s->keyboard) {
|
if (s->keyboard) {
|
||||||
|
#ifdef WL_KEYBOARD_RELEASE_SINCE_VERSION
|
||||||
if (s->seat_version >= WL_KEYBOARD_RELEASE_SINCE_VERSION)
|
if (s->seat_version >= WL_KEYBOARD_RELEASE_SINCE_VERSION)
|
||||||
wl_keyboard_release(s->keyboard);
|
wl_keyboard_release(s->keyboard);
|
||||||
else
|
else
|
||||||
|
#endif
|
||||||
wl_keyboard_destroy(s->keyboard);
|
wl_keyboard_destroy(s->keyboard);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user