fc0237897167b4cbd2f978e48102c63f97e77344
[platform/framework/web/crosswalk.git] / src / content / child / BUILD.gn
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.
4
5 import("//build/config/crypto.gni")
6 import("//build/config/features.gni")
7 import("//build/config/ui.gni")
8 import("//content/child/child.gni")
9
10 source_set("child") {
11   # Only targets in the content tree can depend directly on this target.
12   visibility = [ "//content/*" ]
13
14   sources = rebase_path(content_child_gypi_values.private_child_sources,
15                         ".", "//content")
16
17   deps = [
18     "//base",
19     "//components/tracing",
20     "//mojo/environment:chromium",
21     "//mojo/public/interfaces/application",
22     "//skia",
23     "//third_party/icu",
24     "//ui/base",
25     "//ui/gfx",
26     "//ui/gfx/geometry",
27     "//url",
28   ]
29
30   if (!use_default_render_theme) {
31     sources -= [
32       "webthemeengine_impl_default.cc",
33       "webthemeengine_impl_default.h",
34     ]
35   }
36
37   if (is_android) {
38     deps += [
39       "//third_party/android_tools:cpu_features",
40     ]
41   }
42
43   if (!enable_plugins) {
44     sources -= [
45       "browser_font_resource_trusted.cc",
46       "npapi/plugin_host.cc",
47       "npapi/plugin_host.h",
48       "npapi/plugin_instance.cc",
49       "npapi/plugin_instance.h",
50       "npapi/plugin_instance_mac.mm",
51       "npapi/plugin_lib.cc",
52       "npapi/plugin_lib.h",
53       "npapi/plugin_stream.cc",
54       "npapi/plugin_stream.h",
55       "npapi/plugin_stream_posix.cc",
56       "npapi/plugin_stream_url.cc",
57       "npapi/plugin_stream_url.h",
58       "npapi/plugin_stream_win.cc",
59       "npapi/plugin_string_stream.cc",
60       "npapi/plugin_string_stream.h",
61       "npapi/plugin_url_fetcher.cc",
62       "npapi/plugin_url_fetcher.h",
63       "npapi/plugin_web_event_converter_mac.h",
64       "npapi/plugin_web_event_converter_mac.mm",
65       "npapi/webplugin.h",
66       "npapi/webplugin_accelerated_surface_mac.h",
67       "npapi/webplugin_delegate.h",
68       "npapi/webplugin_delegate_impl.cc",
69       "npapi/webplugin_delegate_impl.h",
70       "npapi/webplugin_delegate_impl_android.cc",
71       "npapi/webplugin_delegate_impl_aura.cc",
72       "npapi/webplugin_delegate_impl_mac.mm",
73       "npapi/webplugin_delegate_impl_win.cc",
74       "npapi/webplugin_ime_win.cc",
75       "npapi/webplugin_ime_win.h",
76       "npapi/webplugin_resource_client.h",
77     ]
78   }
79
80   configs += [
81     "//content:content_implementation",
82   ]
83
84   if (is_ios) {
85     # iOS only needs a small portion of content; exclude all the
86     # implementation, and re-include what is used.
87     sources = []
88   } else {
89     deps += [
90       "//content/app/strings",
91       "//crypto:platform",
92       "//third_party/WebKit/public:blink",
93       "//third_party/WebKit/public:resources",
94       "//third_party/npapi",
95       "//webkit/child",
96       "//webkit/common",
97       "//webkit/glue/resources",
98     ]
99   }
100
101   if (use_aura && is_mac) {
102     # This file is already excluded on non-Mac.
103     sources -= [ "npapi/webplugin_delegate_impl_mac.mm" ]
104   }
105
106   if (is_win || !use_aura) {
107     sources -= [ "npapi/webplugin_delegate_impl_aura.cc" ]
108   }
109
110   if (!use_openssl) {
111     sources += rebase_path(content_child_gypi_values.webcrypto_nss_sources,
112                            ".", "//content")
113   } else {
114     sources += rebase_path(content_child_gypi_values.webcrypto_openssl_sources,
115                            ".", "//content")
116   }
117 }