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 'targets': [ 7 { 8 'target_name': 'ppapi_tests', 9 'type': 'loadable_module', 10 'include_dirs': [ 11 'lib/gl/include', 12 ], 13 'defines': [ 14 'GL_GLEXT_PROTOTYPES', 15 ], 16 'sources': [ 17 '<@(test_common_source_files)', 18 '<@(test_trusted_source_files)', 19 ], 20 'dependencies': [ 21 'ppapi.gyp:ppapi_cpp', 22 'ppapi_internal.gyp:ppapi_shared', 23 ], 24 'copies': [ 25 { 26 'destination': '<(PRODUCT_DIR)', 27 'files': [ 28 # Keep 'test_case.html.mock-http-headers' with 'test_case.html'. 29 'tests/test_case.html', 30 'tests/test_case.html.mock-http-headers', 31 'tests/test_page.css', 32 'tests/ppapi_nacl_tests_newlib.nmf', 33 ], 34 }, 35 { 36 'destination': '<(PRODUCT_DIR)/test_url_loader_data', 37 'files': [ 38 'tests/test_url_loader_data/hello.txt', 39 ], 40 }, 41 ], 42 'run_as': { 43 'action': [ 44 '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)chrome<(EXECUTABLE_SUFFIX)', 45 '--enable-pepper-testing', 46 '--register-pepper-plugins=$(TargetPath);application/x-ppapi-tests', 47 'file://$(ProjectDir)/tests/test_case.html?testcase=', 48 ], 49 }, 50 'conditions': [ 51 ['OS=="win"', { 52 'defines': [ 53 '_CRT_SECURE_NO_DEPRECATE', 54 '_CRT_NONSTDC_NO_WARNINGS', 55 '_CRT_NONSTDC_NO_DEPRECATE', 56 '_SCL_SECURE_NO_DEPRECATE', 57 ], 58 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. 59 'msvs_disabled_warnings': [ 4267, ], 60 }], 61 ['OS=="mac"', { 62 'mac_bundle': 1, 63 'product_name': 'ppapi_tests', 64 'product_extension': 'plugin', 65 }], 66 ], 67 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. 68 'msvs_disabled_warnings': [ 4267, ], 69 # TODO(dmichael): Figure out what is wrong with the script on Windows and add 70 # it as an automated action. 71 # 'actions': [ 72 # { 73 # 'action_name': 'generate_ppapi_include_tests', 74 # 'inputs': [], 75 # 'outputs': [ 76 # 'tests/test_c_includes.c', 77 # 'tests/test_cc_includes.cc', 78 # ], 79 # 'action': [ 80 # '<!@(python generate_ppapi_include_tests.py)', 81 # ], 82 # }, 83 # ], 84 }, 85 { 86 'target_name': 'ppapi_unittest_shared', 87 'type': 'static_library', 88 'dependencies': [ 89 'ppapi_proxy', 90 'ppapi_shared', 91 '../base/base.gyp:test_support_base', 92 '../ipc/ipc.gyp:ipc', 93 '../ipc/ipc.gyp:test_support_ipc', 94 '../testing/gmock.gyp:gmock', 95 '../testing/gtest.gyp:gtest', 96 ], 97 'sources': [ 98 'proxy/ppapi_proxy_test.cc', 99 'proxy/ppapi_proxy_test.h', 100 'proxy/resource_message_test_sink.cc', 101 'proxy/resource_message_test_sink.h', 102 'shared_impl/test_globals.cc', 103 'shared_impl/test_globals.h', 104 'shared_impl/unittest_utils.cc', 105 'shared_impl/unittest_utils.h', 106 ], 107 }, 108 109 { 110 'target_name': 'ppapi_perftests', 111 'type': 'executable', 112 'variables': { 113 'chromium_code': 1, 114 }, 115 'dependencies': [ 116 'ppapi_proxy', 117 'ppapi_shared', 118 'ppapi_unittest_shared', 119 '../base/base.gyp:test_support_base', 120 '../testing/gtest.gyp:gtest', 121 ], 122 'sources': [ 123 'proxy/ppapi_perftests.cc', 124 'proxy/ppp_messaging_proxy_perftest.cc', 125 ], 126 'conditions': [ 127 # See http://crbug.com/162998#c4 for why this is needed. 128 ['OS=="linux" and use_allocator!="none"', { 129 'dependencies': [ 130 '../base/allocator/allocator.gyp:allocator', 131 ], 132 }], 133 ], 134 }, 135 { 136 'target_name': 'ppapi_unittests', 137 'type': 'executable', 138 'variables': { 139 'chromium_code': 1, 140 }, 141 'dependencies': [ 142 'ppapi_host', 143 'ppapi_proxy', 144 'ppapi_shared', 145 'ppapi_unittest_shared', 146 '../base/base.gyp:run_all_unittests', 147 '../base/base.gyp:test_support_base', 148 '../gpu/gpu.gyp:gpu_ipc', 149 '../ipc/ipc.gyp:ipc', 150 '../ipc/ipc.gyp:test_support_ipc', 151 '../media/media.gyp:shared_memory_support', 152 '../testing/gmock.gyp:gmock', 153 '../testing/gtest.gyp:gtest', 154 '../ui/surface/surface.gyp:surface', 155 ], 156 'sources': [ 157 'host/resource_message_filter_unittest.cc', 158 'proxy/device_enumeration_resource_helper_unittest.cc', 159 'proxy/file_chooser_resource_unittest.cc', 160 'proxy/file_system_resource_unittest.cc', 161 'proxy/flash_resource_unittest.cc', 162 'proxy/interface_list_unittest.cc', 163 'proxy/mock_resource.cc', 164 'proxy/mock_resource.h', 165 'proxy/nacl_message_scanner_unittest.cc', 166 'proxy/pdf_resource_unittest.cc', 167 'proxy/plugin_dispatcher_unittest.cc', 168 'proxy/plugin_resource_tracker_unittest.cc', 169 'proxy/plugin_var_tracker_unittest.cc', 170 'proxy/ppb_var_unittest.cc', 171 'proxy/ppp_instance_private_proxy_unittest.cc', 172 'proxy/ppp_instance_proxy_unittest.cc', 173 'proxy/ppp_messaging_proxy_unittest.cc', 174 'proxy/printing_resource_unittest.cc', 175 'proxy/raw_var_data_unittest.cc', 176 'proxy/serialized_var_unittest.cc', 177 'proxy/talk_resource_unittest.cc', 178 'proxy/video_decoder_resource_unittest.cc', 179 'proxy/websocket_resource_unittest.cc', 180 'shared_impl/media_stream_audio_track_shared_unittest.cc', 181 'shared_impl/media_stream_buffer_manager_unittest.cc', 182 'shared_impl/media_stream_video_track_shared_unittest.cc', 183 'shared_impl/proxy_lock_unittest.cc', 184 'shared_impl/resource_tracker_unittest.cc', 185 'shared_impl/thread_aware_callback_unittest.cc', 186 'shared_impl/time_conversion_unittest.cc', 187 'shared_impl/tracked_callback_unittest.cc', 188 'shared_impl/var_tracker_unittest.cc', 189 ], 190 'conditions': [ 191 [ 'os_posix == 1 and OS != "mac" and OS != "android" and OS != "ios"', { 192 'conditions': [ 193 [ 'use_allocator!="none"', { 194 'dependencies': [ 195 '../base/allocator/allocator.gyp:allocator', 196 ], 197 }], 198 ], 199 }], 200 ], 201 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. 202 'msvs_disabled_warnings': [ 4267, ], 203 }, 204 { 205 'target_name': 'ppapi_example_skeleton', 206 'suppress_wildcard': 1, 207 'type': 'none', 208 'direct_dependent_settings': { 209 'product_name': '>(_target_name)', 210 'conditions': [ 211 ['os_posix==1 and OS!="mac"', { 212 'cflags': ['-fvisibility=hidden'], 213 'type': 'shared_library', 214 }], 215 ['OS=="win"', { 216 'type': 'shared_library', 217 }], 218 ['OS=="mac"', { 219 'type': 'loadable_module', 220 'mac_bundle': 1, 221 'product_extension': 'plugin', 222 'xcode_settings': { 223 'OTHER_LDFLAGS': [ 224 # Not to strip important symbols by -Wl,-dead_strip. 225 '-Wl,-exported_symbol,_PPP_GetInterface', 226 '-Wl,-exported_symbol,_PPP_InitializeModule', 227 '-Wl,-exported_symbol,_PPP_ShutdownModule' 228 ]}, 229 }], 230 ], 231 }, 232 }, 233 { 234 'target_name': 'ppapi_example_mouse_cursor', 235 'dependencies': [ 236 'ppapi_example_skeleton', 237 'ppapi.gyp:ppapi_cpp', 238 ], 239 'sources': [ 240 'examples/mouse_cursor/mouse_cursor.cc', 241 ], 242 }, 243 { 244 'target_name': 'ppapi_example_mouse_lock', 245 'dependencies': [ 246 'ppapi_example_skeleton', 247 'ppapi.gyp:ppapi_cpp', 248 ], 249 'sources': [ 250 'examples/mouse_lock/mouse_lock.cc', 251 ], 252 }, 253 254 { 255 'target_name': 'ppapi_example_gamepad', 256 'dependencies': [ 257 'ppapi_example_skeleton', 258 'ppapi.gyp:ppapi_cpp', 259 ], 260 'sources': [ 261 'examples/gamepad/gamepad.cc', 262 ], 263 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. 264 'msvs_disabled_warnings': [ 4267, ], 265 }, 266 267 { 268 'target_name': 'ppapi_example_c_stub', 269 'dependencies': [ 270 'ppapi_example_skeleton', 271 'ppapi.gyp:ppapi_c', 272 ], 273 'sources': [ 274 'examples/stub/stub.c', 275 ], 276 }, 277 { 278 'target_name': 'ppapi_example_cc_stub', 279 'dependencies': [ 280 'ppapi_example_skeleton', 281 'ppapi.gyp:ppapi_cpp', 282 ], 283 'sources': [ 284 'examples/stub/stub.cc', 285 ], 286 }, 287 { 288 'target_name': 'ppapi_example_crxfs', 289 'dependencies': [ 290 'ppapi_example_skeleton', 291 'ppapi.gyp:ppapi_cpp', 292 ], 293 'sources': [ 294 'examples/crxfs/crxfs.cc', 295 ], 296 }, 297 { 298 'target_name': 'ppapi_example_audio', 299 'dependencies': [ 300 'ppapi_example_skeleton', 301 'ppapi.gyp:ppapi_cpp', 302 ], 303 'sources': [ 304 'examples/audio/audio.cc', 305 ], 306 }, 307 { 308 'target_name': 'ppapi_example_audio_input', 309 'dependencies': [ 310 'ppapi_example_skeleton', 311 'ppapi.gyp:ppapi_cpp', 312 ], 313 'sources': [ 314 'examples/audio_input/audio_input.cc', 315 ], 316 }, 317 { 318 'target_name': 'ppapi_example_file_chooser', 319 'dependencies': [ 320 'ppapi_example_skeleton', 321 'ppapi.gyp:ppapi_cpp', 322 ], 323 'sources': [ 324 'examples/file_chooser/file_chooser.cc', 325 ], 326 }, 327 { 328 'target_name': 'ppapi_example_graphics_2d', 329 'dependencies': [ 330 'ppapi_example_skeleton', 331 'ppapi.gyp:ppapi_c', 332 ], 333 'sources': [ 334 'examples/2d/graphics_2d_example.c', 335 ], 336 }, 337 { 338 'target_name': 'ppapi_example_ime', 339 'dependencies': [ 340 'ppapi_example_skeleton', 341 'ppapi.gyp:ppapi_cpp', 342 ], 343 'sources': [ 344 'examples/ime/ime.cc', 345 ], 346 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. 347 'msvs_disabled_warnings': [ 4267, ], 348 }, 349 { 350 'target_name': 'ppapi_example_paint_manager', 351 'dependencies': [ 352 'ppapi_example_skeleton', 353 'ppapi.gyp:ppapi_cpp', 354 ], 355 'sources': [ 356 'examples/2d/paint_manager_example.cc', 357 ], 358 }, 359 { 360 'target_name': 'ppapi_example_input', 361 'dependencies': [ 362 'ppapi_example_skeleton', 363 'ppapi.gyp:ppapi_cpp', 364 ], 365 'sources': [ 366 'examples/input/pointer_event_input.cc', 367 ], 368 }, 369 { 370 'target_name': 'ppapi_example_post_message', 371 'dependencies': [ 372 'ppapi_example_skeleton', 373 'ppapi.gyp:ppapi_cpp', 374 ], 375 'sources': [ 376 'examples/scripting/post_message.cc', 377 ], 378 }, 379 { 380 'target_name': 'ppapi_example_scaling', 381 'dependencies': [ 382 'ppapi_example_skeleton', 383 'ppapi.gyp:ppapi_cpp', 384 ], 385 'sources': [ 386 'examples/scaling/scaling.cc', 387 ], 388 }, 389 { 390 'target_name': 'ppapi_example_scroll', 391 'dependencies': [ 392 'ppapi_example_skeleton', 393 'ppapi.gyp:ppapi_cpp', 394 ], 395 'sources': [ 396 'examples/2d/scroll.cc', 397 ], 398 }, 399 { 400 'target_name': 'ppapi_example_simple_font', 401 'dependencies': [ 402 'ppapi_example_skeleton', 403 'ppapi.gyp:ppapi_cpp', 404 ], 405 'sources': [ 406 'examples/font/simple_font.cc', 407 ], 408 }, 409 { 410 'target_name': 'ppapi_example_url_loader', 411 'dependencies': [ 412 'ppapi_example_skeleton', 413 'ppapi.gyp:ppapi_cpp', 414 ], 415 'sources': [ 416 'examples/url_loader/streaming.cc', 417 ], 418 }, 419 { 420 'target_name': 'ppapi_example_url_loader_file', 421 'dependencies': [ 422 'ppapi_example_skeleton', 423 'ppapi.gyp:ppapi_cpp', 424 ], 425 'sources': [ 426 'examples/url_loader/stream_to_file.cc', 427 ], 428 }, 429 { 430 'target_name': 'ppapi_example_gles2', 431 'dependencies': [ 432 'ppapi_example_skeleton', 433 'ppapi.gyp:ppapi_cpp', 434 'ppapi.gyp:ppapi_gles2', 435 ], 436 'include_dirs': [ 437 'lib/gl/include', 438 ], 439 'sources': [ 440 'examples/gles2/gles2.cc', 441 ], 442 }, 443 { 444 'target_name': 'ppapi_example_video_decode', 445 'dependencies': [ 446 'ppapi_example_skeleton', 447 'ppapi.gyp:ppapi_cpp', 448 'ppapi.gyp:ppapi_gles2', 449 ], 450 'include_dirs': [ 451 'lib/gl/include', 452 ], 453 'sources': [ 454 'examples/video_decode/video_decode.cc', 455 'examples/video_decode/testdata.h', 456 ], 457 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. 458 'msvs_disabled_warnings': [ 4267, ], 459 }, 460 { 461 'target_name': 'ppapi_example_video_decode_dev', 462 'dependencies': [ 463 'ppapi_example_skeleton', 464 'ppapi.gyp:ppapi_cpp', 465 'ppapi.gyp:ppapi_gles2', 466 ], 467 'include_dirs': [ 468 'lib/gl/include', 469 ], 470 'sources': [ 471 'examples/video_decode/video_decode_dev.cc', 472 'examples/video_decode/testdata.h', 473 ], 474 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. 475 'msvs_disabled_warnings': [ 4267, ], 476 }, 477 { 478 'target_name': 'ppapi_example_vc', 479 'dependencies': [ 480 'ppapi_example_skeleton', 481 'ppapi.gyp:ppapi_cpp', 482 'ppapi.gyp:ppapi_gles2', 483 ], 484 'include_dirs': [ 485 'lib/gl/include', 486 ], 487 'sources': [ 488 'examples/video_capture/video_capture.cc', 489 ], 490 }, 491 { 492 'target_name': 'ppapi_example_video_effects', 493 'dependencies': [ 494 'ppapi_example_skeleton', 495 'ppapi.gyp:ppapi_cpp', 496 ], 497 'sources': [ 498 'examples/video_effects/video_effects.cc', 499 ], 500 }, 501 { 502 'target_name': 'ppapi_example_enumerate_devices', 503 'dependencies': [ 504 'ppapi_example_skeleton', 505 'ppapi.gyp:ppapi_cpp', 506 ], 507 'sources': [ 508 'examples/enumerate_devices/enumerate_devices.cc', 509 ], 510 }, 511 { 512 'target_name': 'ppapi_example_flash_topmost', 513 'dependencies': [ 514 'ppapi_example_skeleton', 515 'ppapi.gyp:ppapi_cpp', 516 ], 517 'sources': [ 518 'examples/flash_topmost/flash_topmost.cc', 519 ], 520 }, 521 { 522 'target_name': 'ppapi_example_printing', 523 'dependencies': [ 524 'ppapi_example_skeleton', 525 'ppapi.gyp:ppapi_cpp', 526 ], 527 'sources': [ 528 'examples/printing/printing.cc', 529 ], 530 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. 531 'msvs_disabled_warnings': [ 4267, ], 532 }, 533 { 534 'target_name': 'ppapi_example_media_stream_audio', 535 'dependencies': [ 536 'ppapi_example_skeleton', 537 'ppapi.gyp:ppapi_cpp', 538 ], 539 'sources': [ 540 'examples/media_stream_audio/media_stream_audio.cc', 541 ], 542 }, 543 { 544 'target_name': 'ppapi_example_media_stream_video', 545 'dependencies': [ 546 'ppapi_example_skeleton', 547 'ppapi.gyp:ppapi_cpp', 548 'ppapi.gyp:ppapi_gles2', 549 ], 550 'include_dirs': [ 551 'lib/gl/include', 552 ], 553 'sources': [ 554 'examples/media_stream_video/media_stream_video.cc', 555 ], 556 }, 557 { 558 'target_name': 'ppapi_example_gles2_spinning_cube', 559 'dependencies': [ 560 'ppapi_example_skeleton', 561 'ppapi.gyp:ppapi_cpp', 562 'ppapi.gyp:ppapi_gles2', 563 ], 564 'include_dirs': [ 565 'lib/gl/include', 566 ], 567 'sources': [ 568 'examples/gles2_spinning_cube/gles2_spinning_cube.cc', 569 'examples/gles2_spinning_cube/spinning_cube.cc', 570 'examples/gles2_spinning_cube/spinning_cube.h', 571 ], 572 }, 573 { 574 'target_name': 'ppapi_example_compositor', 575 'dependencies': [ 576 'ppapi_example_skeleton', 577 'ppapi.gyp:ppapi_cpp', 578 'ppapi.gyp:ppapi_gles2', 579 ], 580 'include_dirs': [ 581 'lib/gl/include', 582 ], 583 'sources': [ 584 'examples/compositor/compositor.cc', 585 'examples/compositor/spinning_cube.cc', 586 'examples/compositor/spinning_cube.h', 587 ], 588 }, 589 ], 590 } 591