1# Copyright 2015 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 'includes': [ 10 'mojo_edk.gypi', 11 ], 12 'target_defaults' : { 13 'include_dirs': [ 14 '..', 15 ], 16 'direct_dependent_settings': { 17 'include_dirs': [ 18 '..', 19 ], 20 }, 21 }, 22 'targets': [ 23 { 24 # GN version: //mojo/edk/system/ports 25 'target_name': 'mojo_system_ports', 26 'type': 'static_library', 27 'dependencies': [ 28 '../base/base.gyp:base', 29 '../crypto/crypto.gyp:crypto', 30 ], 31 'sources': [ 32 '<@(mojo_edk_ports_sources)', 33 ], 34 }, 35 { 36 # GN version: //mojo/edk/system 37 'target_name': 'mojo_system_impl', 38 'type': '<(component)', 39 'dependencies': [ 40 '../base/base.gyp:base', 41 '../crypto/crypto.gyp:crypto', 42 'mojo_public.gyp:mojo_public_system', 43 'mojo_system_ports', 44 ], 45 'defines': [ 46 'MOJO_SYSTEM_IMPL_IMPLEMENTATION', 47 ], 48 'sources': [ 49 '<@(mojo_edk_system_impl_sources)', 50 '<@(mojo_edk_system_impl_non_nacl_sources)', 51 ], 52 'conditions': [ 53 ['OS=="android"', { 54 'dependencies': [ 55 '../third_party/ashmem/ashmem.gyp:ashmem', 56 ], 57 }], 58 ['OS=="android" or chromeos==1', { 59 'defines': [ 60 'MOJO_EDK_LEGACY_PROTOCOL', 61 ], 62 }], 63 ['OS=="win"', { 64 # Structure was padded due to __declspec(align()), which is 65 # uninteresting. 66 'msvs_disabled_warnings': [ 4324 ], 67 }], 68 ['OS=="mac" and OS!="ios"', { 69 'sources': [ 70 'edk/system/mach_port_relay.cc', 71 'edk/system/mach_port_relay.h', 72 ], 73 }], 74 ], 75 }, 76 { 77 # GN version: //mojo/edk/js 78 'target_name': 'mojo_js_lib', 79 'type': 'static_library', 80 'dependencies': [ 81 '../base/base.gyp:base', 82 '../gin/gin.gyp:gin', 83 '../v8/src/v8.gyp:v8', 84 ], 85 'export_dependent_settings': [ 86 '../base/base.gyp:base', 87 '../gin/gin.gyp:gin', 88 ], 89 'sources': [ 90 # Sources list duplicated in GN build. 91 'edk/js/core.cc', 92 'edk/js/core.h', 93 'edk/js/drain_data.cc', 94 'edk/js/drain_data.h', 95 'edk/js/handle.cc', 96 'edk/js/handle.h', 97 'edk/js/handle_close_observer.h', 98 'edk/js/mojo_runner_delegate.cc', 99 'edk/js/mojo_runner_delegate.h', 100 'edk/js/support.cc', 101 'edk/js/support.h', 102 'edk/js/threading.cc', 103 'edk/js/threading.h', 104 'edk/js/waiting_callback.cc', 105 'edk/js/waiting_callback.h', 106 ], 107 }, 108 { 109 # GN version: //mojo/edk/test:test_support_impl 110 'target_name': 'mojo_test_support_impl', 111 'type': 'static_library', 112 'dependencies': [ 113 '../base/base.gyp:base', 114 ], 115 'sources': [ 116 'edk/test/test_support_impl.cc', 117 'edk/test/test_support_impl.h', 118 ], 119 }, 120 { 121 # GN version: //mojo/edk/test:test_support 122 'target_name': 'mojo_common_test_support', 123 'type': 'static_library', 124 'dependencies': [ 125 '../base/base.gyp:base', 126 '../base/base.gyp:test_support_base', 127 '../testing/gtest.gyp:gtest', 128 'mojo_system_impl', 129 ], 130 'sources': [ 131 'edk/test/mojo_test_base.cc', 132 'edk/test/mojo_test_base.h', 133 'edk/test/multiprocess_test_helper.cc', 134 'edk/test/multiprocess_test_helper.h', 135 'edk/test/scoped_ipc_support.cc', 136 'edk/test/scoped_ipc_support.h', 137 'edk/test/test_utils.h', 138 'edk/test/test_utils_posix.cc', 139 'edk/test/test_utils_win.cc', 140 ], 141 'conditions': [ 142 ['OS=="ios"', { 143 'sources!': [ 144 'edk/test/multiprocess_test_helper.cc', 145 ], 146 }], 147 ], 148 }, 149 { 150 # GN version: //mojo/edk/test:run_all_unittests 151 'target_name': 'mojo_run_all_unittests', 152 'type': 'static_library', 153 'dependencies': [ 154 '../base/base.gyp:base', 155 '../base/base.gyp:test_support_base', 156 '../testing/gtest.gyp:gtest', 157 'mojo_common_test_support', 158 'mojo_public.gyp:mojo_public_test_support', 159 'mojo_system_impl', 160 'mojo_test_support_impl', 161 ], 162 'sources': [ 163 'edk/test/run_all_unittests.cc', 164 ], 165 }, 166 { 167 # GN version: //mojo/edk/test:run_all_perftests 168 'target_name': 'mojo_run_all_perftests', 169 'type': 'static_library', 170 'dependencies': [ 171 '../base/base.gyp:base', 172 '../base/base.gyp:test_support_base', 173 '../testing/gtest.gyp:gtest', 174 'mojo_common_test_support', 175 'mojo_public.gyp:mojo_public_test_support', 176 'mojo_system_impl', 177 'mojo_test_support_impl', 178 ], 179 'sources': [ 180 'edk/test/run_all_perftests.cc', 181 ], 182 }, 183 ], 184 'conditions': [ 185 ['OS == "win" and target_arch=="ia32"', { 186 'targets': [ 187 { 188 # GN version: //mojo/edk/system/ports 189 'target_name': 'mojo_system_ports_win64', 190 'type': 'static_library', 191 'dependencies': [ 192 '../base/base.gyp:base_win64', 193 '../crypto/crypto.gyp:crypto_nacl_win64', 194 ], 195 'sources': [ 196 '<@(mojo_edk_ports_sources)', 197 ], 198 'configurations': { 199 'Common_Base': { 200 'msvs_target_platform': 'x64', 201 }, 202 }, 203 }, 204 { 205 # GN version: //mojo/edk/system 206 'target_name': 'mojo_system_impl_win64', 207 'type': '<(component)', 208 'dependencies': [ 209 '../base/base.gyp:base_win64', 210 '../crypto/crypto.gyp:crypto_nacl_win64', 211 'mojo_public.gyp:mojo_public_system_win64', 212 'mojo_system_ports_win64', 213 ], 214 'defines': [ 215 'MOJO_SYSTEM_IMPL_IMPLEMENTATION', 216 ], 217 'sources': [ 218 '<@(mojo_edk_system_impl_sources)', 219 '<@(mojo_edk_system_impl_non_nacl_sources)', 220 ], 221 # Structure was padded due to __declspec(align()), which is 222 # uninteresting. 223 'msvs_disabled_warnings': [ 4324 ], 224 'configurations': { 225 'Common_Base': { 226 'msvs_target_platform': 'x64', 227 }, 228 }, 229 }, 230 ], 231 }], 232 ] 233} 234