Home | History | Annotate | Download | only in components
      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: //components/gcm_driver
      9       'target_name': 'gcm_driver',
     10       'type': 'static_library',
     11       'dependencies': [
     12         'os_crypt',
     13         '../base/base.gyp:base',
     14         '../google_apis/gcm/gcm.gyp:gcm',
     15         '../net/net.gyp:net',
     16         '../sync/sync.gyp:sync_proto',
     17       ],
     18       'include_dirs': [
     19         '..',
     20       ],
     21       'sources': [
     22          # Note: file list duplicated in GN build.
     23         'gcm_driver/android/component_jni_registrar.cc',
     24         'gcm_driver/android/component_jni_registrar.h',
     25         'gcm_driver/default_gcm_app_handler.cc',
     26         'gcm_driver/default_gcm_app_handler.h',
     27         'gcm_driver/gcm_account_mapper.cc',
     28         'gcm_driver/gcm_account_mapper.h',
     29         'gcm_driver/gcm_activity.cc',
     30         'gcm_driver/gcm_activity.h',
     31         'gcm_driver/gcm_app_handler.cc',
     32         'gcm_driver/gcm_app_handler.h',
     33         'gcm_driver/gcm_backoff_policy.cc',
     34         'gcm_driver/gcm_backoff_policy.h',
     35         'gcm_driver/gcm_channel_status_request.cc',
     36         'gcm_driver/gcm_channel_status_request.h',
     37         'gcm_driver/gcm_channel_status_syncer.cc',
     38         'gcm_driver/gcm_channel_status_syncer.h',
     39         'gcm_driver/gcm_client.cc',
     40         'gcm_driver/gcm_client.h',
     41         'gcm_driver/gcm_client_factory.cc',
     42         'gcm_driver/gcm_client_factory.h',
     43         'gcm_driver/gcm_client_impl.cc',
     44         'gcm_driver/gcm_client_impl.h',
     45         'gcm_driver/gcm_connection_observer.cc',
     46         'gcm_driver/gcm_connection_observer.h',
     47         'gcm_driver/gcm_delayed_task_controller.cc',
     48         'gcm_driver/gcm_delayed_task_controller.h',
     49         'gcm_driver/gcm_driver.cc',
     50         'gcm_driver/gcm_driver.h',
     51         'gcm_driver/gcm_driver_android.cc',
     52         'gcm_driver/gcm_driver_android.h',
     53         'gcm_driver/gcm_driver_desktop.cc',
     54         'gcm_driver/gcm_driver_desktop.h',
     55         'gcm_driver/gcm_stats_recorder_impl.cc',
     56         'gcm_driver/gcm_stats_recorder_impl.h',
     57         'gcm_driver/system_encryptor.cc',
     58         'gcm_driver/system_encryptor.h',
     59       ],
     60       'variables': {
     61         'proto_in_dir': 'gcm_driver/proto',
     62         'proto_out_dir': 'components/gcm_driver/proto',
     63       },
     64       'includes': [ '../build/protoc.gypi' ],
     65       'conditions': [
     66         ['OS == "android"', {
     67           'dependencies': [
     68             'gcm_driver_jni_headers',
     69           ],
     70           'dependencies!': [
     71             '../google_apis/gcm/gcm.gyp:gcm',
     72           ],
     73           'sources!': [
     74             'gcm_driver/gcm_account_mapper.cc',
     75             'gcm_driver/gcm_account_mapper.h',
     76             'gcm_driver/gcm_channel_status_request.cc',
     77             'gcm_driver/gcm_channel_status_request.h',
     78             'gcm_driver/gcm_channel_status_syncer.cc',
     79             'gcm_driver/gcm_channel_status_syncer.h',
     80             'gcm_driver/gcm_client_factory.cc',
     81             'gcm_driver/gcm_client_factory.h',
     82             'gcm_driver/gcm_client_impl.cc',
     83             'gcm_driver/gcm_client_impl.h',
     84             'gcm_driver/gcm_delayed_task_controller.cc',
     85             'gcm_driver/gcm_delayed_task_controller.h',
     86             'gcm_driver/gcm_driver_desktop.cc',
     87             'gcm_driver/gcm_driver_desktop.h',
     88             'gcm_driver/gcm_stats_recorder_impl.cc',
     89             'gcm_driver/gcm_stats_recorder_impl.h',
     90             'gcm_driver/proto/gcm_channel_status.proto',
     91           ],
     92         }],
     93       ],
     94     },
     95     {
     96       # GN version: //components/gcm_driver:test_support
     97       'target_name': 'gcm_driver_test_support',
     98       'type': 'static_library',
     99       'dependencies': [
    100         'gcm_driver',
    101         '../base/base.gyp:base',
    102         '../google_apis/gcm/gcm.gyp:gcm_test_support',
    103         '../testing/gtest.gyp:gtest',
    104       ],
    105       'include_dirs': [
    106         '..',
    107       ],
    108       'sources': [
    109         # Note: file list duplicated in GN build.
    110         'gcm_driver/fake_gcm_app_handler.cc',
    111         'gcm_driver/fake_gcm_app_handler.h',
    112         'gcm_driver/fake_gcm_client.cc',
    113         'gcm_driver/fake_gcm_client.h',
    114         'gcm_driver/fake_gcm_client_factory.cc',
    115         'gcm_driver/fake_gcm_client_factory.h',
    116         'gcm_driver/fake_gcm_driver.cc',
    117         'gcm_driver/fake_gcm_driver.h',
    118       ],
    119       'conditions': [
    120         ['OS == "android"', {
    121           'dependencies!': [
    122             '../google_apis/gcm/gcm.gyp:gcm_test_support',
    123           ],
    124           'sources!': [
    125             'gcm_driver/fake_gcm_client.cc',
    126             'gcm_driver/fake_gcm_client.h',
    127             'gcm_driver/fake_gcm_client_factory.cc',
    128             'gcm_driver/fake_gcm_client_factory.h',
    129           ],
    130         }],
    131       ],
    132     },
    133   ],
    134   'conditions': [
    135     ['OS == "android"', {
    136       'targets': [
    137         {
    138           'target_name': 'gcm_driver_java',
    139           'type': 'none',
    140           'dependencies': [
    141             '../base/base.gyp:base',
    142             # TODO(johnme): Fix the layering violation of depending on content/
    143             '../content/content.gyp:content_java',
    144             '../sync/sync.gyp:sync_java',
    145           ],
    146           'variables': {
    147             'java_in_dir': 'gcm_driver/android/java',
    148           },
    149           'includes': [ '../build/java.gypi' ],
    150         },
    151         {
    152           # GN version: //components/gcm_driver:jni_headers
    153           'target_name': 'gcm_driver_jni_headers',
    154           'type': 'none',
    155           'sources': [
    156             'gcm_driver/android/java/src/org/chromium/components/gcm_driver/GCMDriver.java',
    157           ],
    158           'variables': {
    159             'jni_gen_package': 'components/gcm_driver',
    160           },
    161           'includes': [ '../build/jni_generator.gypi' ],
    162         },
    163       ],
    164      },
    165     ],
    166   ],
    167 }
    168