1 # Copyright (c) 2010 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.
10 'target_conditions': [
11 # This part is shared between the targets defined below. Only files and
12 # settings relevant for building the Win64 target should be added here.
13 # All the rest should be added to the 'app_base' target below.
14 ['app_base_target==1', {
16 # Used both for Chrome and for Win64 NaCl loader
21 'hi_res_timer_manager_posix.cc',
22 'hi_res_timer_manager_win.cc',
23 'hi_res_timer_manager.h',
26 'system_monitor_posix.cc',
27 'system_monitor_win.cc',
29 'tree_node_iterator.h',
40 ['OS!="linux" and OS!="freebsd" and OS!="openbsd"', {
45 'gtk_signal_registrar.cc',
46 'gtk_signal_registrar.h',
51 'x11_util_internal.h',
60 'target_name': 'app_base',
62 'msvs_guid': '4631946D-7D5F-44BD-A5A8-504C0A7033BE',
65 'gl_binding_output_dir': '<(SHARED_INTERMEDIATE_DIR)/app',
68 # app resources and app_strings should be shared with the 64-bit
69 # target, but it doesn't work due to a bug in gyp
72 '../base/base.gyp:base',
73 '../base/base.gyp:base_i18n',
76 '../skia/skia.gyp:skia',
77 '../third_party/icu/icu.gyp:icui18n',
78 '../third_party/icu/icu.gyp:icuuc',
79 '../third_party/libjpeg/libjpeg.gyp:libjpeg',
80 '../third_party/libpng/libpng.gyp:libpng',
81 '../third_party/sqlite/sqlite.gyp:sqlite',
82 '../third_party/zlib/zlib.gyp:zlib',
85 '../third_party/mesa/MesaLib/include',
86 '<(gl_binding_output_dir)',
88 # TODO(gregoryd): The direct_dependent_settings should be shared with
89 # the 64-bit target, but it doesn't work due to a bug in gyp
90 'direct_dependent_settings': {
93 '../third_party/mesa/MesaLib/include',
94 '<(gl_binding_output_dir)',
98 # Files that are not required for Win64 Native Client loader
99 'active_window_watcher_x.cc',
100 'active_window_watcher_x.h',
101 'animation_container.cc',
102 'animation_container.h',
105 'bidi_line_iterator.cc',
106 'clipboard/clipboard.cc',
107 'clipboard/clipboard.h',
108 'clipboard/clipboard_linux.cc',
109 'clipboard/clipboard_mac.mm',
110 'clipboard/clipboard_util_win.cc',
111 'clipboard/clipboard_util_win.h',
112 'clipboard/clipboard_win.cc',
113 'clipboard/scoped_clipboard_writer.cc',
114 'clipboard/scoped_clipboard_writer.h',
116 'drag_drop_types_gtk.cc',
117 'drag_drop_types_win.cc',
119 'file_download_interface.h',
122 'gfx/gl/gl_bindings.h',
123 'gfx/gl/gl_context.cc',
124 'gfx/gl/gl_context.h',
125 'gfx/gl/gl_context_linux.cc',
126 'gfx/gl/gl_context_mac.cc',
127 'gfx/gl/gl_context_osmesa.cc',
128 'gfx/gl/gl_context_osmesa.h',
129 'gfx/gl/gl_context_stub.h',
130 'gfx/gl/gl_context_win.cc',
131 'gfx/gl/gl_headers.h',
132 'gfx/gl/gl_implementation.cc',
133 'gfx/gl/gl_implementation.h',
134 'gfx/gl/gl_implementation_linux.cc',
135 'gfx/gl/gl_implementation_mac.cc',
136 'gfx/gl/gl_implementation_win.cc',
137 'gfx/gl/gl_interface.h',
138 'gfx/gl/gl_interface.cc',
143 'gtk_signal_registrar.cc',
144 'gtk_signal_registrar.h',
151 'l10n_util_posix.cc',
154 'linear_animation.cc',
155 'linear_animation.h',
156 'menus/accelerator.h',
157 'menus/accelerator_gtk.h',
158 'menus/accelerator_cocoa.h',
159 'menus/button_menu_item_model.cc',
160 'menus/button_menu_item_model.h',
161 'menus/menu_model.cc',
162 'menus/menu_model.h',
163 'menus/simple_menu_model.cc',
164 'menus/simple_menu_model.h',
165 'message_box_flags.h',
166 'multi_animation.cc',
168 'os_exchange_data_provider_gtk.cc',
169 'os_exchange_data_provider_gtk.h',
170 'os_exchange_data_provider_win.cc',
171 'os_exchange_data_provider_win.h',
172 'os_exchange_data.cc',
173 'os_exchange_data.h',
174 'resource_bundle.cc',
176 'resource_bundle_linux.cc',
177 'resource_bundle_mac.mm',
178 'resource_bundle_posix.cc',
179 'resource_bundle_win.cc',
180 'slide_animation.cc',
184 'sql/diagnostic_error_delegate.h',
190 'sql/transaction.cc',
192 'surface/accelerated_surface_mac.cc',
193 'surface/accelerated_surface_mac.h',
194 'surface/io_surface_support_mac.cc',
195 'surface/io_surface_support_mac.h',
196 'surface/transport_dib.h',
197 'surface/transport_dib_linux.cc',
198 'surface/transport_dib_mac.cc',
199 'surface/transport_dib_win.cc',
202 'table_model_observer.h',
207 'throb_animation.cc',
213 'x11_util_internal.h',
214 '<(gl_binding_output_dir)/gl_bindings_autogen_gl.cc',
215 '<(gl_binding_output_dir)/gl_bindings_autogen_gl.h',
216 '<(gl_binding_output_dir)/gl_bindings_autogen_mock.cc',
217 '<(gl_binding_output_dir)/gl_bindings_autogen_osmesa.cc',
218 '<(gl_binding_output_dir)/gl_bindings_autogen_osmesa.h',
220 # hard_dependency is necessary for this target because it has actions
221 # that generate header files included by dependent targtets. The header
222 # files must be generated before the dependents are compiled. The usual
223 # semantics are to allow the two targets to build concurrently.
224 'hard_dependency': 1,
227 'action_name': 'generate_gl_bindings',
229 'gfx/gl/generate_bindings.py',
232 '<(gl_binding_output_dir)/gl_bindings_autogen_egl.cc',
233 '<(gl_binding_output_dir)/gl_bindings_autogen_egl.h',
234 '<(gl_binding_output_dir)/gl_bindings_autogen_gl.cc',
235 '<(gl_binding_output_dir)/gl_bindings_autogen_gl.h',
236 '<(gl_binding_output_dir)/gl_bindings_autogen_glx.cc',
237 '<(gl_binding_output_dir)/gl_bindings_autogen_glx.h',
238 '<(gl_binding_output_dir)/gl_bindings_autogen_mock.cc',
239 '<(gl_binding_output_dir)/gl_bindings_autogen_osmesa.cc',
240 '<(gl_binding_output_dir)/gl_bindings_autogen_osmesa.h',
241 '<(gl_binding_output_dir)/gl_bindings_autogen_wgl.cc',
242 '<(gl_binding_output_dir)/gl_bindings_autogen_wgl.h',
246 'gfx/gl/generate_bindings.py',
247 '<(gl_binding_output_dir)',
252 ['OS=="linux" or OS=="freebsd" or OS=="openbsd"', {
254 # font_gtk.cc uses fontconfig.
255 # TODO(evanm): I think this is wrong; it should just use GTK.
256 '../build/linux/system.gyp:fontconfig',
257 '../build/linux/system.gyp:gtk',
258 '../build/linux/system.gyp:x11',
259 '../build/linux/system.gyp:xext',
263 '-lXrender', # For XRender* function calls in x11_util.cc.
267 ['toolkit_views==0', {
268 # Note: because of gyp predence rules this has to be defined as
269 # 'sources/' rather than 'sources!'.
271 ['exclude', '^os_exchange_data.cc'],
272 ['exclude', '^os_exchange_data.h'],
273 ['exclude', '^os_exchange_data_provider_gtk.cc'],
274 ['exclude', '^os_exchange_data_provider_gtk.h'],
275 ['exclude', '^drag_drop_types_gtk.cc'],
278 ['toolkit_views==1', {
279 # Note: because of gyp predence rules this has to be defined as
280 # 'sources/' rather than 'sources!'.
282 ['include', '^os_exchange_data.cc'],
294 'gfx/native_theme_win.cc',
295 'gfx/native_theme_win.h',
296 'os_exchange_data.cc',
301 'gfx/gl/gl_context_egl.cc',
302 'gfx/gl/gl_context_egl.h',
303 '<(gl_binding_output_dir)/gl_bindings_autogen_egl.cc',
304 '<(gl_binding_output_dir)/gl_bindings_autogen_egl.h',
305 '<(gl_binding_output_dir)/gl_bindings_autogen_glx.cc',
306 '<(gl_binding_output_dir)/gl_bindings_autogen_glx.h',
309 # We don't use angle, but pull the EGL/GLES headers from there.
310 '../third_party/angle/include',
312 'all_dependent_settings': {
314 'GL_GLEXT_PROTOTYPES',
330 '$(SDKROOT)/System/Library/Frameworks/OpenGL.framework',
336 '../third_party/angle/include',
339 'gfx/gl/gl_context_egl.cc',
340 'gfx/gl/gl_context_egl.h',
341 '<(gl_binding_output_dir)/gl_bindings_autogen_egl.cc',
342 '<(gl_binding_output_dir)/gl_bindings_autogen_egl.h',
343 '<(gl_binding_output_dir)/gl_bindings_autogen_wgl.cc',
344 '<(gl_binding_output_dir)/gl_bindings_autogen_wgl.h',
354 'target_name': 'app_base_nacl_win64',
355 'type': '<(library)',
356 'msvs_guid': '4987C6F9-B230-48E5-BF91-418EAE69AD90',
358 # app resources and app_strings should be shared with the 32-bit
359 # target, but it doesn't work due to a bug in gyp
362 '../base/base.gyp:base_nacl_win64',
365 'app_base_target': 1,
368 '<@(nacl_win64_defines)',
370 # TODO(gregoryd): The direct_dependent_settings should be shared with
371 # the 32-bit target, but it doesn't work due to a bug in gyp
372 'direct_dependent_settings': {
378 'l10n_util_dummy.cc',
379 'resource_bundle_dummy.cc',
382 '../skia/config/win',
383 '../third_party/icu/public/common',
384 '../third_party/icu/public/i18n',
385 '../third_party/npapi',
386 '../third_party/skia/include/config',
387 '../third_party/skia/include/core',
391 'msvs_target_platform': 'x64',