| Index: mojo/edk/mojo_edk.gyp
 | 
| diff --git a/mojo/edk/mojo_edk.gyp b/mojo/edk/mojo_edk.gyp
 | 
| index 05bde042f76bc885086e88384052784d517768cb..e82689372a52aef96b22ccb5945d3121be2a4d95 100644
 | 
| --- a/mojo/edk/mojo_edk.gyp
 | 
| +++ b/mojo/edk/mojo_edk.gyp
 | 
| @@ -2,12 +2,196 @@
 | 
|  # Use of this source code is governed by a BSD-style license that can be
 | 
|  # found in the LICENSE file.
 | 
|  
 | 
| +# Essential components (and their tests) that are needed to build
 | 
| +# Chrome should be here.  Other components that are useful only in
 | 
| +# Mojo land like mojo_shell should be in mojo.gyp.
 | 
|  {
 | 
|    'includes': [
 | 
|      '../mojo_variables.gypi',
 | 
|    ],
 | 
|    'targets': [
 | 
|      {
 | 
| +      'target_name': 'mojo_edk',
 | 
| +      'type': 'none',
 | 
| +      'dependencies': [
 | 
| +        # NOTE: If adding a new dependency here, please consider whether it
 | 
| +        # should also be added to the list of Mojo-related dependencies of
 | 
| +        # build/all.gyp:All on iOS, as All cannot depend on the mojo_base
 | 
| +        # target on iOS due to the presence of the js targets, which cause v8
 | 
| +        # to be built.
 | 
| +        'mojo_message_pipe_perftests',
 | 
| +        'mojo_public_application_unittests',
 | 
| +        'mojo_public_bindings_unittests',
 | 
| +        'mojo_public_environment_unittests',
 | 
| +        'mojo_public_system_perftests',
 | 
| +        'mojo_public_system_unittests',
 | 
| +        'mojo_public_utility_unittests',
 | 
| +        'mojo_system_impl',
 | 
| +        'mojo_system_unittests',
 | 
| +        'mojo_js_unittests',
 | 
| +      ],
 | 
| +    },
 | 
| +    {
 | 
| +      'target_name': 'mojo_none',
 | 
| +      'type': 'none',
 | 
| +    },
 | 
| +    {
 | 
| +      # 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_system_impl',
 | 
| +        'mojo_test_support_impl',
 | 
| +        '../public/mojo_public.gyp:mojo_test_support',
 | 
| +      ],
 | 
| +      'sources': [
 | 
| +        '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:test_support_base',
 | 
| +        'mojo_system_impl',
 | 
| +        'mojo_test_support_impl',
 | 
| +        '../public/mojo_public.gyp:mojo_test_support',
 | 
| +      ],
 | 
| +      'sources': [
 | 
| +        'test/run_all_perftests.cc',
 | 
| +      ],
 | 
| +    },
 | 
| +    # TODO(vtl): Reorganize the mojo_public_*_unittests.
 | 
| +    {
 | 
| +      # GN version: //mojo/public/cpp/bindings/tests:mojo_public_bindings_unittests
 | 
| +      'target_name': 'mojo_public_bindings_unittests',
 | 
| +      'type': 'executable',
 | 
| +      'dependencies': [
 | 
| +        '../../testing/gtest.gyp:gtest',
 | 
| +        'mojo_run_all_unittests',
 | 
| +        '../public/mojo_public.gyp:mojo_cpp_bindings',
 | 
| +        '../public/mojo_public.gyp:mojo_environment_standalone',
 | 
| +        '../public/mojo_public.gyp:mojo_public_bindings_test_utils',
 | 
| +        '../public/mojo_public.gyp:mojo_public_test_interfaces',
 | 
| +        '../public/mojo_public.gyp:mojo_public_test_utils',
 | 
| +        '../public/mojo_public.gyp:mojo_utility',
 | 
| +      ],
 | 
| +      'sources': [
 | 
| +        '../public/cpp/bindings/tests/array_unittest.cc',
 | 
| +        '../public/cpp/bindings/tests/bounds_checker_unittest.cc',
 | 
| +        '../public/cpp/bindings/tests/buffer_unittest.cc',
 | 
| +        '../public/cpp/bindings/tests/connector_unittest.cc',
 | 
| +        '../public/cpp/bindings/tests/container_test_util.cc',
 | 
| +        '../public/cpp/bindings/tests/equals_unittest.cc',
 | 
| +        '../public/cpp/bindings/tests/handle_passing_unittest.cc',
 | 
| +        '../public/cpp/bindings/tests/interface_ptr_unittest.cc',
 | 
| +        '../public/cpp/bindings/tests/map_unittest.cc',
 | 
| +        '../public/cpp/bindings/tests/request_response_unittest.cc',
 | 
| +        '../public/cpp/bindings/tests/router_unittest.cc',
 | 
| +        '../public/cpp/bindings/tests/sample_service_unittest.cc',
 | 
| +        '../public/cpp/bindings/tests/serialization_warning_unittest.cc',
 | 
| +        '../public/cpp/bindings/tests/string_unittest.cc',
 | 
| +        '../public/cpp/bindings/tests/struct_unittest.cc',
 | 
| +        '../public/cpp/bindings/tests/type_conversion_unittest.cc',
 | 
| +        '../public/cpp/bindings/tests/validation_unittest.cc',
 | 
| +      ],
 | 
| +    },
 | 
| +    {
 | 
| +      # GN version: //mojo/public/cpp/environment/tests:mojo_public_environment_unittests
 | 
| +      'target_name': 'mojo_public_environment_unittests',
 | 
| +      'type': 'executable',
 | 
| +      'dependencies': [
 | 
| +        '../../testing/gtest.gyp:gtest',
 | 
| +        'mojo_run_all_unittests',
 | 
| +        '../public/mojo_public.gyp:mojo_environment_standalone',
 | 
| +        '../public/mojo_public.gyp:mojo_public_test_utils',
 | 
| +        '../public/mojo_public.gyp:mojo_utility',
 | 
| +      ],
 | 
| +      'include_dirs': [ '../..' ],
 | 
| +      'sources': [
 | 
| +        '../public/cpp/environment/tests/async_wait_unittest.cc',
 | 
| +        '../public/cpp/environment/tests/async_waiter_unittest.cc',
 | 
| +        '../public/cpp/environment/tests/logger_unittest.cc',
 | 
| +        '../public/cpp/environment/tests/logging_unittest.cc',
 | 
| +      ],
 | 
| +    },
 | 
| +    {
 | 
| +      # GN version: //mojo/public/cpp/application/tests:mojo_public_application_unittests
 | 
| +      'target_name': 'mojo_public_application_unittests',
 | 
| +      'type': 'executable',
 | 
| +      'dependencies': [
 | 
| +        '../../base/base.gyp:base',
 | 
| +        '../../testing/gtest.gyp:gtest',
 | 
| +        'mojo_run_all_unittests',
 | 
| +        '../public/mojo_public.gyp:mojo_application_standalone',
 | 
| +        '../public/mojo_public.gyp:mojo_utility',
 | 
| +        '../public/mojo_public.gyp:mojo_environment_standalone',
 | 
| +      ],
 | 
| +      'sources': [
 | 
| +        '../public/cpp/application/tests/service_registry_unittest.cc',
 | 
| +      ],
 | 
| +    },
 | 
| +    {
 | 
| +      # GN version: //mojo/public/cpp/application/tests:mojo_public_system_unittests
 | 
| +      'target_name': 'mojo_public_system_unittests',
 | 
| +      'type': 'executable',
 | 
| +      'dependencies': [
 | 
| +        '../../testing/gtest.gyp:gtest',
 | 
| +        'mojo_run_all_unittests',
 | 
| +        '../public/mojo_public.gyp:mojo_public_test_utils',
 | 
| +      ],
 | 
| +      'include_dirs': [ '../..' ],
 | 
| +      'sources': [
 | 
| +        '<@(mojo_public_system_unittest_sources)',
 | 
| +      ],
 | 
| +    },
 | 
| +    {
 | 
| +      # GN version: //mojo/public/cpp/application/tests:mojo_public_utility_unittests
 | 
| +      'target_name': 'mojo_public_utility_unittests',
 | 
| +      'type': 'executable',
 | 
| +      'dependencies': [
 | 
| +        '../../testing/gtest.gyp:gtest',
 | 
| +        'mojo_run_all_unittests',
 | 
| +        '../public/mojo_public.gyp:mojo_public_test_utils',
 | 
| +        '../public/mojo_public.gyp:mojo_utility',
 | 
| +      ],
 | 
| +      'include_dirs': [ '../..' ],
 | 
| +      'sources': [
 | 
| +        '../public/cpp/utility/tests/mutex_unittest.cc',
 | 
| +        '../public/cpp/utility/tests/run_loop_unittest.cc',
 | 
| +        '../public/cpp/utility/tests/thread_unittest.cc',
 | 
| +      ],
 | 
| +      'conditions': [
 | 
| +        # See crbug.com/342893:
 | 
| +        ['OS=="win"', {
 | 
| +          'sources!': [
 | 
| +            '../public/cpp/utility/tests/mutex_unittest.cc',
 | 
| +            '../public/cpp/utility/tests/thread_unittest.cc',
 | 
| +          ],
 | 
| +        }],
 | 
| +      ],
 | 
| +    },
 | 
| +    {
 | 
| +      # GN version: //mojo/public/c/system/tests:perftests
 | 
| +      'target_name': 'mojo_public_system_perftests',
 | 
| +      'type': 'executable',
 | 
| +      'dependencies': [
 | 
| +        '../../base/base.gyp:base',
 | 
| +        '../../testing/gtest.gyp:gtest',
 | 
| +        'mojo_run_all_perftests',
 | 
| +        '../public/mojo_public.gyp:mojo_public_test_utils',
 | 
| +        '../public/mojo_public.gyp:mojo_utility',
 | 
| +      ],
 | 
| +      'sources': [
 | 
| +        '../public/c/system/tests/core_perftest.cc',
 | 
| +      ],
 | 
| +    },
 | 
| +
 | 
| +    {
 | 
|        # GN version: //mojo/edk/system
 | 
|        'target_name': 'mojo_system_impl',
 | 
|        'type': '<(component)',
 | 
| @@ -21,14 +205,11 @@
 | 
|          'MOJO_USE_SYSTEM_IMPL',
 | 
|        ],
 | 
|        'sources': [
 | 
| -        'embedder/configuration.h',
 | 
|          'embedder/channel_info_forward.h',
 | 
|          'embedder/channel_init.cc',
 | 
|          'embedder/channel_init.h',
 | 
|          'embedder/embedder.cc',
 | 
|          'embedder/embedder.h',
 | 
| -        'embedder/embedder_internal.h',
 | 
| -        'embedder/entrypoints.cc',
 | 
|          'embedder/platform_channel_pair.cc',
 | 
|          'embedder/platform_channel_pair.h',
 | 
|          'embedder/platform_channel_pair_posix.cc',
 | 
| @@ -58,10 +239,7 @@
 | 
|          'system/channel_endpoint_id.h',
 | 
|          'system/channel_info.cc',
 | 
|          'system/channel_info.h',
 | 
| -        'system/channel_manager.cc',
 | 
| -        'system/channel_manager.h',
 | 
| -        'system/configuration.cc',
 | 
| -        'system/configuration.h',
 | 
| +        'system/constants.h',
 | 
|          'system/core.cc',
 | 
|          'system/core.h',
 | 
|          'system/data_pipe.cc',
 | 
| @@ -72,6 +250,7 @@
 | 
|          'system/data_pipe_producer_dispatcher.h',
 | 
|          'system/dispatcher.cc',
 | 
|          'system/dispatcher.h',
 | 
| +        'system/entrypoints.cc',
 | 
|          'system/handle_signals_state.h',
 | 
|          'system/handle_table.cc',
 | 
|          'system/handle_table.h',
 | 
| @@ -125,6 +304,77 @@
 | 
|        }
 | 
|      },
 | 
