| # Copyright 2014 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//build/config/features.gni") |
| import("//build/config/jumbo.gni") |
| import("//build/config/linux/pkg_config.gni") |
| import("//build/config/ui.gni") |
| import("//mojo/public/tools/bindings/mojom.gni") |
| import("//services/service_manager/public/service_manifest.gni") |
| import("//testing/libfuzzer/fuzzer_test.gni") |
| import("//testing/test.gni") |
| import("//tools/json_schema_compiler/json_schema_api.gni") |
| import("//ui/base/ui_features.gni") |
| |
| if (is_android) { |
| import("//build/config/android/rules.gni") |
| } |
| |
| mojom("ax_enums_mojo") { |
| sources = [ |
| "ax_enums.mojom", |
| ] |
| |
| public_deps = [ |
| "//mojo/public/mojom/base", |
| "//ui/gfx/geometry/mojo", |
| "//ui/gfx/mojo", |
| ] |
| } |
| |
| jumbo_component("accessibility") { |
| sources = [ |
| "accessibility_switches.cc", |
| "accessibility_switches.h", |
| "ax_action_data.cc", |
| "ax_action_data.h", |
| "ax_action_handler.cc", |
| "ax_action_handler.h", |
| "ax_enum_util.cc", |
| "ax_enum_util.h", |
| "ax_event.cc", |
| "ax_event.h", |
| "ax_event_bundle_sink.h", |
| "ax_event_generator.cc", |
| "ax_event_generator.h", |
| "ax_export.h", |
| "ax_language_info.h", |
| "ax_mode.h", |
| "ax_mode_observer.h", |
| "ax_node.cc", |
| "ax_node.h", |
| "ax_node_data.cc", |
| "ax_node_data.h", |
| "ax_node_position.cc", |
| "ax_node_position.h", |
| "ax_position.h", |
| "ax_range.h", |
| "ax_relative_bounds.cc", |
| "ax_relative_bounds.h", |
| "ax_role_properties.cc", |
| "ax_role_properties.h", |
| "ax_serializable_tree.cc", |
| "ax_serializable_tree.h", |
| "ax_table_info.cc", |
| "ax_table_info.h", |
| "ax_text_utils.cc", |
| "ax_text_utils.h", |
| "ax_tree.cc", |
| "ax_tree.h", |
| "ax_tree_combiner.cc", |
| "ax_tree_combiner.h", |
| "ax_tree_data.cc", |
| "ax_tree_data.h", |
| "ax_tree_id.cc", |
| "ax_tree_id.h", |
| "ax_tree_id_registry.cc", |
| "ax_tree_id_registry.h", |
| "ax_tree_observer.cc", |
| "ax_tree_observer.h", |
| "ax_tree_serializer.cc", |
| "ax_tree_serializer.h", |
| "ax_tree_source.h", |
| "ax_tree_update.h", |
| "platform/ax_android_constants.cc", |
| "platform/ax_android_constants.h", |
| "platform/ax_platform_node.cc", |
| "platform/ax_platform_node.h", |
| "platform/ax_platform_node_base.cc", |
| "platform/ax_platform_node_base.h", |
| "platform/ax_platform_node_delegate.h", |
| "platform/ax_platform_node_delegate_base.cc", |
| "platform/ax_platform_node_delegate_base.h", |
| "platform/ax_platform_node_test_helper.cc", |
| "platform/ax_platform_node_test_helper.h", |
| "platform/ax_unique_id.cc", |
| "platform/ax_unique_id.h", |
| "platform/compute_attributes.cc", |
| "platform/compute_attributes.h", |
| ] |
| |
| if (has_native_accessibility) { |
| sources += [ |
| "platform/ax_platform_node_mac.h", |
| "platform/ax_platform_node_mac.mm", |
| "platform/ax_platform_node_win.cc", |
| "platform/ax_platform_node_win.h", |
| "platform/ax_platform_relation_win.cc", |
| "platform/ax_platform_relation_win.h", |
| "platform/ax_system_caret_win.cc", |
| "platform/ax_system_caret_win.h", |
| ] |
| } |
| |
| defines = [ "ACCESSIBILITY_IMPLEMENTATION" ] |
| |
| public_deps = [ |
| ":ax_enums_mojo", |
| "//base", |
| "//base:i18n", |
| "//ui/base", |
| "//ui/display", |
| "//ui/gfx", |
| "//ui/gfx/geometry", |
| "//ui/strings", |
| ] |
| |
| if (is_win) { |
| public_deps += [ "//third_party/iaccessible2" ] |
| libs = [ "oleacc.lib" ] |
| } |
| |
| if (is_mac) { |
| libs = [ |
| "AppKit.framework", |
| "Foundation.framework", |
| ] |
| } |
| |
| if (use_atk) { |
| sources += [ |
| "platform/atk_util_auralinux.cc", |
| "platform/atk_util_auralinux.h", |
| "platform/atk_util_auralinux_gtk.cc", |
| "platform/ax_platform_atk_hyperlink.cc", |
| "platform/ax_platform_atk_hyperlink.h", |
| "platform/ax_platform_node_auralinux.cc", |
| "platform/ax_platform_node_auralinux.h", |
| ] |
| |
| configs += [ "//build/config/linux/atk" ] |
| |
| if (use_glib) { |
| configs += [ "//build/config/linux:glib" ] |
| } |
| |
| if (use_x11) { |
| sources += [ "platform/atk_util_auralinux_x11.cc" ] |
| |
| configs += [ "//build/config/linux:x11" ] |
| public_deps += [ |
| "//ui/events/x", |
| "//ui/gfx/x", |
| ] |
| } |
| } |
| |
| if (use_aura) { |
| sources += [ |
| "platform/aura_window_properties.cc", |
| "platform/aura_window_properties.h", |
| ] |
| |
| public_deps += [ "//ui/aura" ] |
| } |
| } |
| |
| source_set("ax_assistant") { |
| sources = [ |
| "ax_assistant_structure.cc", |
| "ax_assistant_structure.h", |
| ] |
| deps = [ |
| ":accessibility", |
| ] |
| } |
| |
| service_manifest("manifest") { |
| name = "ax_host_service" |
| source = "ax_host_service_manifest.json" |
| } |
| |
| static_library("test_support") { |
| testonly = true |
| sources = [ |
| "ax_tree_source_checker.h", |
| "tree_generator.cc", |
| "tree_generator.h", |
| ] |
| |
| if (is_win || use_atk) { |
| sources += [ |
| "platform/test_ax_node_wrapper.cc", |
| "platform/test_ax_node_wrapper.h", |
| ] |
| } |
| |
| deps = [ |
| ":accessibility", |
| ] |
| } |
| |
| test("accessibility_unittests") { |
| testonly = true |
| sources = [ |
| "ax_event_generator_unittest.cc", |
| "ax_generated_tree_unittest.cc", |
| "ax_language_info_unittest.cc", |
| "ax_node_data_unittest.cc", |
| "ax_node_position_unittest.cc", |
| "ax_table_info_unittest.cc", |
| "ax_text_utils_unittest.cc", |
| "ax_tree_combiner_unittest.cc", |
| "ax_tree_serializer_unittest.cc", |
| "ax_tree_unittest.cc", |
| "mojom/ax_action_data_mojom_traits_unittest.cc", |
| "mojom/ax_event_mojom_traits_unittest.cc", |
| "mojom/ax_node_data_mojom_traits_unittest.cc", |
| "mojom/ax_relative_bounds_mojom_traits_unittest.cc", |
| "mojom/ax_tree_data_mojom_traits_unittest.cc", |
| "mojom/ax_tree_id_mojom_traits_unittest.cc", |
| "mojom/ax_tree_update_mojom_traits_unittest.cc", |
| "platform/ax_platform_node_unittest.cc", |
| "platform/ax_platform_node_unittest.h", |
| "platform/ax_platform_node_win_unittest.cc", |
| "platform/ax_unique_id_unittest.cc", |
| "run_all_unittests.cc", |
| ] |
| |
| deps = [ |
| ":accessibility", |
| ":ax_enums_mojo", |
| ":test_support", |
| "//base", |
| "//base/test:test_support", |
| "//mojo/core/embedder", |
| "//mojo/core/test:test_support", |
| "//mojo/public/cpp/test_support:test_utils", |
| "//skia", |
| "//testing/gtest", |
| "//ui/accessibility/mojom", |
| "//ui/base", |
| "//ui/gfx", |
| "//ui/gfx:test_support", |
| "//ui/gfx/geometry", |
| ] |
| |
| if (is_win) { |
| deps += [ "//third_party/iaccessible2" ] |
| libs = [ "oleacc.lib" ] |
| } |
| if (use_atk) { |
| sources += [ |
| "platform/atk_util_auralinux_unittest.cc", |
| "platform/ax_platform_node_auralinux_unittest.cc", |
| ] |
| configs += [ "//build/config/linux/atk" ] |
| } |
| } |
| |
| fuzzer_test("ax_tree_fuzzer") { |
| sources = [ |
| "ax_tree_fuzzer.cc", |
| ] |
| |
| deps = [ |
| ":accessibility", |
| ] |
| } |
| |
| fuzzer_test("ax_table_fuzzer") { |
| sources = [ |
| "ax_table_fuzzer.cc", |
| ] |
| |
| deps = [ |
| ":accessibility", |
| ] |
| |
| seed_corpus = "fuzz_corpus" |
| } |