blob: c9b0ec3615f7a87d7ae2129234745afc9f872be2 [file] [log] [blame]
# 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/ui.gni")
import("//mojo/public/mojo_application.gni")
import("//testing/test.gni")
import("//tools/grit/repack.gni")
component("mus") {
output_name = "ui_views_mus_lib"
sources = [
"aura_init.cc",
"aura_init.h",
"display_converter.cc",
"display_converter.h",
"input_method_mus.cc",
"input_method_mus.h",
"mus_export.h",
"native_widget_mus.cc",
"native_widget_mus.h",
"platform_window_mus.cc",
"platform_window_mus.h",
"screen_mus.cc",
"screen_mus.h",
"screen_mus_delegate.h",
"surface_binding.cc",
"surface_binding.h",
"surface_context_factory.cc",
"surface_context_factory.h",
"window_manager_connection.cc",
"window_manager_connection.h",
"window_manager_constants_converters.cc",
"window_manager_constants_converters.h",
"window_manager_frame_values.cc",
"window_manager_frame_values.h",
"window_tree_host_mus.cc",
"window_tree_host_mus.h",
]
defines = [ "VIEWS_MUS_IMPLEMENTATION" ]
public_deps = [
":resources",
"//components/mus/public/cpp",
"//ui/aura",
]
deps = [
"//base",
"//base:i18n",
"//base/third_party/dynamic_annotations",
"//cc",
"//cc/surfaces",
"//components/bitmap_uploader",
"//components/mus/gles2:lib",
"//components/mus/public/cpp",
"//components/mus/public/interfaces",
"//components/resource_provider/public/cpp",
"//components/resource_provider/public/interfaces",
"//mojo/converters/geometry",
"//mojo/converters/ime",
"//mojo/converters/input_events",
"//mojo/converters/network",
"//mojo/converters/surfaces",
"//mojo/platform_handle:for_component",
"//mojo/public/c/system:for_component",
"//mojo/public/cpp/bindings",
"//mojo/shell/public/cpp",
"//mojo/shell/public/interfaces",
"//skia",
"//third_party/icu",
"//ui/aura",
"//ui/compositor",
"//ui/events",
"//ui/events:events_base",
"//ui/gfx",
"//ui/gfx/geometry",
"//ui/gl",
"//ui/mojo/ime:interfaces_cpp_sources",
"//ui/mojo/init",
"//ui/native_theme",
"//ui/platform_window",
"//ui/views",
"//ui/wm",
]
data_deps = [
"//components/resource_provider",
]
if (is_linux && !is_android) {
deps += [ "//components/font_service/public/cpp" ]
data_deps += [ "//components/font_service" ]
}
}
repack("resources") {
sources = [
"$root_gen_dir/ui/resources/ui_resources_100_percent.pak",
"$root_gen_dir/ui/strings/app_locale_settings_en-US.pak",
"$root_gen_dir/ui/strings/ui_strings_en-US.pak",
"$root_gen_dir/ui/views/resources/views_resources_100_percent.pak",
]
output = "$root_out_dir/views_mus_resources.pak"
deps = [
"//ui/resources",
"//ui/strings",
"//ui/views/resources",
]
}
group("for_mojo_application") {
public_deps = [
":mus",
]
}
group("for_shared_library") {
public_deps = [
":mus",
]
if (!is_component_build) {
deps = [
"//mojo/gles2",
]
}
}
group("tests") {
testonly = true
deps = [
":views_mus_unittests",
]
}
test("views_mus_unittests") {
testonly = true
configs += [ "//build/config:precompiled_headers" ]
# TODO(sky): add more files.
sources = [
"../run_all_unittests.cc",
"../run_all_unittests.h",
"../view_targeter_unittest.cc",
"platform_test_helper_mus.cc",
"run_all_unittests_mus.cc",
]
deps = [
":mus",
"//base",
"//base:i18n",
"//base/test:test_support",
"//cc",
"//mojo/shell/background:lib",
"//mojo/shell/background:main",
"//mojo/shell/background/tests:test_support",
"//mojo/shell/public/cpp:sources",
"//mojo/shell/runner/host:lib",
"//skia",
"//testing/gtest",
"//third_party/icu",
"//ui/accessibility",
"//ui/aura",
"//ui/aura:test_support",
"//ui/base",
"//ui/base:test_support",
"//ui/base/ime",
"//ui/compositor:test_support",
"//ui/events:dom_keycode_converter",
"//ui/events:events_base",
"//ui/events:test_support",
"//ui/events/platform",
"//ui/gfx:test_support",
"//ui/gfx/geometry",
"//ui/gl:test_support",
"//ui/resources",
"//ui/strings",
"//ui/touch_selection",
"//ui/views",
"//ui/views:test_support_internal",
"//ui/wm",
"//url",
]
data_deps = [
"//mash/wm",
"//ui/resources:ui_test_pak",
]
if (is_win) {
deps += [
"//build/win:default_exe_manifest",
"//third_party/iaccessible2",
"//third_party/wtl",
]
libs = [
"imm32.lib",
"oleacc.lib",
"comctl32.lib",
]
}
if (use_x11) {
configs += [
"//build/config/linux:x11",
"//build/config/linux:xext",
]
deps += [
"//ui/events/devices",
"//ui/events/platform/x11",
"//ui/gfx/x",
]
}
}
group("for_component") {
public_deps = [
":mus",
]
deps = [
"//mojo/gles2",
]
}