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/public/c/system 9 'target_name': 'mojo_system', 10 'type': 'static_library', 11 'defines': [ 12 'MOJO_SYSTEM_IMPLEMENTATION', 13 ], 14 'include_dirs': [ 15 '..', 16 ], 17 'direct_dependent_settings': { 18 'include_dirs': [ 19 '..', 20 ], 21 }, 22 'all_dependent_settings': { 23 'conditions': [ 24 # We need to be able to call the MojoSetSystemThunks() function in 25 # system_thunks.cc 26 ['OS=="android"', { 27 'ldflags!': [ 28 '-Wl,--exclude-libs=ALL', 29 ], 30 }], 31 ], 32 }, 33 'sources': [ 34 'public/c/system/buffer.h', 35 'public/c/system/core.h', 36 'public/c/system/data_pipe.h', 37 'public/c/system/functions.h', 38 'public/c/system/macros.h', 39 'public/c/system/message_pipe.h', 40 'public/c/system/system_export.h', 41 'public/c/system/types.h', 42 'public/platform/native/system_thunks.cc', 43 'public/platform/native/system_thunks.h', 44 ], 45 }, 46 { 47 # GN version: //mojo/public/cpp/bindings 48 'target_name': 'mojo_cpp_bindings', 49 'type': 'static_library', 50 'include_dirs': [ 51 '..' 52 ], 53 'sources': [ 54 'public/cpp/bindings/array.h', 55 'public/cpp/bindings/callback.h', 56 'public/cpp/bindings/error_handler.h', 57 'public/cpp/bindings/interface_impl.h', 58 'public/cpp/bindings/interface_ptr.h', 59 'public/cpp/bindings/interface_request.h', 60 'public/cpp/bindings/message.h', 61 'public/cpp/bindings/message_filter.h', 62 'public/cpp/bindings/no_interface.h', 63 'public/cpp/bindings/string.h', 64 'public/cpp/bindings/type_converter.h', 65 'public/cpp/bindings/lib/array_internal.h', 66 'public/cpp/bindings/lib/array_internal.cc', 67 'public/cpp/bindings/lib/array_serialization.h', 68 'public/cpp/bindings/lib/bindings_internal.h', 69 'public/cpp/bindings/lib/bindings_serialization.cc', 70 'public/cpp/bindings/lib/bindings_serialization.h', 71 'public/cpp/bindings/lib/bounds_checker.cc', 72 'public/cpp/bindings/lib/bounds_checker.h', 73 'public/cpp/bindings/lib/buffer.h', 74 'public/cpp/bindings/lib/callback_internal.h', 75 'public/cpp/bindings/lib/connector.cc', 76 'public/cpp/bindings/lib/connector.h', 77 'public/cpp/bindings/lib/filter_chain.cc', 78 'public/cpp/bindings/lib/filter_chain.h', 79 'public/cpp/bindings/lib/fixed_buffer.cc', 80 'public/cpp/bindings/lib/fixed_buffer.h', 81 'public/cpp/bindings/lib/interface_impl_internal.h', 82 'public/cpp/bindings/lib/interface_ptr_internal.h', 83 'public/cpp/bindings/lib/message.cc', 84 'public/cpp/bindings/lib/message_builder.cc', 85 'public/cpp/bindings/lib/message_builder.h', 86 'public/cpp/bindings/lib/message_filter.cc', 87 'public/cpp/bindings/lib/message_header_validator.cc', 88 'public/cpp/bindings/lib/message_header_validator.h', 89 'public/cpp/bindings/lib/message_internal.h', 90 'public/cpp/bindings/lib/message_queue.cc', 91 'public/cpp/bindings/lib/message_queue.h', 92 'public/cpp/bindings/lib/no_interface.cc', 93 'public/cpp/bindings/lib/router.cc', 94 'public/cpp/bindings/lib/router.h', 95 'public/cpp/bindings/lib/shared_data.h', 96 'public/cpp/bindings/lib/shared_ptr.h', 97 'public/cpp/bindings/lib/string_serialization.h', 98 'public/cpp/bindings/lib/string_serialization.cc', 99 'public/cpp/bindings/lib/validation_errors.cc', 100 'public/cpp/bindings/lib/validation_errors.h', 101 ], 102 }, 103 { 104 # GN version: //mojo/public/js/bindings 105 'target_name': 'mojo_js_bindings', 106 'type': 'static_library', 107 'include_dirs': [ 108 '..' 109 ], 110 'sources': [ 111 'public/js/bindings/constants.cc', 112 'public/js/bindings/constants.h', 113 ], 114 }, 115 { 116 # GN version: //mojo/public/cpp/environment:standalone 117 'target_name': 'mojo_environment_standalone', 118 'type': 'static_library', 119 'sources': [ 120 'public/c/environment/async_waiter.h', 121 'public/c/environment/logger.h', 122 'public/cpp/environment/environment.h', 123 'public/cpp/environment/lib/default_async_waiter.cc', 124 'public/cpp/environment/lib/default_async_waiter.h', 125 'public/cpp/environment/lib/default_logger.cc', 126 'public/cpp/environment/lib/default_logger.h', 127 'public/cpp/environment/lib/environment.cc', 128 'public/cpp/environment/lib/logging.cc', 129 'public/cpp/environment/logging.h', 130 ], 131 'include_dirs': [ 132 '..', 133 ], 134 }, 135 { 136 # GN version: //mojo/public/cpp/utility 137 'target_name': 'mojo_utility', 138 'type': 'static_library', 139 'sources': [ 140 'public/cpp/utility/mutex.h', 141 'public/cpp/utility/run_loop.h', 142 'public/cpp/utility/run_loop_handler.h', 143 'public/cpp/utility/thread.h', 144 'public/cpp/utility/lib/mutex.cc', 145 'public/cpp/utility/lib/run_loop.cc', 146 'public/cpp/utility/lib/thread.cc', 147 'public/cpp/utility/lib/thread_local.h', 148 'public/cpp/utility/lib/thread_local_posix.cc', 149 'public/cpp/utility/lib/thread_local_win.cc', 150 ], 151 'conditions': [ 152 # See crbug.com/342893: 153 ['OS=="win"', { 154 'sources!': [ 155 'public/cpp/utility/mutex.h', 156 'public/cpp/utility/thread.h', 157 'public/cpp/utility/lib/mutex.cc', 158 'public/cpp/utility/lib/thread.cc', 159 ], 160 }], 161 ], 162 'include_dirs': [ 163 '..', 164 ], 165 }, 166 { 167 # GN version: //mojo/public/interfaces/application:application 168 'target_name': 'mojo_application_bindings', 169 'type': 'static_library', 170 'sources': [ 171 'public/interfaces/application/application.mojom', 172 'public/interfaces/application/service_provider.mojom', 173 'public/interfaces/application/shell.mojom', 174 ], 175 'includes': [ 'public/tools/bindings/mojom_bindings_generator.gypi' ], 176 'dependencies': [ 177 'mojo_cpp_bindings', 178 ], 179 'export_dependent_settings': [ 180 'mojo_cpp_bindings', 181 ], 182 }, 183 { 184 # GN version: //mojo/public/cpp/application 185 'target_name': 'mojo_application_base', 186 'type': 'static_library', 187 'sources': [ 188 'public/cpp/application/application_connection.h', 189 'public/cpp/application/application_delegate.h', 190 'public/cpp/application/application_impl.h', 191 'public/cpp/application/connect.h', 192 'public/cpp/application/service_provider_impl.h', 193 'public/cpp/application/interface_factory.h', 194 'public/cpp/application/interface_factory_impl.h', 195 'public/cpp/application/lib/application_connection.cc', 196 'public/cpp/application/lib/application_delegate.cc', 197 'public/cpp/application/lib/application_impl.cc', 198 'public/cpp/application/lib/service_provider_impl.cc', 199 'public/cpp/application/lib/service_connector.cc', 200 'public/cpp/application/lib/service_connector.h', 201 'public/cpp/application/lib/service_registry.cc', 202 'public/cpp/application/lib/service_registry.h', 203 'public/cpp/application/lib/weak_service_provider.cc', 204 'public/cpp/application/lib/weak_service_provider.h', 205 ], 206 'dependencies': [ 207 'mojo_application_bindings', 208 ], 209 'export_dependent_settings': [ 210 'mojo_application_bindings', 211 ], 212 }, 213 { 214 # GN version: //mojo/public/cpp/application:standalone" 215 'target_name': 'mojo_application_standalone', 216 'type': 'static_library', 217 'sources': [ 218 'public/cpp/application/lib/application_runner.cc', 219 'public/cpp/application/application_runner.h', 220 ], 221 'dependencies': [ 222 'mojo_application_base', 223 'mojo_environment_standalone', 224 ], 225 'export_dependent_settings': [ 226 'mojo_application_base', 227 ], 228 }, 229 ], 230 'conditions': [ 231 ['OS == "android"', { 232 'targets': [ 233 { 234 # GN version: //mojo/public/java_system 235 'target_name': 'mojo_public_java', 236 'type': 'none', 237 'variables': { 238 'java_in_dir': 'public/java/system', 239 }, 240 'includes': [ '../build/java.gypi' ], 241 }, 242 { 243 # GN version: //mojo/public/java_bindings 244 'target_name': 'mojo_bindings_java', 245 'type': 'none', 246 'variables': { 247 'java_in_dir': 'public/java/bindings', 248 }, 249 'dependencies': [ 250 'mojo_public_java', 251 ], 252 'includes': [ '../build/java.gypi' ], 253 }, 254 ], 255 }], 256 ], 257} 258