| # Copyright 2020 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import( |
| "//components/exo/wayland/compatibility_test/wayland_protocol_codegen.gni") |
| |
| # This is the canonical list of all protocols which are potentially exposed by the server |
| server_wayland_protocols = [ |
| "//components/exo/wayland/protocol/aura-shell.xml", |
| "//third_party/wayland/src/protocol/wayland.xml", |
| "//third_party/wayland-protocols/src/stable/presentation-time/presentation-time.xml", |
| "//third_party/wayland-protocols/src/stable/viewporter/viewporter.xml", |
| "//third_party/wayland-protocols/src/stable/xdg-shell/xdg-shell.xml", |
| "//third_party/wayland-protocols/src/staging/fractional-scale/fractional-scale-v1.xml", |
| "//third_party/wayland-protocols/src/unstable/fullscreen-shell/fullscreen-shell-unstable-v1.xml", |
| "//third_party/wayland-protocols/src/unstable/input-timestamps/input-timestamps-unstable-v1.xml", |
| "//third_party/wayland-protocols/src/unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml", |
| "//third_party/wayland-protocols/src/unstable/linux-explicit-synchronization/linux-explicit-synchronization-unstable-v1.xml", |
| "//third_party/wayland-protocols/src/unstable/pointer-constraints/pointer-constraints-unstable-v1.xml", |
| "//third_party/wayland-protocols/src/unstable/pointer-gestures/pointer-gestures-unstable-v1.xml", |
| "//third_party/wayland-protocols/src/unstable/relative-pointer/relative-pointer-unstable-v1.xml", |
| "//third_party/wayland-protocols/src/unstable/text-input/text-input-unstable-v1.xml", |
| "//third_party/wayland-protocols/unstable/alpha-compositing/alpha-compositing-unstable-v1.xml", |
| "//third_party/wayland-protocols/unstable/cursor-shapes/cursor-shapes-unstable-v1.xml", |
| "//third_party/wayland-protocols/unstable/gaming-input/gaming-input-unstable-v2.xml", |
| "//third_party/wayland-protocols/unstable/keyboard/keyboard-configuration-unstable-v1.xml", |
| "//third_party/wayland-protocols/unstable/keyboard/keyboard-extension-unstable-v1.xml", |
| "//third_party/wayland-protocols/unstable/notification-shell/notification-shell-unstable-v1.xml", |
| "//third_party/wayland-protocols/unstable/remote-shell/remote-shell-unstable-v1.xml", |
| "//third_party/wayland-protocols/unstable/remote-shell/remote-shell-unstable-v2.xml", |
| "//third_party/wayland-protocols/unstable/secure-output/secure-output-unstable-v1.xml", |
| "//third_party/wayland-protocols/unstable/stylus/stylus-unstable-v2.xml", |
| "//third_party/wayland-protocols/unstable/stylus-tools/stylus-tools-unstable-v1.xml", |
| "//third_party/wayland-protocols/unstable/vsync-feedback/vsync-feedback-unstable-v1.xml", |
| ] |
| |
| wayland_protocol_codegen("generated_client_helper_headers") { |
| template = "//components/exo/wayland/compatibility_test/template_client_helpers.h.tmpl" |
| sources = server_wayland_protocols |
| output_pattern = |
| "$target_gen_dir/generated-{{source_name_part}}-client-helpers.h" |
| } |
| |
| wayland_protocol_codegen("generated_client_helper_impl") { |
| template = "//components/exo/wayland/compatibility_test/template_client_helpers.cc.tmpl" |
| sources = server_wayland_protocols |
| output_pattern = |
| "$target_gen_dir/generated-{{source_name_part}}-client-helpers.cc" |
| } |
| |
| wayland_protocol_codegen("generated_client_event_receiver_version_tests") { |
| testonly = true |
| reduce = true |
| template = "//components/exo/wayland/compatibility_test/template_client_event_receiver_version_tests.cc.tmpl" |
| sources = server_wayland_protocols |
| output_pattern = |
| "$target_gen_dir/all_generated_client_event_receiver_version_tests.cc" |
| } |
| |
| source_set("compatibility_test") { |
| testonly = true |
| |
| sources = get_target_outputs(":generated_client_helper_impl") |
| sources += |
| get_target_outputs(":generated_client_event_receiver_version_tests") |
| |
| deps = [ |
| ":generated_client_event_receiver_version_tests", |
| ":generated_client_helper_headers", |
| ":generated_client_helper_impl", |
| "//base", |
| ] |
| |
| public_deps = [ |
| "//components/exo/wayland/protocol:aura_shell_protocol", |
| "//testing/gmock", |
| "//testing/gtest", |
| "//third_party/wayland:wayland_client", |
| "//third_party/wayland-protocols:alpha_compositing_protocol", |
| "//third_party/wayland-protocols:cursor_shapes_protocol", |
| "//third_party/wayland-protocols:fractional_scale_protocol", |
| "//third_party/wayland-protocols:fullscreen_shell_protocol", |
| "//third_party/wayland-protocols:gaming_input_protocol", |
| "//third_party/wayland-protocols:input_timestamps_protocol", |
| "//third_party/wayland-protocols:keyboard_configuration_protocol", |
| "//third_party/wayland-protocols:keyboard_extension_protocol", |
| "//third_party/wayland-protocols:linux_dmabuf_protocol", |
| "//third_party/wayland-protocols:linux_explicit_synchronization_protocol", |
| "//third_party/wayland-protocols:notification_shell_protocol", |
| "//third_party/wayland-protocols:pointer_constraints_protocol", |
| "//third_party/wayland-protocols:pointer_gestures_protocol", |
| "//third_party/wayland-protocols:presentation_time_protocol", |
| "//third_party/wayland-protocols:relative_pointer_protocol", |
| "//third_party/wayland-protocols:remote_shell_protocol", |
| "//third_party/wayland-protocols:secure_output_protocol", |
| "//third_party/wayland-protocols:stylus_protocol", |
| "//third_party/wayland-protocols:stylus_tools_protocol", |
| "//third_party/wayland-protocols:text_input_protocol", |
| "//third_party/wayland-protocols:viewporter_protocol", |
| "//third_party/wayland-protocols:vsync_feedback_protocol", |
| "//third_party/wayland-protocols:xdg_shell_protocol", |
| ] |
| } |