|      {
 | 
| +      # GN version: //mojo/edk/system:mojo_system_unittests
 | 
| +      'target_name': 'mojo_system_unittests',
 | 
| +      'type': 'executable',
 | 
| +      'dependencies': [
 | 
| +        '../../base/base.gyp:base',
 | 
| +        '../../testing/gtest.gyp:gtest',
 | 
| +        'mojo_common_test_support',
 | 
| +        'mojo_system_impl',
 | 
| +      ],
 | 
| +      'sources': [
 | 
| +        'embedder/embedder_unittest.cc',
 | 
| +        'embedder/platform_channel_pair_posix_unittest.cc',
 | 
| +        'embedder/simple_platform_shared_buffer_unittest.cc',
 | 
| +        'system/channel_endpoint_id_unittest.cc',
 | 
| +        'system/channel_unittest.cc',
 | 
| +        'system/core_unittest.cc',
 | 
| +        'system/core_test_base.cc',
 | 
| +        'system/core_test_base.h',
 | 
| +        'system/data_pipe_unittest.cc',
 | 
| +        'system/dispatcher_unittest.cc',
 | 
| +        'system/local_data_pipe_unittest.cc',
 | 
| +        'system/memory_unittest.cc',
 | 
| +        'system/message_pipe_dispatcher_unittest.cc',
 | 
| +        'system/message_pipe_test_utils.h',
 | 
| +        'system/message_pipe_test_utils.cc',
 | 
| +        'system/message_pipe_unittest.cc',
 | 
| +        'system/multiprocess_message_pipe_unittest.cc',
 | 
| +        'system/options_validation_unittest.cc',
 | 
| +        'system/platform_handle_dispatcher_unittest.cc',
 | 
| +        'system/raw_channel_unittest.cc',
 | 
| +        'system/remote_message_pipe_unittest.cc',
 | 
| +        'system/run_all_unittests.cc',
 | 
| +        'system/shared_buffer_dispatcher_unittest.cc',
 | 
| +        'system/simple_dispatcher_unittest.cc',
 | 
| +        'system/test_utils.cc',
 | 
| +        'system/test_utils.h',
 | 
| +        'system/waiter_list_unittest.cc',
 | 
| +        'system/waiter_test_utils.cc',
 | 
| +        'system/waiter_test_utils.h',
 | 
| +        'system/waiter_unittest.cc',
 | 
| +      ],
 | 
| +      'conditions': [
 | 
| +        ['OS=="ios"', {
 | 
| +          'sources!': [
 | 
| +            'embedder/embedder_unittest.cc',
 | 
| +            'system/multiprocess_message_pipe_unittest.cc',
 | 
| +          ],
 | 
| +        }],
 | 
| +      ],
 | 
| +    },
 | 
