Port Android relocation packer to chromium build
[chromium-blink-merge.git] / components / autofill.gypi
blobc34dcfad17ae2a20c18a78b74676f6a5fb4e1566
1 # Copyright (c) 2013 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.
6   'targets': [
7     {
8       # Private target only used in components/autofill.
9       # GN version: //components/autofill/core/browser:regexes
10       'target_name': 'autofill_regexes',
11       'type': 'none',
12       'actions': [{
13         'action_name': 'autofill_regexes',
14         'inputs': [
15           '<(DEPTH)/build/escape_unicode.py',
16           'autofill/core/browser/autofill_regex_constants.cc.utf8',
17         ],
18         'outputs': [
19           '<(SHARED_INTERMEDIATE_DIR)/autofill_regex_constants.cc',
20         ],
21         'action': ['python', '<(DEPTH)/build/escape_unicode.py',
22                    '-o', '<(SHARED_INTERMEDIATE_DIR)',
23                    'autofill/core/browser/autofill_regex_constants.cc.utf8'],
24       }],
25     },
27     {
28       # GN version: //components/autofill/core/common
29       'target_name': 'autofill_core_common',
30       'type': 'static_library',
31       'dependencies': [
32         '../base/base.gyp:base',
33         '../base/base.gyp:base_i18n',
34         '../ui/base/ui_base.gyp:ui_base',
35         '../ui/gfx/gfx.gyp:gfx',
36         '../url/url.gyp:url_lib',
37       ],
38       'include_dirs': [
39         '..',
40       ],
41       'sources': [
42         'autofill/core/common/autofill_constants.cc',
43         'autofill/core/common/autofill_constants.h',
44         'autofill/core/common/autofill_data_validation.cc',
45         'autofill/core/common/autofill_data_validation.h',
46         'autofill/core/common/autofill_pref_names.cc',
47         'autofill/core/common/autofill_pref_names.h',
48         'autofill/core/common/autofill_switches.cc',
49         'autofill/core/common/autofill_switches.h',
50         'autofill/core/common/form_data.cc',
51         'autofill/core/common/form_data.h',
52         'autofill/core/common/form_data_predictions.cc',
53         'autofill/core/common/form_data_predictions.h',
54         'autofill/core/common/form_field_data.cc',
55         'autofill/core/common/form_field_data.h',
56         'autofill/core/common/form_field_data_predictions.cc',
57         'autofill/core/common/form_field_data_predictions.h',
58         'autofill/core/common/password_form.cc',
59         'autofill/core/common/password_form.h',
60         'autofill/core/common/password_form_fill_data.cc',
61         'autofill/core/common/password_form_fill_data.h',
62         'autofill/core/common/password_generation_util.cc',
63         'autofill/core/common/password_generation_util.h',
64         'autofill/core/common/save_password_progress_logger.cc',
65         'autofill/core/common/save_password_progress_logger.h',
66         'autofill/core/common/web_element_descriptor.cc',
67         'autofill/core/common/web_element_descriptor.h',
68       ],
69     },
71     {
72       # GN version: //components/autofill/core/browser
73       'target_name': 'autofill_core_browser',
74       'type': 'static_library',
75       'include_dirs': [
76         '..',
77       ],
78       'dependencies': [
79         '../base/base.gyp:base',
80         '../base/base.gyp:base_i18n',
81         '../base/base.gyp:base_prefs',
82         '../google_apis/google_apis.gyp:google_apis',
83         '../net/net.gyp:net',
84         '../skia/skia.gyp:skia',
85         '../sql/sql.gyp:sql',
86         '../third_party/fips181/fips181.gyp:fips181',
87         '../third_party/icu/icu.gyp:icui18n',
88         '../third_party/icu/icu.gyp:icuuc',
89         '../third_party/libjingle/libjingle.gyp:libjingle',
90         '../third_party/libaddressinput/libaddressinput.gyp:libaddressinput_util',
91         '../third_party/libphonenumber/libphonenumber.gyp:libphonenumber',
92         '../ui/base/ui_base.gyp:ui_base',
93         '../ui/gfx/gfx.gyp:gfx',
94         '../ui/gfx/gfx.gyp:gfx_geometry',
95         '../url/url.gyp:url_lib',
96         'autofill_core_common',
97         'autofill_regexes',
98         'components_resources.gyp:components_resources',
99         'components_strings.gyp:components_strings',
100         'infobars_core',
101         'keyed_service_core',
102         'os_crypt',
103         'pref_registry',
104         'rappor',
105         'signin_core_common',
106         'webdata_common',
107       ],
108       'sources': [
109         'autofill/core/browser/address.cc',
110         'autofill/core/browser/address.h',
111         'autofill/core/browser/address_field.cc',
112         'autofill/core/browser/address_field.h',
113         'autofill/core/browser/address_i18n.cc',
114         'autofill/core/browser/address_i18n.h',
115         'autofill/core/browser/autocomplete_history_manager.cc',
116         'autofill/core/browser/autocomplete_history_manager.h',
117         'autofill/core/browser/autofill-inl.h',
118         'autofill/core/browser/autofill_cc_infobar_delegate.cc',
119         'autofill/core/browser/autofill_cc_infobar_delegate.h',
120         'autofill/core/browser/autofill_client.h',
121         'autofill/core/browser/autofill_country.cc',
122         'autofill/core/browser/autofill_country.h',
123         'autofill/core/browser/autofill_data_model.cc',
124         'autofill/core/browser/autofill_data_model.h',
125         'autofill/core/browser/autofill_download_manager.cc',
126         'autofill/core/browser/autofill_download_manager.h',
127         'autofill/core/browser/autofill_driver.h',
128         'autofill/core/browser/autofill_external_delegate.cc',
129         'autofill/core/browser/autofill_external_delegate.h',
130         'autofill/core/browser/autofill_field.cc',
131         'autofill/core/browser/autofill_field.h',
132         'autofill/core/browser/autofill_ie_toolbar_import_win.cc',
133         'autofill/core/browser/autofill_ie_toolbar_import_win.h',
134         'autofill/core/browser/autofill_manager.cc',
135         'autofill/core/browser/autofill_manager.h',
136         'autofill/core/browser/autofill_manager_test_delegate.h',
137         'autofill/core/browser/autofill_metrics.cc',
138         'autofill/core/browser/autofill_metrics.h',
139         'autofill/core/browser/autofill_popup_delegate.h',
140         'autofill/core/browser/autofill_profile.cc',
141         'autofill/core/browser/autofill_profile.h',
142         'autofill/core/browser/autofill_regex_constants.cc.utf8',
143         'autofill/core/browser/autofill_regex_constants.h',
144         'autofill/core/browser/autofill_regexes.cc',
145         'autofill/core/browser/autofill_regexes.h',
146         'autofill/core/browser/autofill_scanner.cc',
147         'autofill/core/browser/autofill_scanner.h',
148         'autofill/core/browser/autofill_server_field_info.h',
149         'autofill/core/browser/autofill_sync_constants.cc',
150         'autofill/core/browser/autofill_sync_constants.h',
151         'autofill/core/browser/autofill_type.cc',
152         'autofill/core/browser/autofill_type.h',
153         'autofill/core/browser/autofill_xml_parser.cc',
154         'autofill/core/browser/autofill_xml_parser.h',
155         'autofill/core/browser/card_unmask_delegate.cc',
156         'autofill/core/browser/card_unmask_delegate.h',
157         'autofill/core/browser/contact_info.cc',
158         'autofill/core/browser/contact_info.h',
159         'autofill/core/browser/credit_card.cc',
160         'autofill/core/browser/credit_card.h',
161         'autofill/core/browser/credit_card_field.cc',
162         'autofill/core/browser/credit_card_field.h',
163         'autofill/core/browser/detail_input.cc',
164         'autofill/core/browser/detail_input.h',
165         'autofill/core/browser/dialog_section.h',
166         'autofill/core/browser/email_field.cc',
167         'autofill/core/browser/email_field.h',
168         'autofill/core/browser/field_types.h',
169         'autofill/core/browser/form_field.cc',
170         'autofill/core/browser/form_field.h',
171         'autofill/core/browser/form_group.cc',
172         'autofill/core/browser/form_group.h',
173         'autofill/core/browser/form_structure.cc',
174         'autofill/core/browser/form_structure.h',
175         'autofill/core/browser/name_field.cc',
176         'autofill/core/browser/name_field.h',
177         'autofill/core/browser/password_generator.cc',
178         'autofill/core/browser/password_generator.h',
179         'autofill/core/browser/personal_data_manager.cc',
180         'autofill/core/browser/personal_data_manager.h',
181         'autofill/core/browser/personal_data_manager_mac.mm',
182         'autofill/core/browser/personal_data_manager_observer.h',
183         'autofill/core/browser/phone_field.cc',
184         'autofill/core/browser/phone_field.h',
185         'autofill/core/browser/phone_number.cc',
186         'autofill/core/browser/phone_number.h',
187         'autofill/core/browser/phone_number_i18n.cc',
188         'autofill/core/browser/phone_number_i18n.h',
189         'autofill/core/browser/popup_item_ids.h',
190         'autofill/core/browser/server_field_types_util.cc',
191         'autofill/core/browser/server_field_types_util.h',
192         'autofill/core/browser/state_names.cc',
193         'autofill/core/browser/state_names.h',
194         'autofill/core/browser/suggestion.cc',
195         'autofill/core/browser/suggestion.h',
196         'autofill/core/browser/validation.cc',
197         'autofill/core/browser/validation.h',
198         'autofill/core/browser/wallet/real_pan_wallet_client.cc',
199         'autofill/core/browser/wallet/real_pan_wallet_client.h',
200         'autofill/core/browser/webdata/autocomplete_syncable_service.cc',
201         'autofill/core/browser/webdata/autocomplete_syncable_service.h',
202         'autofill/core/browser/webdata/autofill_change.cc',
203         'autofill/core/browser/webdata/autofill_change.h',
204         'autofill/core/browser/webdata/autofill_entry.cc',
205         'autofill/core/browser/webdata/autofill_entry.h',
206         'autofill/core/browser/webdata/autofill_profile_syncable_service.cc',
207         'autofill/core/browser/webdata/autofill_profile_syncable_service.h',
208         'autofill/core/browser/webdata/autofill_table.cc',
209         'autofill/core/browser/webdata/autofill_table.h',
210         'autofill/core/browser/webdata/autofill_wallet_syncable_service.cc',
211         'autofill/core/browser/webdata/autofill_wallet_syncable_service.h',
212         'autofill/core/browser/webdata/autofill_webdata.h',
213         'autofill/core/browser/webdata/autofill_webdata_backend.h',
214         'autofill/core/browser/webdata/autofill_webdata_backend_impl.cc',
215         'autofill/core/browser/webdata/autofill_webdata_backend_impl.h',
216         'autofill/core/browser/webdata/autofill_webdata_service.cc',
217         'autofill/core/browser/webdata/autofill_webdata_service.h',
218         'autofill/core/browser/webdata/autofill_webdata_service_observer.h',
220         # This file is generated by the autofill_regexes action.
221         '<(SHARED_INTERMEDIATE_DIR)/autofill_regex_constants.cc',
222       ],
223       'variables': {
224         'conditions': [
225           ['android_webview_build == 1', {
226             # Android WebView doesn't support sync.
227             'autofill_enable_sync%': 0,
228           }, {
229             'autofill_enable_sync%': 1,
230           }],
231         ],
232       },
233       'conditions': [
234         ['autofill_enable_sync == 1', {
235           'defines': [
236             'AUTOFILL_ENABLE_SYNC',
237           ],
238           'dependencies': [
239             '../sync/sync.gyp:sync',
240           ],
241           'direct_dependent_settings': {
242             'defines': [
243               'AUTOFILL_ENABLE_SYNC',
244             ],
245           },
246         }, { # 'autofill_enable_sync == 0'
247           'sources!': [
248             'autofill/core/browser/webdata/autocomplete_syncable_service.cc',
249             'autofill/core/browser/webdata/autocomplete_syncable_service.h',
250             'autofill/core/browser/webdata/autofill_profile_syncable_service.cc',
251             'autofill/core/browser/webdata/autofill_profile_syncable_service.h',
252             'autofill/core/browser/webdata/autofill_wallet_syncable_service.cc',
253             'autofill/core/browser/webdata/autofill_wallet_syncable_service.h',
254           ],
255         }],
256       ],
258       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
259       'msvs_disabled_warnings': [4267, ],
260     },
262     {
263       # GN version: //components/autofill/core/browser:test_support
264       'target_name': 'autofill_core_test_support',
265       'type': 'static_library',
266       'dependencies': [
267         '../base/base.gyp:base',
268         '../base/base.gyp:base_prefs',
269         '../base/base.gyp:test_support_base',
270         '../skia/skia.gyp:skia',
271         '../testing/gtest.gyp:gtest',
272         'autofill_core_common',
273         'autofill_core_browser',
274         'os_crypt',
275         'pref_registry',
276         'rappor',
277       ],
278       'sources': [
279         'autofill/core/browser/autofill_test_utils.cc',
280         'autofill/core/browser/autofill_test_utils.h',
281         'autofill/core/browser/data_driven_test.cc',
282         'autofill/core/browser/data_driven_test.h',
283         'autofill/core/browser/suggestion_test_helpers.h',
284         'autofill/core/browser/test_autofill_client.cc',
285         'autofill/core/browser/test_autofill_client.h',
286         'autofill/core/browser/test_autofill_driver.cc',
287         'autofill/core/browser/test_autofill_driver.h',
288         'autofill/core/browser/test_autofill_external_delegate.cc',
289         'autofill/core/browser/test_autofill_external_delegate.h',
290         'autofill/core/browser/test_personal_data_manager.cc',
291         'autofill/core/browser/test_personal_data_manager.h',
292       ],
293     },
294   ],
295   'conditions': [
296     ['OS != "ios"', {
297       'targets': [
298         {
299           # GN version: //content/autofill/content/common
300           'target_name': 'autofill_content_common',
301           'type': 'static_library',
302           'dependencies': [
303             'autofill_core_common',
304             '../base/base.gyp:base',
305             '../content/content.gyp:content_common',
306             '../ipc/ipc.gyp:ipc',
307             '../third_party/WebKit/public/blink.gyp:blink_minimal',
308             '../ui/gfx/gfx.gyp:gfx',
309             '../ui/gfx/ipc/gfx_ipc.gyp:gfx_ipc',
310             '../url/url.gyp:url_lib',
311           ],
312           'include_dirs': [
313             '..',
314           ],
315           'sources': [
316             'autofill/content/common/autofill_message_generator.cc',
317             'autofill/content/common/autofill_message_generator.h',
318             'autofill/content/common/autofill_messages.h',
319             'autofill/content/common/autofill_param_traits_macros.h',
320           ],
321         },
323         {
324           # Protobuf compiler / generate rule for Autofill's risk integration.
325           # GN version: //components/autofill/content/browser:risk_proto
326           'target_name': 'autofill_content_risk_proto',
327           'type': 'static_library',
328           'sources': [
329             'autofill/content/browser/risk/proto/fingerprint.proto',
330           ],
331           'variables': {
332             'proto_in_dir': 'autofill/content/browser/risk/proto',
333             'proto_out_dir': 'components/autofill/content/browser/risk/proto',
334           },
335           'includes': [ '../build/protoc.gypi' ]
336         },
337        {
338          # GN version: //components/autofill/content/browser:test_support
339          'target_name': 'autofill_content_test_support',
340          'type': 'static_library',
341          'dependencies': [
342             '../testing/gmock.gyp:gmock',
343          ],
344          'sources': [
345            'autofill/content/browser/wallet/mock_wallet_client.cc',
346            'autofill/content/browser/wallet/mock_wallet_client.h',
347            'autofill/content/browser/wallet/wallet_test_util.cc',
348            'autofill/content/browser/wallet/wallet_test_util.h',
349          ],
350          'include_dirs': [ '..' ],
351        },
352        {
353           # GN version: //components/autofill/content/browser
354           'target_name': 'autofill_content_browser',
355           'type': 'static_library',
356           'include_dirs': [
357             '..',
358           ],
359           'dependencies': [
360             '../base/base.gyp:base',
361             '../base/base.gyp:base_i18n',
362             '../base/base.gyp:base_prefs',
363             '../content/content.gyp:content_browser',
364             '../content/content.gyp:content_common',
365             '../google_apis/google_apis.gyp:google_apis',
366             '../ipc/ipc.gyp:ipc',
367             '../net/net.gyp:net',
368             '../skia/skia.gyp:skia',
369             '../sql/sql.gyp:sql',
370             '../third_party/icu/icu.gyp:icui18n',
371             '../third_party/icu/icu.gyp:icuuc',
372             '../third_party/libjingle/libjingle.gyp:libjingle',
373             '../third_party/libphonenumber/libphonenumber.gyp:libphonenumber',
374             '../ui/base/ui_base.gyp:ui_base',
375             '../ui/gfx/gfx.gyp:gfx',
376             '../ui/gfx/gfx.gyp:gfx_geometry',
377             '../url/url.gyp:url_lib',
378             'autofill_content_common',
379             'autofill_content_risk_proto',
380             'autofill_core_browser',
381             'autofill_core_common',
382             'autofill_regexes',
383             'components_resources.gyp:components_resources',
384             'components_strings.gyp:components_strings',
385             'os_crypt',
386             'user_prefs',
387             'webdata_common',
388           ],
389           'sources': [
390             'autofill/content/browser/content_autofill_driver.cc',
391             'autofill/content/browser/content_autofill_driver.h',
392             'autofill/content/browser/content_autofill_driver_factory.cc',
393             'autofill/content/browser/content_autofill_driver_factory.h',
394             'autofill/content/browser/request_autocomplete_manager.cc',
395             'autofill/content/browser/request_autocomplete_manager.h',
396             'autofill/content/browser/risk/fingerprint.cc',
397             'autofill/content/browser/risk/fingerprint.h',
398             'autofill/content/browser/wallet/form_field_error.cc',
399             'autofill/content/browser/wallet/form_field_error.h',
400             'autofill/content/browser/wallet/full_wallet.cc',
401             'autofill/content/browser/wallet/full_wallet.h',
402             'autofill/content/browser/wallet/gaia_account.cc',
403             'autofill/content/browser/wallet/gaia_account.h',
404             'autofill/content/browser/wallet/instrument.cc',
405             'autofill/content/browser/wallet/instrument.h',
406             'autofill/content/browser/wallet/required_action.cc',
407             'autofill/content/browser/wallet/required_action.h',
408             'autofill/content/browser/wallet/wallet_address.cc',
409             'autofill/content/browser/wallet/wallet_address.h',
410             'autofill/content/browser/wallet/wallet_client.cc',
411             'autofill/content/browser/wallet/wallet_client.h',
412             'autofill/content/browser/wallet/wallet_client_delegate.h',
413             'autofill/content/browser/wallet/wallet_items.cc',
414             'autofill/content/browser/wallet/wallet_items.h',
415             'autofill/content/browser/wallet/wallet_service_url.cc',
416             'autofill/content/browser/wallet/wallet_service_url.h',
417             'autofill/content/browser/wallet/wallet_signin_helper.cc',
418             'autofill/content/browser/wallet/wallet_signin_helper.h',
419           ],
421           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
422           'msvs_disabled_warnings': [4267, ],
423         },
425         {
426           # GN version: //components/autofill/content/renderer
427           'target_name': 'autofill_content_renderer',
428           'type': 'static_library',
429           'include_dirs': [
430             '..',
431           ],
432           'dependencies': [
433             '../base/base.gyp:base',
434             '../content/content.gyp:content_common',
435             '../content/content.gyp:content_renderer',
436             '../google_apis/google_apis.gyp:google_apis',
437             '../ipc/ipc.gyp:ipc',
438             '../net/net.gyp:net',
439             '../skia/skia.gyp:skia',
440             '../third_party/icu/icu.gyp:icui18n',
441             '../third_party/icu/icu.gyp:icuuc',
442             '../third_party/WebKit/public/blink.gyp:blink',
443             '../ui/base/ui_base.gyp:ui_base',
444             'autofill_content_common',
445             'autofill_core_common',
446             'components_strings.gyp:components_strings',
447           ],
448           'sources': [
449             'autofill/content/renderer/autofill_agent.cc',
450             'autofill/content/renderer/autofill_agent.h',
451             'autofill/content/renderer/form_autofill_util.cc',
452             'autofill/content/renderer/form_autofill_util.h',
453             'autofill/content/renderer/form_cache.cc',
454             'autofill/content/renderer/form_cache.h',
455             'autofill/content/renderer/page_click_listener.h',
456             'autofill/content/renderer/page_click_tracker.cc',
457             'autofill/content/renderer/page_click_tracker.h',
458             'autofill/content/renderer/password_autofill_agent.cc',
459             'autofill/content/renderer/password_autofill_agent.h',
460             'autofill/content/renderer/password_form_conversion_utils.cc',
461             'autofill/content/renderer/password_form_conversion_utils.h',
462             'autofill/content/renderer/password_generation_agent.cc',
463             'autofill/content/renderer/password_generation_agent.h',
464             'autofill/content/renderer/renderer_save_password_progress_logger.cc',
465             'autofill/content/renderer/renderer_save_password_progress_logger.h',
466           ],
467           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
468           'msvs_disabled_warnings': [4267, ],
469         },
470       ],
471     }],
472     ['OS == "ios"', {
473       'targets': [
474         {
475           'target_name': 'autofill_ios_browser',
476           'type': 'static_library',
477           'include_dirs': [
478             '..',
479           ],
480           'dependencies': [
481             'autofill_core_browser',
482             'autofill_core_common',
483             'autofill_ios_injected_js',
484             '../ios/provider/ios_provider_web.gyp:ios_provider_web',
485             '../ios/web/ios_web.gyp:ios_web',
486           ],
487           'sources': [
488             'autofill/ios/browser/autofill_driver_ios.h',
489             'autofill/ios/browser/autofill_driver_ios.mm',
490             'autofill/ios/browser/autofill_driver_ios_bridge.h',
491             'autofill/ios/browser/form_suggestion.h',
492             'autofill/ios/browser/form_suggestion.mm',
493             'autofill/ios/browser/js_autofill_manager.h',
494             'autofill/ios/browser/js_autofill_manager.mm',
495             'autofill/ios/browser/js_suggestion_manager.h',
496             'autofill/ios/browser/js_suggestion_manager.mm',
497           ],
498         },
499         {
500           'target_name': 'autofill_ios_injected_js',
501           'type': 'none',
502           'sources': [
503             'autofill/ios/browser/resources/autofill_controller.js',
504             'autofill/ios/browser/resources/suggestion_controller.js',
505           ],
506           'link_settings': {
507             'mac_bundle_resources': [
508               '<(SHARED_INTERMEDIATE_DIR)/autofill_controller.js',
509               '<(SHARED_INTERMEDIATE_DIR)/suggestion_controller.js',
510             ],
511           },
512           'includes': [
513             '../ios/web/js_compile.gypi',
514           ],
515         },
516       ],
517     }],
518   ],