1 # Copyright 2014 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 # GN version: //mojo/apps/js 9 # //mojo/apps/js/bindings 10 # //mojo/apps/js/bindings/gl 11 'target_name': 'mojo_js_lib', 12 'type': 'static_library', 13 'dependencies': [ 14 '../base/base.gyp:base', 15 '../base/base.gyp:base_i18n', 16 '../gin/gin.gyp:gin', 17 '../ui/gl/gl.gyp:gl', 18 '../v8/tools/gyp/v8.gyp:v8', 19 'mojo_base.gyp:mojo_common_lib', 20 'mojo_base.gyp:mojo_environment_chromium', 21 'mojo_base.gyp:mojo_gles2_bindings', 22 'mojo_base.gyp:mojo_js_bindings_lib', 23 'mojo_native_viewport_bindings', 24 ], 25 'includes': [ 26 'mojo_public_gles2_for_loadable_module.gypi', 27 ], 28 'export_dependent_settings': [ 29 '../base/base.gyp:base', 30 '../gin/gin.gyp:gin', 31 'mojo_base.gyp:mojo_common_lib', 32 'mojo_base.gyp:mojo_gles2_bindings', 33 'mojo_native_viewport_bindings', 34 ], 35 'sources': [ 36 'apps/js/mojo_runner_delegate.cc', 37 'apps/js/mojo_runner_delegate.h', 38 'apps/js/bindings/threading.cc', 39 'apps/js/bindings/threading.h', 40 'apps/js/bindings/gl/context.cc', 41 'apps/js/bindings/gl/context.h', 42 'apps/js/bindings/gl/module.cc', 43 'apps/js/bindings/gl/module.h', 44 'apps/js/bindings/monotonic_clock.cc', 45 'apps/js/bindings/monotonic_clock.h', 46 ], 47 }, 48 { 49 # GN version: //mojo/apps/js/test:js_to_cpp_bindings 50 'target_name': 'mojo_apps_js_bindings', 51 'type': 'static_library', 52 'sources': [ 53 'apps/js/test/js_to_cpp.mojom', 54 ], 55 'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ], 56 'export_dependent_settings': [ 57 'mojo_base.gyp:mojo_cpp_bindings', 58 ], 59 'dependencies': [ 60 'mojo_base.gyp:mojo_cpp_bindings', 61 ], 62 }, 63 { 64 # GN version: //mojo/apps/js/test/mojo_apps_js_unittests 65 'target_name': 'mojo_apps_js_unittests', 66 'type': 'executable', 67 'dependencies': [ 68 '../gin/gin.gyp:gin_test', 69 'mojo_base.gyp:mojo_common_lib', 70 'mojo_base.gyp:mojo_common_test_support', 71 'mojo_base.gyp:mojo_public_test_interfaces', 72 'mojo_base.gyp:mojo_run_all_unittests', 73 'mojo_apps_js_bindings', 74 'mojo_js_lib', 75 ], 76 'sources': [ 77 'apps/js/test/handle_unittest.cc', 78 'apps/js/test/js_to_cpp_unittest.cc', 79 'apps/js/test/run_apps_js_tests.cc', 80 ], 81 }, 82 { 83 # GN version: //mojo/apps/js:mojo_js 84 'target_name': 'mojo_js', 85 'type': 'loadable_module', 86 'dependencies': [ 87 'mojo_base.gyp:mojo_application_chromium', 88 'mojo_base.gyp:mojo_cpp_bindings', 89 'mojo_base.gyp:mojo_utility', 90 'mojo_content_handler_bindings', 91 'mojo_js_lib', 92 '<(mojo_system_for_loadable_module)', 93 ], 94 'sources': [ 95 'apps/js/application_delegate_impl.cc', 96 'apps/js/js_app.cc', 97 'apps/js/mojo_module.cc', 98 'apps/js/main.cc', 99 ], 100 }, 101 ], 102 'conditions': [ 103 ['test_isolation_mode != "noop"', { 104 'targets': [ 105 { 106 'target_name': 'mojo_apps_js_unittests_run', 107 'type': 'none', 108 'dependencies': [ 109 'mojo_apps_js_unittests', 110 ], 111 'includes': [ 112 '../build/isolate.gypi', 113 'mojo_apps_js_unittests.isolate', 114 ], 115 'sources': [ 116 'mojo_apps_js_unittests.isolate', 117 ], 118 }, 119 ], 120 }], 121 ], 122 } 123