| +    {
 | 
| +      # GN version: //mojo/edk/system:mojo_message_pipe_perftests
 | 
| +      'target_name': 'mojo_message_pipe_perftests',
 | 
| +      'type': 'executable',
 | 
| +      'dependencies': [
 | 
| +        '../../base/base.gyp:base',
 | 
| +        '../../base/base.gyp:test_support_base',
 | 
| +        '../../base/base.gyp:test_support_perf',
 | 
| +        '../../testing/gtest.gyp:gtest',
 | 
| +        'mojo_common_test_support',
 | 
| +        'mojo_system_impl',
 | 
| +      ],
 | 
| +      'sources': [
 | 
| +        'system/message_pipe_perftest.cc',
 | 
| +        'system/message_pipe_test_utils.h',
 | 
| +        'system/message_pipe_test_utils.cc',
 | 
| +        'system/test_utils.cc',
 | 
| +        'system/test_utils.h',
 | 
| +      ],
 | 
| +    },
 | 
| +    {
 | 
|        # GN version: //mojo/edk/js
 | 
|        'target_name': 'mojo_js_lib',
 | 
|        'type': 'static_library',
 | 
| @@ -146,18 +396,32 @@
 | 
|          'js/handle.cc',
 | 
|          'js/handle.h',
 | 
|          'js/handle_close_observer.h',
 | 
| -        'js/mojo_runner_delegate.cc',
 | 
| -        'js/mojo_runner_delegate.h',
 | 
|          'js/support.cc',
 | 
|          'js/support.h',
 | 
| -        'js/threading.cc',
 | 
| -        'js/threading.h',
 | 
|          'js/waiting_callback.cc',
 | 
|          'js/waiting_callback.h',
 | 
|        ],
 | 
