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  # GN version: //components/policy/core/common
7  'dependencies': [
8    '../base/base.gyp:base',
9  ],
10  'defines': [
11    'POLICY_COMPONENT_IMPLEMENTATION',
12  ],
13  'include_dirs': [
14    '..',
15  ],
16  'conditions': [
17    ['configuration_policy==1', {
18      'dependencies': [
19        '../base/base.gyp:base_prefs',
20        '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
21        '../google_apis/google_apis.gyp:google_apis',
22        '../net/net.gyp:net',
23        '../third_party/re2/re2.gyp:re2',
24        '../url/url.gyp:url_lib',
25        'cloud_policy_proto',
26        'json_schema',
27        'policy',
28      ],
29      'sources': [
30        'core/common/cloud/cloud_external_data_manager.cc',
31        'core/common/cloud/cloud_external_data_manager.h',
32        'core/common/cloud/cloud_policy_client.cc',
33        'core/common/cloud/cloud_policy_client.h',
34        'core/common/cloud/cloud_policy_client_registration_helper.cc',
35        'core/common/cloud/cloud_policy_client_registration_helper.h',
36        'core/common/cloud/cloud_policy_constants.cc',
37        'core/common/cloud/cloud_policy_constants.h',
38        'core/common/cloud/cloud_policy_core.cc',
39        'core/common/cloud/cloud_policy_core.h',
40        'core/common/cloud/cloud_policy_manager.cc',
41        'core/common/cloud/cloud_policy_manager.h',
42        'core/common/cloud/cloud_policy_refresh_scheduler.cc',
43        'core/common/cloud/cloud_policy_refresh_scheduler.h',
44        'core/common/cloud/cloud_policy_service.cc',
45        'core/common/cloud/cloud_policy_service.h',
46        'core/common/cloud/cloud_policy_store.cc',
47        'core/common/cloud/cloud_policy_store.h',
48        'core/common/cloud/cloud_policy_validator.cc',
49        'core/common/cloud/cloud_policy_validator.h',
50        'core/common/cloud/component_cloud_policy_service.cc',
51        'core/common/cloud/component_cloud_policy_service.h',
52        'core/common/cloud/component_cloud_policy_store.cc',
53        'core/common/cloud/component_cloud_policy_store.h',
54        'core/common/cloud/component_cloud_policy_updater.cc',
55        'core/common/cloud/component_cloud_policy_updater.h',
56        'core/common/cloud/device_management_service.cc',
57        'core/common/cloud/device_management_service.h',
58        'core/common/cloud/enterprise_metrics.cc',
59        'core/common/cloud/enterprise_metrics.h',
60        'core/common/cloud/external_policy_data_fetcher.cc',
61        'core/common/cloud/external_policy_data_fetcher.h',
62        'core/common/cloud/external_policy_data_updater.cc',
63        'core/common/cloud/external_policy_data_updater.h',
64        'core/common/cloud/policy_header_io_helper.cc',
65        'core/common/cloud/policy_header_io_helper.h',
66        'core/common/cloud/policy_header_service.cc',
67        'core/common/cloud/policy_header_service.h',
68        'core/common/cloud/resource_cache.cc',
69        'core/common/cloud/resource_cache.h',
70        'core/common/cloud/system_policy_request_context.cc',
71        'core/common/cloud/system_policy_request_context.h',
72        'core/common/cloud/user_cloud_policy_manager.cc',
73        'core/common/cloud/user_cloud_policy_manager.h',
74        'core/common/cloud/user_cloud_policy_store.cc',
75        'core/common/cloud/user_cloud_policy_store.h',
76        'core/common/cloud/user_cloud_policy_store_base.cc',
77        'core/common/cloud/user_cloud_policy_store_base.h',
78        'core/common/cloud/user_info_fetcher.cc',
79        'core/common/cloud/user_info_fetcher.h',
80        'core/common/cloud/user_policy_request_context.cc',
81        'core/common/cloud/user_policy_request_context.h',
82        'core/common/async_policy_loader.cc',
83        'core/common/async_policy_loader.h',
84        'core/common/async_policy_provider.cc',
85        'core/common/async_policy_provider.h',
86        'core/common/config_dir_policy_loader.cc',
87        'core/common/config_dir_policy_loader.h',
88        'core/common/configuration_policy_provider.cc',
89        'core/common/configuration_policy_provider.h',
90        'core/common/external_data_fetcher.cc',
91        'core/common/external_data_fetcher.h',
92        'core/common/external_data_manager.h',
93        'core/common/forwarding_policy_provider.cc',
94        'core/common/forwarding_policy_provider.h',
95        'core/common/mac_util.cc',
96        'core/common/mac_util.h',
97        'core/common/policy_bundle.cc',
98        'core/common/policy_bundle.h',
99        'core/common/policy_details.h',
100        'core/common/policy_loader_ios.h',
101        'core/common/policy_loader_ios.mm',
102        'core/common/policy_loader_mac.cc',
103        'core/common/policy_loader_mac.h',
104        'core/common/policy_loader_win.cc',
105        'core/common/policy_loader_win.h',
106        'core/common/policy_load_status.cc',
107        'core/common/policy_load_status.h',
108        'core/common/policy_map.cc',
109        'core/common/policy_map.h',
110        'core/common/policy_namespace.cc',
111        'core/common/policy_namespace.h',
112        'core/common/policy_pref_names.cc',
113        'core/common/policy_pref_names.h',
114        'core/common/policy_provider_android.cc',
115        'core/common/policy_provider_android.h',
116        'core/common/policy_provider_android_delegate.h',
117        'core/common/policy_service.cc',
118        'core/common/policy_service.h',
119        'core/common/policy_service_impl.cc',
120        'core/common/policy_service_impl.h',
121        'core/common/policy_statistics_collector.cc',
122        'core/common/policy_statistics_collector.h',
123        'core/common/policy_switches.cc',
124        'core/common/policy_switches.h',
125        'core/common/policy_types.h',
126        'core/common/preferences_mac.cc',
127        'core/common/preferences_mac.h',
128        'core/common/preg_parser_win.cc',
129        'core/common/preg_parser_win.h',
130        'core/common/registry_dict_win.cc',
131        'core/common/registry_dict_win.h',
132        'core/common/schema.cc',
133        'core/common/schema.h',
134        'core/common/schema_internal.h',
135        'core/common/schema_map.cc',
136        'core/common/schema_map.h',
137        'core/common/schema_registry.cc',
138        'core/common/schema_registry.h',
139        'policy_export.h',
140      ],
141      'conditions': [
142        ['OS=="android"', {
143          'sources!': [
144            'core/common/async_policy_loader.cc',
145            'core/common/async_policy_loader.h',
146            'core/common/async_policy_provider.cc',
147            'core/common/async_policy_provider.h',
148          ],
149        }],
150        ['OS=="android" or OS=="ios"', {
151          'sources': [
152            'core/common/cloud/component_cloud_policy_service_stub.cc',
153          ],
154          'sources!': [
155            'core/common/cloud/component_cloud_policy_service.cc',
156            'core/common/cloud/component_cloud_policy_store.cc',
157            'core/common/cloud/component_cloud_policy_store.h',
158            'core/common/cloud/component_cloud_policy_updater.cc',
159            'core/common/cloud/component_cloud_policy_updater.h',
160            'core/common/cloud/external_policy_data_fetcher.cc',
161            'core/common/cloud/external_policy_data_fetcher.h',
162            'core/common/cloud/external_policy_data_updater.cc',
163            'core/common/cloud/external_policy_data_updater.h',
164            'core/common/cloud/resource_cache.cc',
165            'core/common/cloud/resource_cache.h',
166            'core/common/config_dir_policy_loader.cc',
167            'core/common/config_dir_policy_loader.h',
168            'core/common/policy_load_status.cc',
169            'core/common/policy_load_status.h',
170          ],
171        }],
172        ['chromeos==1', {
173          'sources': [
174            'core/common/proxy_policy_provider.cc',
175            'core/common/proxy_policy_provider.h',
176          ],
177          'sources!': [
178            'core/common/cloud/cloud_policy_client_registration_helper.cc',
179            'core/common/cloud/cloud_policy_client_registration_helper.h',
180            'core/common/cloud/user_cloud_policy_manager.cc',
181            'core/common/cloud/user_cloud_policy_manager.h',
182            'core/common/cloud/user_cloud_policy_store.cc',
183            'core/common/cloud/user_cloud_policy_store.h',
184          ],
185        }],
186        ['OS!="ios" and OS!="mac"', {
187          'sources!': [
188            'core/common/mac_util.cc',
189            'core/common/mac_util.h',
190          ],
191        }],
192      ],
193    }, {  # configuration_policy==0
194      # Some of the policy code is always enabled, so that other parts of
195      # Chrome can always interface with the PolicyService without having
196      # to #ifdef on ENABLE_CONFIGURATION_POLICY.
197      'sources': [
198        'core/common/external_data_fetcher.h',
199        'core/common/external_data_fetcher.cc',
200        'core/common/external_data_manager.h',
201        'core/common/policy_map.cc',
202        'core/common/policy_map.h',
203        'core/common/policy_namespace.cc',
204        'core/common/policy_namespace.h',
205        'core/common/policy_pref_names.cc',
206        'core/common/policy_pref_names.h',
207        'core/common/policy_service.cc',
208        'core/common/policy_service.h',
209        'core/common/policy_service_stub.cc',
210        'core/common/policy_service_stub.h',
211      ],
212    }],
213  ],
214}
215