Gets mandoline working on android
[chromium-blink-merge.git] / components / html_viewer / BUILD.gn
blobb09c8c32f3ca8cddff89791b081ca0edf625812a
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/module_args/v8.gni")
6 import("//mojo/mojo_application_package.gni")
7 import("//testing/test.gni")
8 import("//third_party/mojo/src/mojo/public/mojo.gni")
9 import("//third_party/mojo/src/mojo/public/mojo_application.gni")
10 import("//tools/grit/repack.gni")
12 # Repack this here.
13 repack("unified_blink_resources") {
14   sources = [
15     "$root_gen_dir/blink/public/resources/blink_image_resources_100_percent.pak",
16     "$root_gen_dir/blink/public/resources/blink_resources.pak",
17   ]
18   output = "$target_gen_dir/unified_blink_resources.pak"
19   deps = [
20     "//third_party/WebKit/public:image_resources",
21     "//third_party/WebKit/public:resources",
22   ]
25 action("generate_blink_resource_map") {
26   script = "//components/html_viewer/generate_blink_resource_map.py"
27   args = [
28     "--pak-file",
29     rebase_path("$target_gen_dir/unified_blink_resources.pak"),
30     "--header",
31     rebase_path("$target_gen_dir/blink_resource_map.h"),
32     "--cpp",
33     rebase_path("$target_gen_dir/blink_resource_map.cc"),
34   ]
35   outputs = [
36     "$target_gen_dir/blink_resource_map.cc",
37     "$target_gen_dir/blink_resource_map.h",
38   ]
39   deps = [
40     ":unified_blink_resources",
41   ]
42   public_deps = [
43     "//third_party/WebKit/public:image_resources",
44     "//third_party/WebKit/public:resources",
45   ]
48 source_set("lib") {
49   sources = [
50     "$target_gen_dir/blink_resource_map.cc",
51     "$target_gen_dir/blink_resource_map.h",
52     "ax_provider_impl.cc",
53     "ax_provider_impl.h",
54     "blink_basic_type_converters.cc",
55     "blink_basic_type_converters.h",
56     "blink_input_events_type_converters.cc",
57     "blink_input_events_type_converters.h",
58     "blink_platform_impl.cc",
59     "blink_platform_impl.h",
60     "blink_resource_constants.h",
61     "blink_url_request_type_converters.cc",
62     "blink_url_request_type_converters.h",
63     "discardable_memory_allocator.cc",
64     "discardable_memory_allocator.h",
65     "html_document.cc",
66     "html_document.h",
67     "mock_web_blob_registry_impl.cc",
68     "mock_web_blob_registry_impl.h",
69     "touch_handler.cc",
70     "touch_handler.h",
71     "web_clipboard_impl.cc",
72     "web_clipboard_impl.h",
73     "web_cookie_jar_impl.cc",
74     "web_cookie_jar_impl.h",
75     "web_layer_tree_view_impl.cc",
76     "web_layer_tree_view_impl.h",
77     "web_media_player_factory.cc",
78     "web_media_player_factory.h",
79     "web_media_player_factory.h",
80     "web_message_port_channel_impl.cc",
81     "web_message_port_channel_impl.h",
82     "web_mime_registry_impl.cc",
83     "web_mime_registry_impl.h",
84     "web_notification_manager_impl.cc",
85     "web_notification_manager_impl.h",
86     "web_socket_handle_impl.cc",
87     "web_socket_handle_impl.h",
88     "web_storage_namespace_impl.cc",
89     "web_storage_namespace_impl.h",
90     "web_theme_engine_impl.cc",
91     "web_theme_engine_impl.h",
92     "web_url_loader_impl.cc",
93     "web_url_loader_impl.h",
94   ]
96   include_dirs = [ "third_party/WebKit" ]
98   deps = [
99     "//base",
100     "//base/third_party/dynamic_annotations",
101     "//cc",
102     "//cc/blink",
103     "//cc/surfaces",
104     "//components/clipboard/public/interfaces",
105     "//components/gpu/public/interfaces",
106     "//components/mime_util",
107     "//components/scheduler:scheduler",
108     "//components/surfaces/public/interfaces",
109     "//components/webcrypto",
110     "//gin",
111     "//mandoline/services/navigation/public/interfaces",
112     "//media",
113     "//media/blink",
114     "//media/mojo",
115     "//mojo/application",
116     "//mojo/cc",
117     "//mojo/common",
118     "//mojo/converters/surfaces",
119     "//mojo/services/network/public/cpp",
120     "//mojo/services/network/public/interfaces",
121     "//net",
122     "//skia",
123     "//third_party/mojo/src/mojo/public/c/system:for_shared_library",
124     "//third_party/mojo/src/mojo/public/cpp/utility",
125     "//third_party/mojo/src/mojo/public/interfaces/application",
126     "//third_party/mojo_services/src/accessibility/public/interfaces",
127     "//third_party/mojo_services/src/content_handler/public/interfaces",
128     "//ui/mojo/events:interfaces",
129     "//ui/events",
130     "//ui/events:gesture_detection",
131     "//ui/events/blink",
132     "//ui/events/gestures/blink",
133     "//ui/gfx",
134     "//ui/gfx/geometry",
135     "//ui/native_theme",
137     # TODO(sky): we shouldn't be using ui_test_pak.
138     "//ui/resources:ui_test_pak",
139     "//url",
140   ]
142   public_deps = [
143     "//components/view_manager/public/cpp",
144     "//third_party/WebKit/public:blink",
145     "//third_party/mojo/src/mojo/public/cpp/bindings",
146     ":generate_blink_resource_map",
147   ]
149   if (is_win) {
150     sources += [ "html_viewer_version.rc" ]
151   }
153   data_deps = [
154     "//components/clipboard",
155     "//components/native_viewport",
156     "//components/surfaces",
157     "//components/view_manager",
158   ]
161 mojo_application_package("html_viewer") {
162   sources = [
163     "html_viewer.cc",
164     "ui_setup.h",
165     "ui_setup_android.cc",
166     "ui_setup_android.h",
167   ]
168   deps = [
169     ":lib",
170     "//components/resource_provider/public/cpp",
171     "//components/resource_provider/public/interfaces",
172     "//mojo/common",
173     "//mojo/platform_handle",
174     "//third_party/icu:icudata",
175     "//ui/resources:ui_test_pak",
176   ]
177   data_deps = [
178     "//mojo/services/network:network",
179     "//components/resource_provider",
180   ]
181   resources = [
182     "$root_out_dir/icudtl.dat",
183     "$root_out_dir/ui_test.pak",
184   ]
186   if (v8_use_external_startup_data) {
187     resources += [
188       "$root_build_dir/natives_blob.bin",
189       "$root_build_dir/snapshot_blob.bin",
190     ]
191   }
194 test("tests") {
195   output_name = "html_viewer_unittests"
196   sources = [
197     "ax_provider_impl_unittest.cc",
198     "discardable_memory_allocator_unittest.cc",
199   ]
200   deps = [
201     ":lib",
202     "//base/test:run_all_unittests",
203   ]
206 mojo_native_application("apptests") {
207   output_name = "html_viewer_apptests"
208   testonly = true
210   sources = [
211     "ax_provider_apptest.cc",
212   ]
214   deps = [
215     ":lib",
216     ":html_viewer",
217     "//mojo/application:test_support",
218     "//net:test_support",
219     "//testing/gtest",
220   ]