blob: 5541839b01f8d7723707dc6de777cf069ac38753 [file] [log] [blame]
# Copyright 2015 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
{
'variables': {
'chromium_code': 1,
},
'includes': [
'mojo_edk.gypi',
],
'target_defaults' : {
'include_dirs': [
'..',
],
'direct_dependent_settings': {
'include_dirs': [
'..',
],
},
},
'targets': [
{
# GN version: //mojo/edk/system/ports
'target_name': 'mojo_system_ports',
'type': 'static_library',
'dependencies': [
'../base/base.gyp:base',
'../crypto/crypto.gyp:crypto',
],
'sources': [
'<@(mojo_edk_ports_sources)',
],
},
{
# GN version: //mojo/edk/system
'target_name': 'mojo_system_impl',
'type': '<(component)',
'dependencies': [
'../base/base.gyp:base',
'../crypto/crypto.gyp:crypto',
'mojo_public.gyp:mojo_public_system',
'mojo_system_ports',
],
'defines': [
'MOJO_SYSTEM_IMPL_IMPLEMENTATION',
],
'sources': [
'<@(mojo_edk_system_impl_sources)',
'<@(mojo_edk_system_impl_non_nacl_sources)',
],
'conditions': [
['OS=="android"', {
'dependencies': [
'../third_party/ashmem/ashmem.gyp:ashmem',
],
}],
['OS=="android" or chromeos==1', {
'defines': [
'MOJO_EDK_LEGACY_PROTOCOL',
],
}],
['OS=="win"', {
# Structure was padded due to __declspec(align()), which is
# uninteresting.
'msvs_disabled_warnings': [ 4324 ],
}],
['OS=="mac" and OS!="ios"', {
'sources': [
'edk/system/mach_port_relay.cc',
'edk/system/mach_port_relay.h',
],
}],
],
},
{
# GN version: //mojo/edk/js
'target_name': 'mojo_js_lib',
'type': 'static_library',
'dependencies': [
'../base/base.gyp:base',
'../gin/gin.gyp:gin',
'../v8/src/v8.gyp:v8',
],
'export_dependent_settings': [
'../base/base.gyp:base',
'../gin/gin.gyp:gin',
],
'sources': [
# Sources list duplicated in GN build.
'edk/js/core.cc',
'edk/js/core.h',
'edk/js/drain_data.cc',
'edk/js/drain_data.h',
'edk/js/handle.cc',
'edk/js/handle.h',
'edk/js/handle_close_observer.h',
'edk/js/mojo_runner_delegate.cc',
'edk/js/mojo_runner_delegate.h',
'edk/js/support.cc',
'edk/js/support.h',
'edk/js/threading.cc',
'edk/js/threading.h',
'edk/js/waiting_callback.cc',
'edk/js/waiting_callback.h',
],
},
{
# GN version: //mojo/edk/test:test_support_impl
'target_name': 'mojo_test_support_impl',
'type': 'static_library',
'dependencies': [
'../base/base.gyp:base',
],
'sources': [
'edk/test/test_support_impl.cc',
'edk/test/test_support_impl.h',
],
},
{
# GN version: //mojo/edk/test:test_support
'target_name': 'mojo_common_test_support',
'type': 'static_library',
'dependencies': [
'../base/base.gyp:base',
'../base/base.gyp:test_support_base',
'../testing/gtest.gyp:gtest',
'mojo_system_impl',
],
'sources': [
'edk/test/mojo_test_base.cc',
'edk/test/mojo_test_base.h',
'edk/test/multiprocess_test_helper.cc',
'edk/test/multiprocess_test_helper.h',
'edk/test/scoped_ipc_support.cc',
'edk/test/scoped_ipc_support.h',
'edk/test/test_utils.h',
'edk/test/test_utils_posix.cc',
'edk/test/test_utils_win.cc',
],
'conditions': [
['OS=="ios"', {
'sources!': [
'edk/test/multiprocess_test_helper.cc',
],
}],
],
},
{
# GN version: //mojo/edk/test:run_all_unittests
'target_name': 'mojo_run_all_unittests',
'type': 'static_library',
'dependencies': [
'../base/base.gyp:base',
'../base/base.gyp:test_support_base',
'../testing/gtest.gyp:gtest',
'mojo_common_test_support',
'mojo_public.gyp:mojo_public_test_support',
'mojo_system_impl',
'mojo_test_support_impl',
],
'sources': [
'edk/test/run_all_unittests.cc',
],
},
{
# GN version: //mojo/edk/test:run_all_perftests
'target_name': 'mojo_run_all_perftests',
'type': 'static_library',
'dependencies': [
'../base/base.gyp:base',
'../base/base.gyp:test_support_base',
'../testing/gtest.gyp:gtest',
'mojo_common_test_support',
'mojo_public.gyp:mojo_public_test_support',
'mojo_system_impl',
'mojo_test_support_impl',
],
'sources': [
'edk/test/run_all_perftests.cc',
],
},
],
'conditions': [
['OS == "win" and target_arch=="ia32"', {
'targets': [
{
# GN version: //mojo/edk/system/ports
'target_name': 'mojo_system_ports_win64',
'type': 'static_library',
'dependencies': [
'../base/base.gyp:base_win64',
'../crypto/crypto.gyp:crypto_nacl_win64',
],
'sources': [
'<@(mojo_edk_ports_sources)',
],
'configurations': {
'Common_Base': {
'msvs_target_platform': 'x64',
},
},
},
{
# GN version: //mojo/edk/system
'target_name': 'mojo_system_impl_win64',
'type': '<(component)',
'dependencies': [
'../base/base.gyp:base_win64',
'../crypto/crypto.gyp:crypto_nacl_win64',
'mojo_public.gyp:mojo_public_system_win64',
'mojo_system_ports_win64',
],
'defines': [
'MOJO_SYSTEM_IMPL_IMPLEMENTATION',
],
'sources': [
'<@(mojo_edk_system_impl_sources)',
'<@(mojo_edk_system_impl_non_nacl_sources)',
],
# Structure was padded due to __declspec(align()), which is
# uninteresting.
'msvs_disabled_warnings': [ 4324 ],
'configurations': {
'Common_Base': {
'msvs_target_platform': 'x64',
},
},
},
],
}],
]
}