Fix build break
[chromium-blink-merge.git] / content / content.gyp
blob6f7104fca1ea9c1d8307803857a6b45cbcf6b98d
1 # Copyright (c) 2012 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.
6   'variables': {
7     'chromium_code': 1,  # Use higher warning level.
8     'directxsdk_exists': '<!(python <(DEPTH)/build/dir_exists.py ../third_party/directxsdk)',
9     'conditions': [
10       ['inside_chromium_build==0', {
11         'webkit_src_dir': '../../../..',
12       },{
13         'webkit_src_dir': '../third_party/WebKit',
14       }],
15     ],
16   },
17   'target_defaults': {
18     'defines': ['CONTENT_IMPLEMENTATION'],
19     'conditions': [
20       ['inside_chromium_build==0', {
21         'dependencies': [
22           '../webkit/support/setup_third_party.gyp:third_party_headers',
23         ],
24       }],
25       # TODO(jschuh): Remove this after crbug.com/173851 gets fixed.
26       ['OS=="win" and target_arch=="x64"', {
27         'msvs_settings': {
28           'VCCLCompilerTool': {
29             'AdditionalOptions': ['/bigobj'],
30           },
31         },
32       }],
33     ],
34   },
35   'conditions': [
36     ['inside_chromium_build==1', {
37       'includes': [
38         'content_tests.gypi',
39       ],
40     }],
41     ['OS != "ios"', {
42       'includes': [
43         '../build/win_precompile.gypi',
44         'content_shell.gypi',
45       ],
46     }],
47     # In component mode, we build all of content as a single DLL.
48     # However, in the static mode, we need to build content as multiple
49     # targets in order to prevent dependencies from getting introduced
50     # upstream unnecessarily (e.g., content_renderer depends on allocator
51     # and chrome_exe depends on content_common but we don't want
52     # chrome_exe to have to depend on allocator).
53     ['component=="static_library"', {
54       'target_defines': [
55         'COMPILE_CONTENT_STATICALLY',
56       ],
57       'targets': [
58         {
59           'target_name': 'content',
60           'type': 'none',
61           'dependencies': [
62             'content_app',
63             'content_browser',
64             'content_common',
65           ],
66           'conditions': [
67             ['OS != "ios"', {
68               'dependencies': [
69                 'content_gpu',
70                 'content_plugin',
71                 'content_ppapi_plugin',
72                 'content_renderer',
73                 'content_utility',
74                 'content_worker',
75               ],
76             }],
77           ],
78         },
79         {
80           'target_name': 'content_app',
81           'type': 'static_library',
82           'variables': { 'enable_wexit_time_destructors': 1, },
83           'includes': [
84             'content_app.gypi',
85           ],
86           'dependencies': [
87             'content_common',
88           ],
89         },
90         {
91           'target_name': 'content_browser',
92           'type': 'static_library',
93           'variables': { 'enable_wexit_time_destructors': 1, },
94           'includes': [
95             'content_browser.gypi',
96           ],
97           'dependencies': [
98             'content_common',
99             'content_resources.gyp:content_resources',
100           ],
101           'conditions': [
102             ['OS != "ios"', {
103               'dependencies': [
104                 'content_gpu',
105                 'content_renderer',
106               ],
107             }],
108           ],
109         },
110         {
111           'target_name': 'content_common',
112           'type': 'static_library',
113           'variables': { 'enable_wexit_time_destructors': 1, },
114           'includes': [
115             'content_common.gypi',
116           ],
117           'conditions': [
118             ['OS != "ios"', {
119               'dependencies': [
120                 'content_resources.gyp:content_resources',
121               ],
122             }],
123           ],
124           # Disable c4267 warnings until we fix size_t to int truncations.
125           'msvs_disabled_warnings': [ 4267, ],
126         },
127       ],
128       'conditions': [
129         ['OS != "ios"', {
130           'targets': [
131             {
132               'target_name': 'content_gpu',
133               'type': 'static_library',
134               'variables': { 'enable_wexit_time_destructors': 1, },
135               'includes': [
136                 'content_gpu.gypi',
137               ],
138               'dependencies': [
139                 'content_common',
140               ],
141             },
142             {
143               'target_name': 'content_plugin',
144               'type': 'static_library',
145               'variables': { 'enable_wexit_time_destructors': 1, },
146               'includes': [
147                 'content_plugin.gypi',
148               ],
149               'dependencies': [
150                 'content_common',
151               ],
152             },
153             {
154               'target_name': 'content_ppapi_plugin',
155               'type': 'static_library',
156               'variables': { 'enable_wexit_time_destructors': 1, },
157               'includes': [
158                 'content_ppapi_plugin.gypi',
159               ],
160               # Disable c4267 warnings until we fix size_t to int truncations.
161               'msvs_disabled_warnings': [ 4267, ],
162             },
163             {
164               'target_name': 'content_renderer',
165               'type': 'static_library',
166               'variables': { 'enable_wexit_time_destructors': 1, },
167               'includes': [
168                 'content_renderer.gypi',
169               ],
170               'dependencies': [
171                 'content_common',
172                 'content_resources.gyp:content_resources',
173               ],
174             },
175             {
176               'target_name': 'content_utility',
177               'type': 'static_library',
178               'variables': { 'enable_wexit_time_destructors': 1, },
179               'includes': [
180                 'content_utility.gypi',
181               ],
182               'dependencies': [
183                 'content_common',
184               ],
185             },
186             {
187               'target_name': 'content_worker',
188               'type': 'static_library',
189               'variables': { 'enable_wexit_time_destructors': 1, },
190               'includes': [
191                 'content_worker.gypi',
192               ],
193               'dependencies': [
194                 'content_common',
195               ],
196             },
197           ],
198         }],
199       ],
200     },
201     {  # component != static_library
202       'targets': [
203         {
204           'target_name': 'content',
205           'type': 'shared_library',
206           'variables': { 'enable_wexit_time_destructors': 1, },
207           'dependencies': [
208            'content_resources.gyp:content_resources',
209           ],
210           'conditions': [
211             ['OS=="mac"', {
212               'dependencies': [
213                 '<(DEPTH)/third_party/mach_override/mach_override.gyp:mach_override',
214               ],
215             }],
216           ],
217           'includes': [
218             'content_app.gypi',
219             'content_browser.gypi',
220             'content_common.gypi',
221             'content_gpu.gypi',
222             'content_plugin.gypi',
223             'content_ppapi_plugin.gypi',
224             'content_renderer.gypi',
225             'content_utility.gypi',
226             'content_worker.gypi',
227           ],
228           'msvs_settings': {
229             'VCLinkerTool': {
230               'conditions': [
231                 ['incremental_chrome_dll==1', {
232                   'UseLibraryDependencyInputs': "true",
233                 }],
234               ],
235             },
236           },
237         },
238         {
239           'target_name': 'content_app',
240           'type': 'none',
241           'dependencies': ['content', 'content_browser'],
242         },
243         {
244           'target_name': 'content_browser',
245           'type': 'none',
246           'dependencies': ['content'],
247         },
248         {
249           'target_name': 'content_common',
250           'type': 'none',
251           'dependencies': ['content', 'content_resources.gyp:content_resources'],
252           # Disable c4267 warnings until we fix size_t to int truncations.
253           'msvs_disabled_warnings': [ 4267, ],
254         },
255         {
256           'target_name': 'content_gpu',
257           'type': 'none',
258           'dependencies': ['content'],
259         },
260         {
261           'target_name': 'content_plugin',
262           'type': 'none',
263           'dependencies': ['content'],
264         },
265         {
266           'target_name': 'content_ppapi_plugin',
267           'type': 'none',
268           'dependencies': ['content'],
269           # Disable c4267 warnings until we fix size_t to int truncations.
270           'msvs_disabled_warnings': [ 4267, ],
271         },
272         {
273           'target_name': 'content_renderer',
274           'type': 'none',
275           'dependencies': ['content'],
276         },
277         {
278           'target_name': 'content_utility',
279           'type': 'none',
280           'dependencies': ['content'],
281         },
282         {
283           'target_name': 'content_worker',
284           'type': 'none',
285           'dependencies': ['content'],
286         },
287       ],
288     }],
289     ['OS == "android"', {
290       'targets': [
291         {
292           'target_name': 'common_aidl',
293           'type': 'none',
294           'variables': {
295             'aidl_interface_file': 'public/android/java/src/org/chromium/content/common/common.aidl',
296           },
297           'sources': [
298             'public/android/java/src/org/chromium/content/common/IChildProcessCallback.aidl',
299             'public/android/java/src/org/chromium/content/common/IChildProcessService.aidl',
300           ],
301           'includes': [ '../build/java_aidl.gypi' ],
302         },
303         {
304           'target_name': 'content_native_libraries_gen',
305           'type': 'none',
306           'sources': [
307             'public/android/java/templates/NativeLibraries.template',
308           ],
309           'variables': {
310             'package_name': 'org/chromium/content/app',
311             'include_path': 'public/android/java/templates',
312             'template_deps': [
313               'public/android/java/templates/native_libraries_array.h'
314             ],
315           },
316           'includes': [ '../build/android/java_cpp_template.gypi' ],
317         },
318         {
319           'target_name': 'content_java',
320           'type': 'none',
321           'dependencies': [
322             '../base/base.gyp:base',
323             '../media/media.gyp:media_java',
324             '../net/net.gyp:net',
325             '../ui/ui.gyp:ui_java',
326             'common_aidl',
327             'content_common',
328             'page_transition_types_java',
329             'result_codes_java',
330             'content_native_libraries_gen',
331           ],
332           'variables': {
333             'java_in_dir': '../content/public/android/java',
334             'jar_excluded_classes': [ '*/NativeLibraries.class' ],
335             'has_java_resources': 1,
336             'R_package': 'org.chromium.content',
337             'R_package_relpath': 'org/chromium/content',
338             'java_strings_grd': 'android_content_strings.grd',
339           },
340           'conditions': [
341             ['android_webview_build == 0', {
342               'dependencies': [
343                 '../third_party/eyesfree/eyesfree.gyp:eyesfree_java',
344                 '../third_party/guava/guava.gyp:guava_javalib',
345               ],
346             }],
347           ],
348           'includes': [ '../build/java.gypi' ],
349         },
350         {
351           'target_name': 'page_transition_types_java',
352           'type': 'none',
353           'sources': [
354             'public/android/java/src/org/chromium/content/browser/PageTransitionTypes.template',
355           ],
356           'variables': {
357             'package_name': 'org/chromium/content/browser',
358             'template_deps': ['public/common/page_transition_types_list.h'],
359           },
360           'includes': [ '../build/android/java_cpp_template.gypi' ],
361         },
362         {
363           'target_name': 'result_codes_java',
364           'type': 'none',
365           'sources': [
366             'public/android/java/src/org/chromium/content/common/ResultCodes.template',
367           ],
368           'variables': {
369             'package_name': 'org/chromium/content/common',
370             'template_deps': ['public/common/result_codes_list.h'],
371           },
372           'includes': [ '../build/android/java_cpp_template.gypi' ],
373         },
374         {
375           'target_name': 'surface_texture_jni_headers',
376           'type': 'none',
377           'variables': {
378             'jni_gen_package': 'content',
379             'input_java_class': 'android/graphics/SurfaceTexture.class',
380           },
381           'includes': [ '../build/jar_file_jni_generator.gypi' ],
382         },
383         {
384           'target_name': 'surface_jni_headers',
385           'type': 'none',
386           'variables': {
387             'jni_gen_package': 'content',
388             'input_java_class': 'android/view/Surface.class',
389           },
390           'includes': [ '../build/jar_file_jni_generator.gypi' ],
391         },
392         {
393           'target_name': 'java_set_jni_headers',
394           'type': 'none',
395           'variables': {
396             'jni_gen_package': 'content',
397             'input_java_class': 'java/util/HashSet.class',
398           },
399           'includes': [ '../build/jar_file_jni_generator.gypi' ],
400         },
402         {
403           'target_name': 'content_jni_headers',
404           'type': 'none',
405           'dependencies': [
406             'java_set_jni_headers',
407             'surface_texture_jni_headers',
408             'surface_jni_headers',
409           ],
410           'direct_dependent_settings': {
411             'include_dirs': [
412               '<(SHARED_INTERMEDIATE_DIR)/content',
413             ],
414           },
415           'includes': [ 'content_jni.gypi' ],
416         },
417       ],
418     }],  # OS == "android"
419   ],