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. 4 5 { 6 'variables': { 7 'chromium_code': 1, 8 }, 9 'targets': [ 10 { 11 'target_name': 'ui', 12 'type': '<(component)', 13 'dependencies': [ 14 '../base/base.gyp:base', 15 '../base/base.gyp:base_i18n', 16 '../base/base.gyp:base_static', 17 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations', 18 '../net/net.gyp:net', 19 '../skia/skia.gyp:skia', 20 '../third_party/icu/icu.gyp:icui18n', 21 '../third_party/icu/icu.gyp:icuuc', 22 '../third_party/libpng/libpng.gyp:libpng', 23 '../third_party/zlib/zlib.gyp:zlib', 24 '../url/url.gyp:url_lib', 25 'base/strings/ui_strings.gyp:ui_strings', 26 'events/events.gyp:events_base', 27 'gfx/gfx.gyp:gfx', 28 'resources/ui_resources.gyp:ui_resources', 29 ], 30 'defines': [ 31 'UI_IMPLEMENTATION', 32 ], 33 'export_dependent_settings': [ 34 '../net/net.gyp:net', 35 'gfx/gfx.gyp:gfx', 36 ], 37 'sources' : [ 38 'base/accelerators/accelerator.cc', 39 'base/accelerators/accelerator.h', 40 'base/accelerators/accelerator_manager.cc', 41 'base/accelerators/accelerator_manager.h', 42 'base/accelerators/menu_label_accelerator_util_linux.cc', 43 'base/accelerators/menu_label_accelerator_util_linux.h', 44 'base/accelerators/platform_accelerator.h', 45 'base/accelerators/platform_accelerator_cocoa.h', 46 'base/accelerators/platform_accelerator_cocoa.mm', 47 'base/accelerators/platform_accelerator_gtk.cc', 48 'base/accelerators/platform_accelerator_gtk.h', 49 'base/accessibility/accessibility_types.h', 50 'base/accessibility/accessible_text_utils.cc', 51 'base/accessibility/accessible_text_utils.h', 52 'base/accessibility/accessible_view_state.cc', 53 'base/accessibility/accessible_view_state.h', 54 'base/android/ui_base_jni_registrar.cc', 55 'base/android/ui_base_jni_registrar.h', 56 'base/android/view_android.cc', 57 'base/android/view_android.h', 58 'base/android/window_android.cc', 59 'base/android/window_android.h', 60 'base/android/window_android_observer.h', 61 'base/base_window.cc', 62 'base/base_window.h', 63 'base/clipboard/clipboard.cc', 64 'base/clipboard/clipboard.h', 65 'base/clipboard/clipboard_android.cc', 66 'base/clipboard/clipboard_android_initialization.h', 67 'base/clipboard/clipboard_aura.cc', 68 'base/clipboard/clipboard_aurax11.cc', 69 'base/clipboard/clipboard_constants.cc', 70 'base/clipboard/clipboard_gtk.cc', 71 'base/clipboard/clipboard_mac.mm', 72 'base/clipboard/clipboard_types.h', 73 'base/clipboard/clipboard_util_win.cc', 74 'base/clipboard/clipboard_util_win.h', 75 'base/clipboard/clipboard_win.cc', 76 'base/clipboard/custom_data_helper.cc', 77 'base/clipboard/custom_data_helper.h', 78 'base/clipboard/custom_data_helper_linux.cc', 79 'base/clipboard/custom_data_helper_mac.mm', 80 'base/clipboard/scoped_clipboard_writer.cc', 81 'base/clipboard/scoped_clipboard_writer.h', 82 'base/cocoa/animation_utils.h', 83 'base/cocoa/appkit_utils.h', 84 'base/cocoa/appkit_utils.mm', 85 'base/cocoa/base_view.h', 86 'base/cocoa/base_view.mm', 87 'base/cocoa/cocoa_event_utils.h', 88 'base/cocoa/cocoa_event_utils.mm', 89 'base/cocoa/controls/blue_label_button.h', 90 'base/cocoa/controls/blue_label_button.mm', 91 'base/cocoa/controls/hover_image_menu_button.h', 92 'base/cocoa/controls/hover_image_menu_button.mm', 93 'base/cocoa/controls/hover_image_menu_button_cell.h', 94 'base/cocoa/controls/hover_image_menu_button_cell.mm', 95 'base/cocoa/controls/hyperlink_button_cell.h', 96 'base/cocoa/controls/hyperlink_button_cell.mm', 97 'base/cocoa/find_pasteboard.h', 98 'base/cocoa/find_pasteboard.mm', 99 'base/cocoa/flipped_view.h', 100 'base/cocoa/flipped_view.mm', 101 'base/cocoa/focus_tracker.h', 102 'base/cocoa/focus_tracker.mm', 103 'base/cocoa/focus_window_set.h', 104 'base/cocoa/focus_window_set.mm', 105 'base/cocoa/fullscreen_window_manager.h', 106 'base/cocoa/fullscreen_window_manager.mm', 107 'base/cocoa/hover_button.h', 108 'base/cocoa/hover_button.mm', 109 'base/cocoa/hover_image_button.h', 110 'base/cocoa/hover_image_button.mm', 111 'base/cocoa/menu_controller.h', 112 'base/cocoa/menu_controller.mm', 113 'base/cocoa/nib_loading.h', 114 'base/cocoa/nib_loading.mm', 115 'base/cocoa/nsgraphics_context_additions.h', 116 'base/cocoa/nsgraphics_context_additions.mm', 117 'base/cocoa/tracking_area.h', 118 'base/cocoa/tracking_area.mm', 119 'base/cocoa/underlay_opengl_hosting_window.h', 120 'base/cocoa/underlay_opengl_hosting_window.mm', 121 'base/cocoa/view_description.h', 122 'base/cocoa/view_description.mm', 123 'base/cocoa/window_size_constants.h', 124 'base/cocoa/window_size_constants.mm', 125 'base/cursor/cursor.cc', 126 'base/cursor/cursor.h', 127 'base/cursor/cursor_loader.h', 128 'base/cursor/cursor_loader_null.cc', 129 'base/cursor/cursor_loader_null.h', 130 'base/cursor/cursor_loader_win.cc', 131 'base/cursor/cursor_loader_win.h', 132 'base/cursor/cursor_loader_x11.cc', 133 'base/cursor/cursor_loader_x11.h', 134 'base/cursor/cursor_null.cc', 135 'base/cursor/cursor_win.cc', 136 'base/cursor/cursor_x11.cc', 137 'base/cursor/cursors_aura.cc', 138 'base/cursor/cursors_aura.h', 139 'base/default_theme_provider.cc', 140 'base/default_theme_provider.h', 141 'base/default_theme_provider_mac.mm', 142 'base/device_form_factor_android.cc', 143 'base/device_form_factor_desktop.cc', 144 'base/device_form_factor_ios.mm', 145 'base/device_form_factor.h', 146 'base/dragdrop/cocoa_dnd_util.h', 147 'base/dragdrop/cocoa_dnd_util.mm', 148 'base/dragdrop/drag_drop_types.h', 149 'base/dragdrop/drag_drop_types_win.cc', 150 'base/dragdrop/drag_source_win.cc', 151 'base/dragdrop/drag_source_win.h', 152 'base/dragdrop/drag_utils.cc', 153 'base/dragdrop/drag_utils.h', 154 'base/dragdrop/drag_utils_aura.cc', 155 'base/dragdrop/drag_utils_win.cc', 156 'base/dragdrop/drop_target_event.cc', 157 'base/dragdrop/drop_target_event.h', 158 'base/dragdrop/drop_target_win.cc', 159 'base/dragdrop/drop_target_win.h', 160 'base/dragdrop/gtk_dnd_util.cc', 161 'base/dragdrop/gtk_dnd_util.h', 162 'base/dragdrop/os_exchange_data.cc', 163 'base/dragdrop/os_exchange_data.h', 164 'base/dragdrop/os_exchange_data_provider_aura.cc', 165 'base/dragdrop/os_exchange_data_provider_aura.h', 166 'base/dragdrop/os_exchange_data_provider_aurax11.cc', 167 'base/dragdrop/os_exchange_data_provider_aurax11.h', 168 'base/dragdrop/os_exchange_data_provider_win.cc', 169 'base/dragdrop/os_exchange_data_provider_win.h', 170 'base/gtk/event_synthesis_gtk.cc', 171 'base/gtk/event_synthesis_gtk.h', 172 'base/gtk/focus_store_gtk.cc', 173 'base/gtk/focus_store_gtk.h', 174 'base/gtk/g_object_destructor_filo.cc', 175 'base/gtk/g_object_destructor_filo.h', 176 'base/gtk/gtk_expanded_container.cc', 177 'base/gtk/gtk_expanded_container.h', 178 'base/gtk/gtk_floating_container.cc', 179 'base/gtk/gtk_floating_container.h', 180 'base/gtk/gtk_hig_constants.h', 181 'base/gtk/gtk_screen_util.cc', 182 'base/gtk/gtk_screen_util.h', 183 'base/gtk/gtk_signal.h', 184 'base/gtk/gtk_signal_registrar.cc', 185 'base/gtk/gtk_signal_registrar.h', 186 'base/gtk/gtk_windowing.cc', 187 'base/gtk/gtk_windowing.h', 188 'base/gtk/owned_widget_gtk.cc', 189 'base/gtk/owned_widget_gtk.h', 190 'base/gtk/scoped_region.cc', 191 'base/gtk/scoped_region.h', 192 'base/hit_test.h', 193 'base/l10n/l10n_font_util.cc', 194 'base/l10n/l10n_font_util.h', 195 'base/l10n/l10n_util.cc', 196 'base/l10n/l10n_util.h', 197 'base/l10n/l10n_util_android.cc', 198 'base/l10n/l10n_util_android.h', 199 'base/l10n/l10n_util_collator.h', 200 'base/l10n/l10n_util_mac.h', 201 'base/l10n/l10n_util_mac.mm', 202 'base/l10n/l10n_util_plurals.cc', 203 'base/l10n/l10n_util_plurals.h', 204 'base/l10n/l10n_util_posix.cc', 205 'base/l10n/l10n_util_win.cc', 206 'base/l10n/l10n_util_win.h', 207 'base/l10n/time_format.cc', 208 'base/l10n/time_format.h', 209 'base/layout.cc', 210 'base/layout.h', 211 'base/layout_mac.mm', 212 'base/models/button_menu_item_model.cc', 213 'base/models/button_menu_item_model.h', 214 'base/models/combobox_model.cc', 215 'base/models/combobox_model.h', 216 'base/models/combobox_model_observer.h', 217 'base/models/dialog_model.cc', 218 'base/models/dialog_model.h', 219 'base/models/list_model.h', 220 'base/models/list_model_observer.h', 221 'base/models/list_selection_model.cc', 222 'base/models/list_selection_model.h', 223 'base/models/menu_model.cc', 224 'base/models/menu_model.h', 225 'base/models/menu_model_delegate.h', 226 'base/models/menu_separator_types.h', 227 'base/models/simple_menu_model.cc', 228 'base/models/simple_menu_model.h', 229 'base/models/table_model.cc', 230 'base/models/table_model.h', 231 'base/models/table_model_observer.h', 232 'base/models/tree_model.cc', 233 'base/models/tree_model.h', 234 'base/models/tree_node_iterator.h', 235 'base/models/tree_node_model.h', 236 'base/resource/data_pack.cc', 237 'base/resource/data_pack.h', 238 'base/resource/resource_bundle.cc', 239 'base/resource/resource_bundle.h', 240 'base/resource/resource_bundle_android.cc', 241 'base/resource/resource_bundle_auralinux.cc', 242 'base/resource/resource_bundle_gtk.cc', 243 'base/resource/resource_bundle_ios.mm', 244 'base/resource/resource_bundle_mac.mm', 245 'base/resource/resource_bundle_win.cc', 246 'base/resource/resource_bundle_win.h', 247 'base/resource/resource_data_dll_win.cc', 248 'base/resource/resource_data_dll_win.h', 249 'base/resource/resource_handle.h', 250 'base/text/bytes_formatting.cc', 251 'base/text/bytes_formatting.h', 252 'base/theme_provider.cc', 253 'base/theme_provider.h', 254 'base/touch/touch_device.cc', 255 'base/touch/touch_device.h', 256 'base/touch/touch_device_android.cc', 257 'base/touch/touch_device_aurax11.cc', 258 'base/touch/touch_device_ozone.cc', 259 'base/touch/touch_device_win.cc', 260 'base/touch/touch_editing_controller.cc', 261 'base/touch/touch_editing_controller.h', 262 'base/touch/touch_enabled.cc', 263 'base/touch/touch_enabled.h', 264 'base/ui_base_exports.cc', 265 'base/ui_base_paths.cc', 266 'base/ui_base_paths.h', 267 'base/ui_base_switches.cc', 268 'base/ui_base_switches.h', 269 'base/ui_base_switches_util.cc', 270 'base/ui_base_switches_util.h', 271 'base/ui_base_types.cc', 272 'base/ui_base_types.h', 273 'base/ui_export.h', 274 'base/view_prop.cc', 275 'base/view_prop.h', 276 'base/webui/jstemplate_builder.cc', 277 'base/webui/jstemplate_builder.h', 278 'base/webui/web_ui_util.cc', 279 'base/webui/web_ui_util.h', 280 'base/win/accessibility_ids_win.h', 281 'base/win/accessibility_misc_utils.cc', 282 'base/win/accessibility_misc_utils.h', 283 'base/win/atl_module.h', 284 'base/win/dpi_setup.cc', 285 'base/win/dpi_setup.h', 286 'base/win/foreground_helper.cc', 287 'base/win/foreground_helper.h', 288 'base/win/hidden_window.cc', 289 'base/win/hidden_window.h', 290 'base/win/hwnd_subclass.cc', 291 'base/win/hwnd_subclass.h', 292 'base/win/lock_state.cc', 293 'base/win/lock_state.h', 294 'base/win/message_box_win.cc', 295 'base/win/message_box_win.h', 296 'base/win/mouse_wheel_util.cc', 297 'base/win/mouse_wheel_util.h', 298 'base/win/scoped_ole_initializer.cc', 299 'base/win/scoped_ole_initializer.h', 300 'base/win/shell.cc', 301 'base/win/shell.h', 302 'base/win/touch_input.cc', 303 'base/win/touch_input.h', 304 'base/window_open_disposition.cc', 305 'base/window_open_disposition.h', 306 'base/work_area_watcher_observer.h', 307 'base/x/active_window_watcher_x.cc', 308 'base/x/active_window_watcher_x.h', 309 'base/x/active_window_watcher_x_observer.h', 310 'base/x/root_window_property_watcher_x.cc', 311 'base/x/root_window_property_watcher_x.h', 312 'base/x/selection_owner.cc', 313 'base/x/selection_owner.h', 314 'base/x/selection_requestor.cc', 315 'base/x/selection_requestor.h', 316 'base/x/selection_utils.cc', 317 'base/x/selection_utils.h', 318 'base/x/work_area_watcher_x.cc', 319 'base/x/work_area_watcher_x.h', 320 'base/x/x11_util.cc', 321 'base/x/x11_util.h', 322 'base/x/x11_util_internal.h', 323 ], 324 'target_conditions': [ 325 ['OS == "ios"', { 326 'sources/': [ 327 ['include', '^base/l10n/l10n_util_mac\\.mm$'], 328 ], 329 }], 330 ], 331 'conditions': [ 332 ['OS!="ios"', { 333 'includes': [ 334 'base/ime/ime.gypi', 335 ], 336 }, { # OS=="ios" 337 # iOS only uses a subset of UI. 338 'sources/': [ 339 ['exclude', '\\.(cc|mm)$'], 340 ['include', '_ios\\.(cc|mm)$'], 341 ['include', '(^|/)ios/'], 342 ['include', '^base/l10n/'], 343 ['include', '^base/layout'], 344 ['include', '^base/resource/'], 345 ['include', '^base/ui_base_'], 346 ], 347 'link_settings': { 348 'libraries': [ 349 '$(SDKROOT)/System/Library/Frameworks/CoreGraphics.framework', 350 ], 351 }, 352 }], 353 ['toolkit_views==1', { 354 'dependencies': [ 355 'events/events.gyp:events', 356 ], 357 }], 358 ['use_aura==1', { 359 'sources/': [ 360 ['exclude', 'base/work_area_watcher_observer.h'], 361 ['exclude', 'base/x/active_window_watcher_x.cc'], 362 ['exclude', 'base/x/active_window_watcher_x.h'], 363 ['exclude', 'base/x/active_window_watcher_x_observer.h'], 364 ['exclude', 'base/x/root_window_property_watcher_x.cc'], 365 ['exclude', 'base/x/root_window_property_watcher_x.h'], 366 ['exclude', 'base/x/work_area_watcher_x.cc'], 367 ['exclude', 'base/x/work_area_watcher_x.h'], 368 ], 369 'dependencies': [ 370 'events/events.gyp:events', 371 ], 372 }, { # use_aura!=1 373 'sources!': [ 374 'base/cursor/cursor.cc', 375 'base/cursor/cursor.h', 376 'base/cursor/cursor_loader_x11.cc', 377 'base/cursor/cursor_loader_x11.h', 378 'base/cursor/cursor_win.cc', 379 'base/cursor/cursor_x11.cc', 380 'base/x/selection_owner.cc', 381 'base/x/selection_owner.h', 382 'base/x/selection_requestor.cc', 383 'base/x/selection_requestor.h', 384 'base/x/selection_utils.cc', 385 'base/x/selection_utils.h', 386 ] 387 }], 388 ['use_aura==0 or OS!="linux"', { 389 'sources!': [ 390 'base/resource/resource_bundle_auralinux.cc', 391 ], 392 }], 393 ['use_aura==1 and OS=="win"', { 394 'sources/': [ 395 ['exclude', 'base/dragdrop/drag_utils_aura.cc'], 396 ], 397 }], 398 ['use_glib == 1', { 399 'dependencies': [ 400 # font_gtk.cc uses fontconfig. 401 '../build/linux/system.gyp:fontconfig', 402 '../build/linux/system.gyp:glib', 403 ], 404 }], 405 ['desktop_linux == 1 or chromeos == 1', { 406 'conditions': [ 407 ['toolkit_views==0 and use_aura==0', { 408 # Note: because of gyp predence rules this has to be defined as 409 # 'sources/' rather than 'sources!'. 410 'sources/': [ 411 ['exclude', '^base/dragdrop/drag_utils.cc'], 412 ['exclude', '^base/dragdrop/drag_utils.h'], 413 ['exclude', '^base/dragdrop/os_exchange_data.cc'], 414 ['exclude', '^base/dragdrop/os_exchange_data.h'], 415 ], 416 }, { 417 # Note: because of gyp predence rules this has to be defined as 418 # 'sources/' rather than 'sources!'. 419 'sources/': [ 420 ['include', '^base/dragdrop/os_exchange_data.cc'], 421 ], 422 }], 423 ], 424 }], 425 ['use_pango==1', { 426 'dependencies': [ 427 '../build/linux/system.gyp:pangocairo', 428 ], 429 }], 430 ['use_x11==0 or use_clipboard_aurax11==1', { 431 'sources!': [ 432 'base/clipboard/clipboard_aura.cc', 433 ], 434 }, { 435 'sources!': [ 436 'base/clipboard/clipboard_aurax11.cc', 437 ], 438 }], 439 ['chromeos==1 or (use_aura==1 and OS=="linux" and use_x11==0)', { 440 'sources!': [ 441 'base/dragdrop/os_exchange_data_provider_aurax11.cc', 442 'base/touch/touch_device.cc', 443 ], 444 }, { 445 'sources!': [ 446 'base/dragdrop/os_exchange_data_provider_aura.cc', 447 'base/dragdrop/os_exchange_data_provider_aura.h', 448 'base/touch/touch_device_aurax11.cc', 449 ], 450 }], 451 ['OS=="win"', { 452 'sources!': [ 453 'base/touch/touch_device.cc', 454 ], 455 'include_dirs': [ 456 '../', 457 '../third_party/wtl/include', 458 ], 459 # TODO(jschuh): C4267: http://crbug.com/167187 size_t -> int 460 # C4324 is structure was padded due to __declspec(align()), which is 461 # uninteresting. 462 'msvs_disabled_warnings': [ 4267, 4324 ], 463 'msvs_settings': { 464 'VCLinkerTool': { 465 'DelayLoadDLLs': [ 466 'd2d1.dll', 467 'd3d10_1.dll', 468 'dwmapi.dll', 469 ], 470 'AdditionalDependencies': [ 471 'd2d1.lib', 472 'd3d10_1.lib', 473 'dwmapi.lib', 474 ], 475 }, 476 }, 477 'link_settings': { 478 'libraries': [ 479 '-limm32.lib', 480 '-ld2d1.lib', 481 '-ldwmapi.lib', 482 '-loleacc.lib', 483 ], 484 }, 485 },{ # OS!="win" 486 'conditions': [ 487 ['use_aura==0', { 488 'sources!': [ 489 'base/view_prop.cc', 490 'base/view_prop.h', 491 ], 492 }], 493 ], 494 'sources!': [ 495 'base/dragdrop/drag_drop_types.h', 496 'base/dragdrop/os_exchange_data.cc', 497 ], 498 'sources/': [ 499 ['exclude', '^base/win/'], 500 ], 501 }], 502 ['OS=="mac"', { 503 'dependencies': [ 504 '../third_party/mozilla/mozilla.gyp:mozilla', 505 ], 506 'sources!': [ 507 'base/dragdrop/drag_utils.cc', 508 'base/dragdrop/drag_utils.h', 509 ], 510 'link_settings': { 511 'libraries': [ 512 '$(SDKROOT)/System/Library/Frameworks/Accelerate.framework', 513 '$(SDKROOT)/System/Library/Frameworks/AudioUnit.framework', 514 '$(SDKROOT)/System/Library/Frameworks/CoreVideo.framework', 515 ], 516 }, 517 }], 518 ['use_x11==1', { 519 'all_dependent_settings': { 520 'ldflags': [ 521 '-L<(PRODUCT_DIR)', 522 ], 523 'link_settings': { 524 'libraries': [ 525 '-lX11', 526 '-lXcursor', 527 '-lXrender', # For XRender* function calls in x11_util.cc. 528 ], 529 }, 530 }, 531 'link_settings': { 532 'libraries': [ 533 '-lX11', 534 '-lXcursor', 535 '-lXrender', # For XRender* function calls in x11_util.cc. 536 ], 537 }, 538 'dependencies': [ 539 '../build/linux/system.gyp:x11', 540 '../build/linux/system.gyp:xext', 541 '../build/linux/system.gyp:xfixes', 542 ], 543 }], 544 ['use_ozone==0', { 545 'sources!': [ 546 'base/cursor/cursor_null.cc', 547 'base/cursor/cursor_loader_null.cc', 548 'base/cursor/cursor_loader_null.h', 549 ], 550 }], 551 ['toolkit_views==0', { 552 'sources!': [ 553 'base/dragdrop/drop_target_event.cc', 554 'base/dragdrop/drop_target_event.h', 555 ], 556 }], 557 ['OS=="android"', { 558 'sources!': [ 559 'base/accessibility/accessible_text_utils.cc', 560 'base/accessibility/accessible_view_state.cc', 561 'base/default_theme_provider.cc', 562 'base/dragdrop/drag_utils.cc', 563 'base/dragdrop/drag_utils.h', 564 'base/l10n/l10n_font_util.cc', 565 'base/models/button_menu_item_model.cc', 566 'base/models/dialog_model.cc', 567 'base/theme_provider.cc', 568 'base/touch/touch_device.cc', 569 'base/touch/touch_editing_controller.cc', 570 'base/ui_base_types.cc', 571 ], 572 'dependencies': [ 573 'ui_base_jni_headers', 574 ], 575 'include_dirs': [ 576 '<(SHARED_INTERMEDIATE_DIR)/ui', 577 ], 578 'link_settings': { 579 'libraries': [ 580 '-ljnigraphics', 581 ], 582 }, 583 }], 584 ['OS=="android" and android_webview_build==0', { 585 'dependencies': [ 586 'android/ui_android.gyp:ui_java', 587 ], 588 }], 589 ['OS=="android" or OS=="ios"', { 590 'sources!': [ 591 'base/device_form_factor_desktop.cc' 592 ], 593 }], 594 ['OS=="linux"', { 595 'libraries': [ 596 '-ldl', 597 ], 598 }], 599 ['use_system_icu==1', { 600 # When using the system icu, the icu targets generate shim headers 601 # which are included by public headers in the ui target, so we need 602 # ui to be a hard dependency for all its users. 603 'hard_dependency': 1, 604 }], 605 ], 606 }, 607 { 608 'target_name': 'webui_test_support', 609 'type': 'none', 610 'direct_dependent_settings': { 611 'include_dirs': [ 612 '<(SHARED_INTERMEDIATE_DIR)/ui/ui_resources', 613 ] 614 } 615 }, 616 ], 617 'conditions': [ 618 ['OS=="android"' , { 619 'targets': [ 620 { 621 'target_name': 'ui_base_jni_headers', 622 'type': 'none', 623 'direct_dependent_settings': { 624 'include_dirs': [ 625 '<(SHARED_INTERMEDIATE_DIR)/ui', 626 ], 627 }, 628 'sources': [ 629 'android/java/src/org/chromium/ui/base/Clipboard.java', 630 'android/java/src/org/chromium/ui/base/LocalizationUtils.java', 631 'android/java/src/org/chromium/ui/base/SelectFileDialog.java', 632 'android/java/src/org/chromium/ui/base/ViewAndroid.java', 633 'android/java/src/org/chromium/ui/base/WindowAndroid.java', 634 ], 635 'variables': { 636 'jni_gen_package': 'ui', 637 'jni_generator_ptr_type': 'long', 638 }, 639 'includes': [ '../build/jni_generator.gypi' ], 640 }, 641 ], 642 }], 643 ['OS=="mac"', { 644 'targets': [ 645 { 646 'target_name': 'ui_cocoa_third_party_toolkits', 647 'type': '<(component)', 648 'sources': [ 649 # Build the necessary GTM sources 650 '../third_party/GTM/AppKit/GTMFadeTruncatingTextFieldCell.h', 651 '../third_party/GTM/AppKit/GTMFadeTruncatingTextFieldCell.m', 652 '../third_party/GTM/AppKit/GTMIBArray.h', 653 '../third_party/GTM/AppKit/GTMIBArray.m', 654 '../third_party/GTM/AppKit/GTMKeyValueAnimation.h', 655 '../third_party/GTM/AppKit/GTMKeyValueAnimation.m', 656 '../third_party/GTM/AppKit/GTMNSAnimation+Duration.h', 657 '../third_party/GTM/AppKit/GTMNSAnimation+Duration.m', 658 '../third_party/GTM/AppKit/GTMNSBezierPath+CGPath.h', 659 '../third_party/GTM/AppKit/GTMNSBezierPath+CGPath.m', 660 '../third_party/GTM/AppKit/GTMNSBezierPath+RoundRect.h', 661 '../third_party/GTM/AppKit/GTMNSBezierPath+RoundRect.m', 662 '../third_party/GTM/AppKit/GTMNSColor+Luminance.m', 663 '../third_party/GTM/AppKit/GTMUILocalizer.h', 664 '../third_party/GTM/AppKit/GTMUILocalizer.m', 665 '../third_party/GTM/AppKit/GTMUILocalizerAndLayoutTweaker.h', 666 '../third_party/GTM/AppKit/GTMUILocalizerAndLayoutTweaker.m', 667 '../third_party/GTM/Foundation/GTMNSNumber+64Bit.h', 668 '../third_party/GTM/Foundation/GTMNSNumber+64Bit.m', 669 '../third_party/GTM/Foundation/GTMNSObject+KeyValueObserving.h', 670 '../third_party/GTM/Foundation/GTMNSObject+KeyValueObserving.m', 671 ], 672 'include_dirs': [ 673 '..', 674 '../third_party/GTM', 675 '../third_party/GTM/AppKit', 676 '../third_party/GTM/DebugUtils', 677 '../third_party/GTM/Foundation', 678 ], 679 'link_settings': { 680 'libraries': [ 681 '$(SDKROOT)/System/Library/Frameworks/Cocoa.framework', 682 '$(SDKROOT)/System/Library/Frameworks/QuartzCore.framework', 683 ], 684 }, 685 'conditions': [ 686 ['component=="shared_library"', { 687 # GTM is third-party code, so we don't want to add _EXPORT 688 # annotations to it, so build it without -fvisibility=hidden 689 # (else the interface class symbols will be hidden in a 64bit 690 # build). Only do this in a component build, so that the shipping 691 # chrome binary doesn't end up with unnecessarily exported 692 # symbols. 693 'xcode_settings': { 694 'GCC_SYMBOLS_PRIVATE_EXTERN': 'NO', 695 }, 696 }], 697 ], 698 }, 699 ], 700 }], 701 ], 702 } 703