Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(558)

Side by Side Diff: content/common/BUILD.gn

Issue 293963007: Make content/common compile on Linux GN build. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « BUILD.gn ('k') | content/public/common/BUILD.gn » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2014 The Chromium Authors. All rights reserved. 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 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 # TODO(brettw) this file is a work in progress, it is not currently hooked up 5 # TODO(brettw) this file is a work in progress, it is not currently hooked up
6 # to the build, but currently represents the state of content/common's deps. 6 # to the build, but currently represents the state of content/common's deps.
7 7
8 import("//build/config/features.gni")
9 import("//build/config/ui.gni")
8 import("//content/common/common.gni") 10 import("//content/common/common.gni")
9 11
10 source_set("common") { 12 source_set("common") {
11 # Only targets in the content tree can depend directly on this target. 13 # Only targets in the content tree can depend directly on this target.
12 visibility = [ "//content/*" ] 14 visibility = [ "//content/*" ]
13 15
14 sources = rebase_path(content_common_gypi_values.private_common_sources, 16 sources = rebase_path(content_common_gypi_values.private_common_sources,
15 ".", "//content") 17 ".", "//content")
16 18
17 forward_dependent_configs_from = [ 19 forward_dependent_configs_from = [
18 # TODO(GYP) convert these dependencies. 20 # TODO(GYP) convert these dependencies.
19 #'../third_party/WebKit/public/blink_headers.gyp:blink_headers', 21 #'../third_party/WebKit/public/blink_headers.gyp:blink_headers',
20 ] 22 ]
21 23
24 configs += [ ":libjingle_stub_config" ]
25
22 deps = [ 26 deps = [
23 "//base", 27 "//base",
28 "//build/util:webkit_version",
24 "//components/tracing", 29 "//components/tracing",
25 "//gpu/command_buffer/common", 30 "//gpu/command_buffer/common",
26 "//net", 31 "//net",
27 "//skia", 32 "//skia",
28 "//third_party/icu", 33 "//third_party/icu",
29 "//ui/accessibility", 34 "//ui/accessibility",
30 "//ui/base:ui_base", 35 "//ui/base:ui_base",
31 "//ui/gfx", 36 "//ui/gfx",
32 "//ui/gfx/geometry", 37 "//ui/gfx/geometry",
33 "//url", 38 "//url",
34 # TODO(GYP) convert these dependencies. 39 # TODO(GYP) convert these dependencies.
35 #'../third_party/WebKit/public/blink_headers.gyp:blink_headers', 40 #'../third_party/WebKit/public/blink_headers.gyp:blink_headers',
36 #'../third_party/libjingle/libjingle.gyp:libjingle', 41 #'../third_party/libjingle/libjingle.gyp:libjingle',
37 #'../ui/shell_dialogs/shell_dialogs.gyp:shell_dialogs', 42 #'../ui/shell_dialogs/shell_dialogs.gyp:shell_dialogs',
38 ] 43 ]
44
45 if (!is_ios) {
46 deps += [
47 "//ipc",
48 "//gpu/command_buffer/client:gles2_c_lib",
49 "//gpu/command_buffer/client:gles2_implementation",
50 "//ui/gl",
51 #'../cc/cc.gyp:cc',
52 #'../gpu/gpu.gyp:command_buffer_service',
53 # TODO: the dependency on gl_in_process_context should be decoupled from
54 # content and moved to android_webview. See crbug.com/365797.
55 #'../gpu/gpu.gyp:gl_in_process_context',
56 #'../gpu/gpu.gyp:gpu_ipc',
57 #'../gpu/skia_bindings/skia_bindings.gyp:gpu_skia_bindings',
58 #'../media/media.gyp:media',
59 #'../media/media.gyp:shared_memory_support',
60 #'../mojo/mojo.gyp:mojo_environment_chromium',
61 #'../mojo/mojo.gyp:mojo_system_impl',
62 #'../third_party/WebKit/public/blink.gyp:blink',
63 #'../webkit/common/gpu/webkit_gpu.gyp:webkit_gpu',
64 #'../webkit/common/webkit_common.gyp:webkit_common',
65 #'../webkit/storage_browser.gyp:webkit_storage_browser',
66 #'../webkit/storage_common.gyp:webkit_storage_common',
67 ]
68 }
69
70 include_dirs = []
71 defines = [ "CONTENT_IMPLEMENTATION" ]
72 libs = []
73 ldflags = []
74
75 if (is_android && use_seccomp_bpf) {
76 set_sources_assignment_filter([])
77 sources += [
78 "sandbox_linux/sandbox_bpf_base_policy_linux.cc",
79 "sandbox_linux/sandbox_bpf_base_policy_linux.h",
80 ]
81 set_sources_assignment_filter(sources_assignment_filter)
82 }
83
84 if (is_mac) {
85 sources += [
86 "gpu/client/gpu_memory_buffer_impl_io_surface.cc",
87 "gpu/client/gpu_memory_buffer_impl_io_surface.h",
88 ]
89 sources -= [
90 "plugin_list_posix.cc",
91 ]
92
93 if (use_aura) {
94 sources -= [ "cursors/webcursor_mac.mm" ]
scottmg 2014/05/21 00:30:33 this seems like it's in the wrong place because ma
brettw 2014/05/21 01:35:18 The GYP code for this that I copied was just buste
95 }
96
97 # TODO(GYP) enable when converted to GN.
98 #deps += [
99 # "//webkit:webkit_resources",
100 #]
101 libs += [ "QuartzCore.framework" ]
102 }
103
104 if (is_android) {
105 sources += [
106 "gpu/client/gpu_memory_buffer_impl_surface_texture.cc",
107 "gpu/client/gpu_memory_buffer_impl_surface_texture.h",
108 ]
109
110 # TODO(GYP) enable when these targets are converted.
111 #deps += [
112 # "//content:content_jni_headers",
113 # "//content:common_aidl",
114 #]
115
116 libs += [ "android" ]
117 }
118
119 if (is_ios) {
120 sources -= [ "user_agent.cc" ]
121 assert(false, "Need to add lots of conditions here")
122 }
123
124 if (!use_ozone) {
125 sources -= [
126 "cursors/webcursor_ozone.cc",
127 "font_list_ozone.cc",
128 ]
129 }
130
131 if (!use_aura || !use_x11) {
132 sources -= [ "cursors/webcursor_aurax11.cc" ]
133 }
134
135 if (use_pango) {
136 configs += [ "//build/config/linux:pangocairo" ]
137 } else {
138 sources -= [
139 "font_list_pango.cc",
scottmg 2014/05/21 00:30:33 the gyp excludes font_list_ozone, not pango?
brettw 2014/05/21 01:35:18 _pango is implicit in GYP, but I didn't think its
scottmg 2014/05/21 02:42:33 but it removes font_list_ozone.cc if use_pango==1
brettw 2014/05/21 17:09:09 I see, I think you're right. I'll fix it.
140 ]
141 }
142
143 if (use_x11) {
144 include_dirs += [ "//third_party/khronos" ]
145 configs += [ "//build/config/linux:xcomposite" ]
146
147 if (cpu_arch != "arm" || !is_chromos) {
148 sources +=[
149 "gpu/x_util.cc",
150 "gpu/x_util.h",
151 ]
152 }
153 }
154
155 if (enable_plugins) {
156 deps += [
157 # TODO(GYP) enable once supported in the GN build.
158 #"//ppapi:shared",
159 ]
160 } else {
161 sources -= [
162 "pepper_plugin_list.cc",
163 "pepper_plugin_list.h",
164 "sandbox_util.cc",
165 ]
166 }
167
168 if (is_android) {
169 sources += [
170 "gpu/media/android_video_decode_accelerator.cc",
171 "gpu/media/android_video_decode_accelerator.h",
172 ]
173 deps += [
174 # TODO(GYP) enable once supported in the GN build.
175 #"//media",
176 ]
177
178 if (enable_webrtc) {
179 deps += [ "//third_party/libyuv" ]
180 }
181 }
182
183 if (is_chromeos && use_x11) {
184 if (cpu_arch == "arm") {
185 sources += [
186 "gpu/media/exynos_v4l2_video_device.cc",
187 "gpu/media/exynos_v4l2_video_device.h",
188 "gpu/media/tegra_v4l2_video_device.cc",
189 "gpu/media/tegra_v4l2_video_device.h",
190 "gpu/media/v4l2_image_processor.cc",
191 "gpu/media/v4l2_image_processor.h",
192 "gpu/media/v4l2_video_decode_accelerator.cc",
193 "gpu/media/v4l2_video_decode_accelerator.h",
194 "gpu/media/v4l2_video_device.cc",
195 "gpu/media/v4l2_video_device.h",
196 "gpu/media/v4l2_video_encode_accelerator.cc",
197 "gpu/media/v4l2_video_encode_accelerator.h",
198 ]
199 # TODO(GYP) enable once supported in the GN build.
200 #deps += [ "//media" ]
201 libs = [ "EGL", "GLESv2" ]
202 } else { # !arm
203 sources += [
204 "gpu/media/h264_dpb.cc",
205 "gpu/media/h264_dpb.h",
206 "gpu/media/va_surface.h",
207 "gpu/media/vaapi_h264_decoder.cc",
208 "gpu/media/vaapi_h264_decoder.h",
209 "gpu/media/vaapi_video_decode_accelerator.cc",
210 "gpu/media/vaapi_video_decode_accelerator.h",
211 "gpu/media/vaapi_wrapper.cc",
212 "gpu/media/vaapi_wrapper.h",
213 ]
214 assert(false, "Implement generate_stubs for libva")
215 }
216 }
217
218 if (is_win) {
219 sources += [
220 "gpu/media/dxva_video_decode_accelerator.cc",
221 "gpu/media/dxva_video_decode_accelerator.h",
222 ]
223 include_dirs += [ "//third_party/khronos" ]
224 deps += [
225 # TODO(GYP) enable once supported in the GN build.
226 #"//media",
227 "//ui/gl",
228 ]
229
230 # TODO(GYP): extract_xinput action.
231 }
232
233 if (!is_win || !use_aura) {
234 sources -= [ "cursors/webcursor_aurawin.cc" ]
235 }
236 if (!use_aura || !use_x11) {
237 sources -= [ "cursors/webcursor_aurax11.cc" ]
238 }
239
240 if (use_seccomp_bpf) {
241 defines += [ "USE_SECCOMP_BPF" ]
242 } else {
243 if (is_linux) {
244 sources -= [
245 "sandbox_linux/bpf_cros_arm_gpu_policy_linux.cc",
246 "sandbox_linux/bpf_cros_arm_gpu_policy_linux.h",
247 "sandbox_linux/bpf_gpu_policy_linux.cc",
248 "sandbox_linux/bpf_gpu_policy_linux.h",
249 "sandbox_linux/bpf_ppapi_policy_linux.cc",
250 "sandbox_linux/bpf_ppapi_policy_linux.h",
251 "sandbox_linux/bpf_renderer_policy_linux.cc",
252 "sandbox_linux/bpf_renderer_policy_linux.h",
253 "sandbox_linux/sandbox_bpf_base_policy_linux.cc",
254 "sandbox_linux/sandbox_bpf_base_policy_linux.h",
255 ]
256 }
257 if (is_android) {
258 sources -= [
259 "sandbox_linux/android/sandbox_bpf_base_policy_android.cc",
260 "sandbox_linux/android/sandbox_bpf_base_policy_android.h",
261 ]
262 }
263 }
39 } 264 }
265
266 # TODO(brettw) remove this and add a proper dependency on libjingle once that
267 # target has been converted to GN. This config sets up the include directories
268 # so content/common can compile in the meantime.
269 config("libjingle_stub_config") {
270 include_dirs = [
271 "//third_party/libjingle/overrides",
272 "//third_party/libjingle/source",
273 "//third_party",
274 "//third_party/libyuv/include",
275 "//third_party/usrsctp",
276 "//third_party/webrtc",
277 ]
278
279 defines = [
280 "FEATURE_ENABLE_SSL",
281 "FEATURE_ENABLE_VOICEMAIL",
282 "EXPAT_RELATIVE_PATH",
283 "GTEST_RELATIVE_PATH",
284 "NO_MAIN_THREAD_WRAPPING",
285 "NO_SOUND_SYSTEM",
286 ]
287
288 if (is_mac) {
289 defines += [ "OSX" ]
290 } else if (is_linux) {
291 defines += [ "LINUX" ]
292 } else if (is_android) {
293 defines += [ "ANDROID" ]
294 } else if (is_win) {
295 libs = [ "secur32.lib", "crypt32.lib", "iphlpapi.lib" ]
296 }
297
298 if (is_posix) {
299 defines += [ "POSIX" ]
300 }
301 if (is_chromeos) {
302 defines += [ "CHROMEOS" ]
303 }
304 }
305
OLDNEW
« no previous file with comments | « BUILD.gn ('k') | content/public/common/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698