|      },
 | 
|      {
 | 
| -      # GN version: //mojo/edk/test:test_support_impl
 | 
| +      # GN version: //mojo/edk/js:js_unittests
 | 
| +      'target_name': 'mojo_js_unittests',
 | 
| +      'type': 'executable',
 | 
| +      'dependencies': [
 | 
| +        '../../gin/gin.gyp:gin_test',
 | 
| +        'mojo_common_test_support',
 | 
| +        'mojo_run_all_unittests',
 | 
| +        'mojo_js_lib',
 | 
| +        '../public/mojo_public.gyp:mojo_environment_standalone',
 | 
| +        '../public/mojo_public.gyp:mojo_public_test_interfaces',
 | 
| +        '../public/mojo_public.gyp:mojo_utility',
 | 
| +      ],
 | 
| +      'sources': [
 | 
| +        'js/handle_unittest.cc',
 | 
| +        'js/tests/run_js_tests.cc',
 | 
| +      ],
 | 
| +    },
 | 
| +    {
 | 
| +      # GN version: //mojo/common/test:test_support_impl
 | 
|        'target_name': 'mojo_test_support_impl',
 | 
|        'type': 'static_library',
 | 
|        'dependencies': [
 | 
| @@ -193,35 +457,5 @@
 | 
|          }],
 | 
|        ],
 | 
|      },
 | 
| -    {
 | 
| -      # 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_system_impl',
 | 
| -        'mojo_test_support_impl',
 | 
| -        '../public/mojo_public.gyp:mojo_test_support',
 | 
| -      ],
 | 
| -      'sources': [
 | 
| -        '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:test_support_base',
 | 
| -        'mojo_edk.gyp:mojo_system_impl',
 | 
| -        'mojo_test_support_impl',
 | 
| -        '../public/mojo_public.gyp:mojo_test_support',
 | 
| -      ],
 | 
| -      'sources': [
 | 
| -        'test/run_all_perftests.cc',
 | 
| -      ],
 | 
| -    },
 | 
|    ],
 | 
|  }
 | 
| 
 |