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': 'app_list', 12 'type': '<(component)', 13 'dependencies': [ 14 '../../base/base.gyp:base', 15 '../../base/base.gyp:base_i18n', 16 '../../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations', 17 '../../skia/skia.gyp:skia', 18 '../base/ui_base.gyp:ui_base', 19 '../compositor/compositor.gyp:compositor', 20 '../events/events.gyp:events_base', 21 '../gfx/gfx.gyp:gfx', 22 '../gfx/gfx.gyp:gfx_geometry', 23 '../resources/ui_resources.gyp:ui_resources', 24 '../strings/ui_strings.gyp:ui_strings', 25 ], 26 'defines': [ 27 'APP_LIST_IMPLEMENTATION', 28 ], 29 'sources': [ 30 'app_list_constants.cc', 31 'app_list_constants.h', 32 'app_list_export.h', 33 'app_list_folder_item.cc', 34 'app_list_folder_item.h', 35 'app_list_item.cc', 36 'app_list_item.h', 37 'app_list_item_observer.h', 38 'app_list_item_list.cc', 39 'app_list_item_list.h', 40 'app_list_item_list_observer.h', 41 'app_list_menu.cc', 42 'app_list_menu.h', 43 'app_list_model.cc', 44 'app_list_model.h', 45 'app_list_model_observer.h', 46 'app_list_switches.cc', 47 'app_list_switches.h', 48 'app_list_view_delegate.cc', 49 'app_list_view_delegate.h', 50 'cocoa/app_list_pager_view.h', 51 'cocoa/app_list_pager_view.mm', 52 'cocoa/app_list_view_controller.h', 53 'cocoa/app_list_view_controller.mm', 54 'cocoa/app_list_window_controller.h', 55 'cocoa/app_list_window_controller.mm', 56 'cocoa/apps_collection_view_drag_manager.h', 57 'cocoa/apps_collection_view_drag_manager.mm', 58 'cocoa/apps_grid_controller.h', 59 'cocoa/apps_grid_controller.mm', 60 'cocoa/apps_grid_view_item.h', 61 'cocoa/apps_grid_view_item.mm', 62 'cocoa/apps_pagination_model_observer.h', 63 'cocoa/apps_search_box_controller.h', 64 'cocoa/apps_search_box_controller.mm', 65 'cocoa/apps_search_results_controller.h', 66 'cocoa/apps_search_results_controller.mm', 67 'cocoa/apps_search_results_model_bridge.h', 68 'cocoa/apps_search_results_model_bridge.mm', 69 'cocoa/item_drag_controller.h', 70 'cocoa/item_drag_controller.mm', 71 'cocoa/scroll_view_with_no_scrollbars.h', 72 'cocoa/scroll_view_with_no_scrollbars.mm', 73 'pagination_model.cc', 74 'pagination_model.h', 75 'pagination_model_observer.h', 76 'search_box_model.cc', 77 'search_box_model.h', 78 'search_box_model_observer.h', 79 'search_provider.cc', 80 'search_provider.h', 81 'search_result.cc', 82 'search_result.h', 83 'speech_ui_model.cc', 84 'speech_ui_model.h', 85 'speech_ui_model_observer.h', 86 'views/apps_container_view.cc', 87 'views/apps_container_view.h', 88 'views/app_list_background.cc', 89 'views/app_list_background.h', 90 'views/app_list_drag_and_drop_host.h', 91 'views/app_list_folder_view.cc', 92 'views/app_list_folder_view.h', 93 'views/app_list_item_view.cc', 94 'views/app_list_item_view.h', 95 'views/app_list_main_view.cc', 96 'views/app_list_main_view.h', 97 'views/app_list_menu_views.cc', 98 'views/app_list_menu_views.h', 99 'views/app_list_view.cc', 100 'views/app_list_view.h', 101 'views/app_list_view_observer.h', 102 'views/apps_grid_view.cc', 103 'views/apps_grid_view.h', 104 'views/apps_grid_view_delegate.h', 105 'views/apps_grid_view_folder_delegate.h', 106 'views/cached_label.cc', 107 'views/cached_label.h', 108 'views/contents_switcher_view.cc', 109 'views/contents_switcher_view.h', 110 'views/contents_view.cc', 111 'views/contents_view.h', 112 'views/folder_background_view.cc', 113 'views/folder_background_view.h', 114 'views/folder_header_view.cc', 115 'views/folder_header_view.h', 116 'views/folder_header_view_delegate.h', 117 'views/page_switcher.cc', 118 'views/page_switcher.h', 119 'views/progress_bar_view.cc', 120 'views/progress_bar_view.h', 121 'views/pulsing_block_view.cc', 122 'views/pulsing_block_view.h', 123 'views/search_box_view.cc', 124 'views/search_box_view.h', 125 'views/search_box_view_delegate.h', 126 'views/search_result_actions_view.cc', 127 'views/search_result_actions_view.h', 128 'views/search_result_list_view.cc', 129 'views/search_result_list_view.h', 130 'views/search_result_list_view_delegate.h', 131 'views/search_result_view.cc', 132 'views/search_result_view.h', 133 'views/speech_view.cc', 134 'views/speech_view.h', 135 'views/start_page_view.cc', 136 'views/start_page_view.h', 137 'views/tile_item_view.cc', 138 'views/tile_item_view.h', 139 'views/top_icon_animation_view.cc', 140 'views/top_icon_animation_view.h', 141 ], 142 'conditions': [ 143 ['use_aura==1', { 144 'dependencies': [ 145 '../aura/aura.gyp:aura', 146 '../wm/wm.gyp:wm', 147 ], 148 }], 149 ['toolkit_views==1', { 150 'dependencies': [ 151 '../events/events.gyp:events', 152 '../views/views.gyp:views', 153 ], 154 }, { # toolkit_views==0 155 'sources/': [ 156 ['exclude', 'views/'], 157 ], 158 }], 159 ['OS=="mac"', { 160 'dependencies': [ 161 '../../third_party/google_toolbox_for_mac/google_toolbox_for_mac.gyp:google_toolbox_for_mac', 162 ], 163 'link_settings': { 164 'libraries': [ 165 '$(SDKROOT)/System/Library/Frameworks/QuartzCore.framework', 166 ], 167 }, 168 }, { # OS!="mac" 169 'sources/': [ 170 ['exclude', 'cocoa/'], 171 ], 172 }], 173 ], 174 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. 175 'msvs_disabled_warnings': [ 4267, ], 176 }, 177 { 178 'target_name': 'app_list_test_support', 179 'type': 'static_library', 180 'dependencies': [ 181 '../../base/base.gyp:base', 182 '../gfx/gfx.gyp:gfx', 183 '../gfx/gfx.gyp:gfx_geometry', 184 '../resources/ui_resources.gyp:ui_resources', 185 'app_list', 186 ], 187 'sources': [ 188 'test/app_list_test_model.cc', 189 'test/app_list_test_model.h', 190 'test/app_list_test_view_delegate.cc', 191 'test/app_list_test_view_delegate.h', 192 ], 193 }, 194 { 195 'target_name': 'app_list_unittests', 196 'type': 'executable', 197 'dependencies': [ 198 '../../base/base.gyp:base', 199 '../../base/base.gyp:test_support_base', 200 '../../skia/skia.gyp:skia', 201 '../../testing/gtest.gyp:gtest', 202 '../base/ui_base.gyp:ui_base', 203 '../compositor/compositor.gyp:compositor', 204 '../resources/ui_resources.gyp:ui_resources', 205 '../resources/ui_resources.gyp:ui_test_pak', 206 'app_list', 207 'app_list_test_support', 208 ], 209 'sources': [ 210 'app_list_item_list_unittest.cc', 211 'app_list_model_unittest.cc', 212 'pagination_model_unittest.cc', 213 'cocoa/app_list_view_controller_unittest.mm', 214 'cocoa/app_list_window_controller_unittest.mm', 215 'cocoa/apps_grid_controller_unittest.mm', 216 'cocoa/apps_search_box_controller_unittest.mm', 217 'cocoa/apps_search_results_controller_unittest.mm', 218 'cocoa/test/apps_grid_controller_test_helper.h', 219 'cocoa/test/apps_grid_controller_test_helper.mm', 220 'test/run_all_unittests.cc', 221 'views/app_list_main_view_unittest.cc', 222 'views/app_list_view_unittest.cc', 223 'views/apps_grid_view_unittest.cc', 224 'views/folder_header_view_unittest.cc', 225 'views/search_box_view_unittest.cc', 226 'views/search_result_list_view_unittest.cc', 227 'views/speech_view_unittest.cc', 228 'views/test/apps_grid_view_test_api.cc', 229 'views/test/apps_grid_view_test_api.h', 230 ], 231 'conditions': [ 232 ['toolkit_views==1', { 233 'dependencies': [ 234 '../views/views.gyp:views', 235 '../views/views.gyp:views_test_support', 236 ], 237 }, { # toolkit_views==0 238 'sources/': [ 239 ['exclude', 'views/'], 240 ] 241 }], 242 ['OS=="mac"', { 243 'dependencies': [ 244 '../events/events.gyp:events_test_support', 245 '../gfx/gfx.gyp:gfx_test_support', 246 ], 247 'conditions': [ 248 ['component=="static_library"', { 249 # Needed to link to Obj-C static libraries. 250 'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-ObjC']}, 251 }], 252 ], 253 }, { # OS!="mac" 254 'sources/': [ 255 ['exclude', 'cocoa/'], 256 ], 257 }], 258 # See http://crbug.com/162998#c4 for why this is needed. 259 ['OS=="linux" and use_allocator!="none"', { 260 'dependencies': [ 261 '../../base/allocator/allocator.gyp:allocator', 262 # The following two dependencies provide the missing 263 # symbol HeapProfilerStart in Linux component builds. 264 # They probably can be removed after http://crbug.com/263316 265 '../../webkit/child/webkit_child.gyp:webkit_child', 266 ], 267 }], 268 ['OS=="win" and win_use_allocator_shim==1', { 269 'dependencies': [ 270 '../../base/allocator/allocator.gyp:allocator', 271 ], 272 }], 273 ], 274 # Disable c4267 warnings until we fix size_t to int truncations. 275 'msvs_disabled_warnings': [ 4267, ], 276 }, 277 ], 278 'conditions': [ 279 ['toolkit_views==1', { 280 'targets': [ 281 { 282 'target_name': 'app_list_demo', 283 'type': 'executable', 284 'sources': [ 285 '../../content/app/startup_helper_win.cc', 286 'demo/app_list_demo_views.cc', 287 ], 288 'dependencies': [ 289 '../../base/base.gyp:base', 290 '../../content/content.gyp:content', 291 '../../content/content.gyp:content_browser', 292 '../../skia/skia.gyp:skia', 293 '../../url/url.gyp:url_lib', 294 '../base/ui_base.gyp:ui_base', 295 '../events/events.gyp:events', 296 '../resources/ui_resources.gyp:ui_resources', 297 '../resources/ui_resources.gyp:ui_test_pak', 298 '../views/controls/webview/webview.gyp:webview', 299 '../views/views.gyp:views', 300 '../views_content_client/views_content_client.gyp:views_content_client', 301 'app_list', 302 'app_list_test_support', 303 ], 304 'conditions': [ 305 ['OS=="win"', { 306 'msvs_settings': { 307 'VCLinkerTool': { 308 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS 309 }, 310 }, 311 'dependencies': [ 312 '../../sandbox/sandbox.gyp:sandbox', 313 ], 314 }], 315 ], 316 }, 317 ], 318 }], # toolkit_views==1 319 ], 320 } 321