1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
5 import("//build/config/features.gni")
6 import("//build/config/ui.gni")
7 import("//chrome/chrome_tests.gni")
8 import("//media/media_options.gni")
9 import("//third_party/protobuf/proto_library.gni")
11 gypi_values = exec_script("//build/gypi_to_gn.py",
12 [ rebase_path("../../chrome_browser_chromeos.gypi") ],
14 [ "../../chrome_browser_chromeos.gypi" ])
16 source_set("chromeos") {
17 assert(enable_extensions, "ChromeOS Chrome has to be built with extensions")
20 "//build/config/compiler:wexit_time_destructors",
21 "//build/config/linux:fontconfig",
27 "//chrome/app/resources:platform_locale_settings",
28 "//chrome/app/theme:theme_resources",
29 "//chrome:extra_resources",
32 "//components/wallpaper",
33 "//content/app/resources",
34 "//ui/chromeos/resources",
35 "//ui/chromeos/strings",
41 # TODO(tbarzic): Cleanup this list.
43 ":device_policy_proto",
45 "//ash:ash_with_content",
48 "//components/session_manager/core",
49 "//components/user_manager",
50 "//components/wifi_sync",
51 "//chrome/browser/devtools",
52 "//chrome/browser/extensions",
53 "//chrome/browser/net:encrypted_cert_logger_proto",
54 "//chrome/browser/safe_browsing:chunk_proto",
55 "//chrome/browser/safe_browsing:metadata_proto",
56 "//chrome/browser/safe_browsing:report_proto",
57 "//chrome/browser/ssl:cert_logger_proto",
59 "//chrome/common/extensions/api",
60 "//chrome/common/extensions/api:api_registration",
61 "//chrome/common/net",
62 "//chrome/installer/util",
64 "//chromeos/ime:gencode",
65 "//chromeos:cryptohome_proto",
66 "//chromeos:cryptohome_signkey_proto",
67 "//chromeos:power_manager_proto",
69 "//components/ownership",
70 "//components/pairing",
71 "//components/policy",
73 # This depends directly on the variations target, rather than just
74 # transitively via the common target because the proto sources need to
75 # be generated before code in this target can start building.
76 "//components/strings",
77 "//components/variations",
78 "//content/public/browser",
79 "//content/public/common",
85 "//media/mojo/interfaces",
87 "//ppapi/proxy:ipc", # For PpapiMsg_LoadPlugin
89 # TODO: care about enable_basic_printing and enable_print_preview.
95 "//third_party/adobe/flash:flapper_version_h",
96 "//third_party/cacheinvalidation",
98 "//third_party/leveldatabase",
99 "//third_party/libevent",
100 "//third_party/libjingle",
101 "//third_party/libusb",
102 "//third_party/protobuf:protobuf_lite",
103 "//third_party/protobuf:protoc($host_toolchain)",
105 "//third_party/zlib",
109 "//ui/chromeos:ui_chromeos",
112 "//ui/events/devices",
113 "//ui/events/platform",
114 "//ui/events:dom_keycode_converter",
116 "//ui/message_center",
119 "//ui/views/controls/webview",
127 sources = rebase_path(gypi_values.browser_chromeos_sources, ".", "//chrome") +
128 rebase_path(gypi_values.browser_chromeos_extension_sources,
132 configs += [ "//build/config/linux:x11" ]
133 deps += [ "//ui/events/devices" ]
135 "system/input_device_settings_impl_ozone.cc",
136 "system_logs/touch_log_source_ozone.cc",
139 assert(use_ozone, "Either use_x11 or use_ozone has to be specified.")
140 deps += [ "//ui/ozone" ]
144 "events/system_key_event_listener.cc",
145 "events/system_key_event_listener.h",
146 "events/xinput_hierarchy_changed_event_listener.cc",
147 "events/xinput_hierarchy_changed_event_listener.h",
148 "system/input_device_settings_impl_x11.cc",
149 "system_logs/touch_log_source_x11.cc",
154 defines += [ "USE_CRAS" ]
157 if (ui_compositor_image_transport) {
158 deps += [ "//ui/gl" ]
162 source_set("unit_tests") {
165 sources = rebase_path(
166 chrome_tests_unit_gypi_values.chrome_unit_tests_chromeos_sources,
174 ":attestation_proto",
175 ":device_policy_proto",
177 "//components/drive",
178 "//components/policy",
179 "//components/invalidation/public",
180 "//components/resources",
187 "//third_party/leveldatabase",
188 "//third_party/mojo/src/mojo/public/cpp/system:system",
189 "//ui/chromeos/resources",
193 proto_library("device_policy_proto") {
195 "policy/proto/chrome_device_policy.proto",
196 "policy/proto/install_attributes.proto",
200 proto_library("attestation_proto") {
202 "attestation/attestation_key_payload.proto",
203 "attestation/attestation_signed_data.proto",