• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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