Home | History | Annotate | Download | only in mojo
      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