[CleanUp] Move PowerApiManager to power_api and Rename
[chromium-blink-merge.git] / remoting / remoting_host.gypi
blobe818a971bc6b93e2170f4d389d1d5def6a90f173
1 # Copyright (c) 2012 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   'includes': [
7     'remoting_enable.gypi',
8   ],
10   'conditions': [
11     ['OS=="mac"', {
12       'includes': [
13         'remoting_host_mac.gypi',
14       ],
15     }],
16     ['OS=="win"', {
17       'includes': [
18         'remoting_host_win.gypi',
19       ],
20     }],
21     ['OS=="linux"', {
22       'includes': [
23         'remoting_host_linux.gypi',
24       ],
25     }],
27     ['enable_remoting_host==1', {
28       'targets': [
29         {
30           # GN version: //remoting/host
31           'target_name': 'remoting_host',
32           'type': 'static_library',
33           'variables': {
34             'enable_wexit_time_destructors': 1,
35             'host_bundle_name': '<!(python <(version_py_path) -f <(branding_path) -t "@MAC_HOST_BUNDLE_NAME@")',
36             'prefpane_bundle_name': '<!(python <(version_py_path) -f <(branding_path) -t "@MAC_PREFPANE_BUNDLE_NAME@")',
37           },
38           'dependencies': [
39             'remoting_base',
40             'remoting_protocol',
41             'remoting_resources',
42             '../base/base.gyp:base_i18n',
43             '../components/components.gyp:policy',
44             '../components/components.gyp:policy_component_common',
45             '../crypto/crypto.gyp:crypto',
46             '../google_apis/google_apis.gyp:google_apis',
47             '../ipc/ipc.gyp:ipc',
48             '../ui/events/events.gyp:dom4_keycode_converter',
49           ],
50           'defines': [
51             'HOST_BUNDLE_NAME="<(host_bundle_name)"',
52             'PREFPANE_BUNDLE_NAME="<(prefpane_bundle_name)"',
53             'VERSION=<(version_full)',
54           ],
55           'sources': [
56             '<@(remoting_host_sources)',
57           ],
58           'conditions': [
59             ['OS=="linux"', {
60               'conditions': [
61                 ['use_x11==1', {
62                   'dependencies': [
63                     '../build/linux/system.gyp:x11',
64                     '../build/linux/system.gyp:xext',
65                     '../build/linux/system.gyp:xfixes',
66                     '../build/linux/system.gyp:xi',
67                     '../build/linux/system.gyp:xrandr',
68                     '../build/linux/system.gyp:xtst',
69                   ],
70                 }],
71                 ['chromeos==0 and use_ozone==0', {
72                   'dependencies': [
73                     # use GTK on Linux, even for Aura builds.
74                     '../build/linux/system.gyp:gtk',
75                   ],
76                 }]
77               ],
78               'link_settings': {
79                 'libraries': [
80                   '-lpam',
81                 ],
82               },
83             }],
84             ['chromeos==1', {
85               'dependencies' : [
86                 '../cc/cc.gyp:cc',
87                 '../ppapi/ppapi_internal.gyp:ppapi_host',
88                 '../skia/skia.gyp:skia',
89                 '../ui/aura/aura.gyp:aura',
90                 '../ui/compositor/compositor.gyp:compositor',
91                 '../ui/events/events.gyp:events',
92                 '../ui/events/platform/events_platform.gyp:events_platform',
93                 '../ui/views/views.gyp:views',
94               ],
95               'include_dirs': [
96                 '../third_party/skia/include/utils',
97               ],
98               'sources!' : [
99                 'host/clipboard_x11.cc',
100                 'host/continue_window_linux.cc',
101                 'host/disconnect_window_linux.cc',
102                 'host/linux/x_server_clipboard.cc',
103                 'host/linux/x_server_clipboard.h',
104                 'host/local_input_monitor_x11.cc',
105                 'host/remoting_me2me_host.cc',
106               ],
107               'conditions': [
108                 ['use_ash==1', {
109                   'dependencies': [
110                     '../ash/ash.gyp:ash',
111                   ],
112                 }],
113                 ['use_ozone==0', {
114                   'sources!': [
115                     'host/input_injector_chromeos.cc',
116                     'host/input_injector_chromeos.h',
117                   ],
118                 }, {  # use_ozone==1
119                   'dependencies' : [
120                     '../ui/ozone/ozone.gyp:ozone',
121                   ]
122                 }],
123               ],
124             }],
125             ['OS=="mac"', {
126               'dependencies': [
127                 '../third_party/google_toolbox_for_mac/google_toolbox_for_mac.gyp:google_toolbox_for_mac',
128               ],
129               'variables': {
130                 # Include internal_mac-inl.h only if it exists.
131                 'use_remoting_macosx_internal%':
132                   '<!(python -c "import os; print 1 if os.path.exists(\'tools/internal/internal_mac-inl.h\') else 0")'
133               },
134               'conditions': [
135                 ['use_remoting_macosx_internal==1', {
136                   'sources': [
137                     'internal/internal_mac-inl.h'
138                   ],
139                   'defines': [
140                     'USE_REMOTING_MACOSX_INTERNAL'
141                   ]
142                 }]
143               ],
144               'link_settings': {
145                 'libraries': [
146                   '$(SDKROOT)/System/Library/Frameworks/OpenGL.framework',
147                   'libpam.a',
148                ],
149               },
150             }],
151             ['OS=="win"', {
152               'defines': [
153                 '_ATL_NO_EXCEPTIONS',
154                 'ISOLATION_AWARE_ENABLED=1',
155               ],
156               'dependencies': [
157                 '../sandbox/sandbox.gyp:sandbox',
158                 'remoting_host_messages',
159                 'remoting_lib_idl',
160               ],
161               'msvs_settings': {
162                 'VCCLCompilerTool': {
163                   # /MP conflicts with #import directive so we limit the number
164                   # of processes to spawn to 1.
165                   'AdditionalOptions': ['/MP1'],
166                 },
167               },
168               'variables': {
169                 'output_dir': '<(SHARED_INTERMEDIATE_DIR)/remoting/host',
170               },
171               'sources': [
172                 '<(output_dir)/remoting_host_messages.mc',
173               ],
174               'include_dirs': [
175                 '<(output_dir)',
176               ],
177               'direct_dependent_settings': {
178                 'include_dirs': [
179                   '<(output_dir)',
180                 ],
181               },
182               'rules': [{
183                 # Rule to run the message compiler.
184                 'rule_name': 'message_compiler',
185                 'extension': 'mc',
186                 'outputs': [
187                   '<(output_dir)/<(RULE_INPUT_ROOT).h',
188                   '<(output_dir)/<(RULE_INPUT_ROOT).rc',
189                 ],
190                 'action': [
191                   'mc.exe',
192                   '-h', '<(output_dir)',
193                   '-r', '<(output_dir)/.',
194                   '-u',
195                   '<(RULE_INPUT_PATH)',
196                 ],
197                 'process_outputs_as_sources': 1,
198                 'message': 'Running message compiler on <(RULE_INPUT_PATH)',
199               }],
200             }],
201             ['enable_webrtc==1', {
202               'dependencies': [
203                 '../third_party/webrtc/modules/modules.gyp:desktop_capture',
204                 '../third_party/libjingle/libjingle.gyp:libpeerconnection',
205               ],
206               'sources': [
207                 '<@(remoting_cast_sources)',
208               ],
209             }],
210           ],
211         },  # end of target 'remoting_host'
213         {
214           'target_name': 'remoting_native_messaging_base',
215           'type': 'static_library',
216           'variables': { 'enable_wexit_time_destructors': 1, },
217           'dependencies': [
218             '../base/base.gyp:base',
219           ],
220           'sources': [
221             'host/native_messaging/native_messaging_pipe.cc',
222             'host/native_messaging/native_messaging_pipe.h',
223             'host/native_messaging/native_messaging_reader.cc',
224             'host/native_messaging/native_messaging_reader.h',
225             'host/native_messaging/native_messaging_writer.cc',
226             'host/native_messaging/native_messaging_writer.h',
227             'host/native_messaging/pipe_messaging_channel.cc',
228             'host/native_messaging/pipe_messaging_channel.h',
229           ],
230         },  # end of target 'remoting_native_messaging_base'
232         {
233           'target_name': 'remoting_host_setup_base',
234           'type': 'static_library',
235           'variables': { 'enable_wexit_time_destructors': 1, },
236           'dependencies': [
237             '../base/base.gyp:base',
238             '../google_apis/google_apis.gyp:google_apis',
239             'remoting_host',
240           ],
241           'defines': [
242             'VERSION=<(version_full)',
243           ],
244           'sources': [
245             'host/setup/daemon_controller.cc',
246             'host/setup/daemon_controller.h',
247             'host/setup/daemon_controller_delegate_linux.cc',
248             'host/setup/daemon_controller_delegate_linux.h',
249             'host/setup/daemon_controller_delegate_mac.h',
250             'host/setup/daemon_controller_delegate_mac.mm',
251             'host/setup/daemon_controller_delegate_win.cc',
252             'host/setup/daemon_controller_delegate_win.h',
253             'host/setup/me2me_native_messaging_host.cc',
254             'host/setup/me2me_native_messaging_host.h',
255             'host/setup/oauth_client.cc',
256             'host/setup/oauth_client.h',
257             'host/setup/oauth_helper.cc',
258             'host/setup/oauth_helper.h',
259             'host/setup/pin_validator.cc',
260             'host/setup/pin_validator.h',
261             'host/setup/service_client.cc',
262             'host/setup/service_client.h',
263             'host/setup/test_util.cc',
264             'host/setup/test_util.h',
265             'host/setup/win/auth_code_getter.cc',
266             'host/setup/win/auth_code_getter.h',
267           ],
268           'conditions': [
269             ['OS=="win"', {
270               'dependencies': [
271                 '../google_update/google_update.gyp:google_update',
272                 'remoting_lib_idl',
273               ],
274               # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
275               'msvs_disabled_warnings': [4267, ],
276             }],
277           ],
278         },  # end of target 'remoting_host_setup_base'
280         # Generates native messaging manifest files.
281         {
282           'target_name': 'remoting_native_messaging_manifests',
283           'type': 'none',
284           'conditions': [
285             [ 'OS == "win"', {
286               'variables': {
287                 'me2me_host_path': 'remoting_native_messaging_host.exe',
288                 'it2me_host_path': 'remote_assistance_host.exe',
289               },
290             }],
291             [ 'OS == "mac"', {
292               'variables': {
293                 'me2me_host_bundle_name': '<!(python <(version_py_path) -f <(branding_path) -t "@MAC_HOST_BUNDLE_NAME@")',
294                 'native_messaging_host_bundle_name': '<!(python <(version_py_path) -f <(branding_path) -t "@MAC_NATIVE_MESSAGING_HOST_BUNDLE_NAME@")',
295                 'remote_assistance_host_bundle_name': '<!(python <(version_py_path) -f <(branding_path) -t "@MAC_REMOTE_ASSISTANCE_HOST_BUNDLE_NAME@")',
296                 'me2me_host_path':
297                     '/Library/PrivilegedHelperTools/<(me2me_host_bundle_name)/Contents/MacOS/<(native_messaging_host_bundle_name)/Contents/MacOS/native_messaging_host',
298                 'it2me_host_path':
299                     '/Library/PrivilegedHelperTools/<(me2me_host_bundle_name)/Contents/MacOS/<(remote_assistance_host_bundle_name)/Contents/MacOS/remote_assistance_host',
300               },
301             }],
302             [ 'OS != "mac" and OS != "win"', {
303               'variables': {
304                 'me2me_host_path':
305                     '/opt/google/chrome-remote-desktop/native-messaging-host',
306                 'it2me_host_path':
307                     '/opt/google/chrome-remote-desktop/remote-assistance-host',
308               },
309             }],
310           ],  # conditions
311           'sources': [
312             'host/it2me/com.google.chrome.remote_assistance.json.jinja2',
313             'host/setup/com.google.chrome.remote_desktop.json.jinja2',
314           ],
315           'rules': [{
316             'rule_name': 'generate_manifest',
317             'extension': 'jinja2',
318             'inputs': [
319               '<(remoting_localize_path)',
320               '<(branding_path)',
321             ],
322             'outputs': [
323               '<(PRODUCT_DIR)/remoting/<(RULE_INPUT_ROOT)',
324             ],
325             'action': [
326               'python', '<(remoting_localize_path)',
327               '--define', 'ME2ME_HOST_PATH=<(me2me_host_path)',
328               '--define', 'IT2ME_HOST_PATH=<(it2me_host_path)',
329               '--variables', '<(branding_path)',
330               '--template', '<(RULE_INPUT_PATH)',
331               '--locale_output', '<@(_outputs)',
332               'en',
333             ],
334           }],
335         },  # end of target 'remoting_native_messaging_manifests'
336         {
337           'target_name': 'remoting_start_host',
338           'type': 'executable',
339           'dependencies': [
340             'remoting_host_setup_base',
341           ],
342           'sources': [
343             'host/setup/host_starter.cc',
344             'host/setup/host_starter.h',
345             'host/setup/start_host.cc',
346           ],
347           'conditions': [
348             ['OS=="linux" and use_allocator!="none"', {
349               'dependencies': [
350                 '../base/allocator/allocator.gyp:allocator',
351               ],
352             }],
353           ],
354         },  # end of target 'remoting_start_host'
355         {
356           'target_name': 'remoting_infoplist_strings',
357           'type': 'none',
358           'dependencies': [
359             'remoting_resources',
360           ],
361           'sources': [
362             'host/remoting_me2me_host-InfoPlist.strings.jinja2',
363             'host/mac/me2me_preference_pane-InfoPlist.strings.jinja2',
364             'host/installer/mac/uninstaller/remoting_uninstaller-InfoPlist.strings.jinja2',
365             'host/setup/native_messaging_host-InfoPlist.strings.jinja2',
366             'host/it2me/remote_assistance_host-InfoPlist.strings.jinja2',
367           ],
368           'rules': [{
369             'rule_name': 'generate_strings',
370             'extension': 'jinja2',
371             'inputs': [
372               '<(remoting_localize_path)',
373             ],
374             'outputs': [
375               '<!@pymod_do_main(remoting_localize --locale_output '
376                   '"<(SHARED_INTERMEDIATE_DIR)/remoting/<(RULE_INPUT_ROOT)/@{json_suffix}.lproj/InfoPlist.strings" '
377                   '--print_only <(remoting_locales))',
378             ],
379             'action': [
380               'python', '<(remoting_localize_path)',
381               '--locale_dir', '<(webapp_locale_dir)',
382               '--template', '<(RULE_INPUT_PATH)',
383               '--locale_output',
384               '<(SHARED_INTERMEDIATE_DIR)/remoting/<(RULE_INPUT_ROOT)/@{json_suffix}.lproj/InfoPlist.strings',
385               '<@(remoting_locales)',
386             ]},
387           ],
388         },  # end of target 'remoting_infoplist_strings'
389         {
390           # GN version: //remoting/host/it2me:common
391           'target_name': 'remoting_it2me_host_static',
392           'type': 'static_library',
393           'variables': { 'enable_wexit_time_destructors': 1, },
394           'dependencies': [
395             '../base/base.gyp:base_i18n',
396             '../components/components.gyp:policy',
397             '../net/net.gyp:net',
398             'remoting_base',
399             'remoting_host',
400             'remoting_infoplist_strings',
401             'remoting_protocol',
402             'remoting_resources',
403           ],
404           'defines': [
405             'VERSION=<(version_full)',
406           ],
407           'sources': [
408             '<@(remoting_it2me_host_static_sources)',
409           ],
410         },  # end of target 'remoting_it2me_host_static'
411       ],  # end of 'targets'
412     }],  # 'enable_remoting_host==1'
414     ['enable_me2me_host==1', {
415       'targets': [
416         {
417           'target_name': 'remoting_me2me_host_static',
418           'type': 'static_library',
419           'variables': { 'enable_wexit_time_destructors': 1, },
420           'dependencies': [
421             '../base/base.gyp:base',
422             '../base/base.gyp:base_i18n',
423             '../net/net.gyp:net',
424             '../third_party/webrtc/modules/modules.gyp:desktop_capture',
425             'remoting_base',
426             'remoting_breakpad',
427             'remoting_host',
428             'remoting_protocol',
429           ],
430           'defines': [
431             'VERSION=<(version_full)',
432           ],
433           'sources': [
434             'host/curtain_mode.h',
435             'host/curtain_mode_linux.cc',
436             'host/curtain_mode_mac.cc',
437             'host/curtain_mode_win.cc',
438             'host/posix/signal_handler.cc',
439             'host/posix/signal_handler.h',
440           ],
441           'conditions': [
442             ['os_posix != 1', {
443               'sources/': [
444                 ['exclude', '^host/posix/'],
445               ],
446             }],
447           ],  # end of 'conditions'
448         },  # end of target 'remoting_me2me_host_static'
449       ]  # end of targets
450     }],  # end of enable_me2me_host==1
452     ['OS!="win" and enable_me2me_host==1', {
453       'targets': [
454         {
455           'target_name': 'remoting_me2me_host',
456           'type': 'executable',
457           'variables': { 'enable_wexit_time_destructors': 1, },
458           'dependencies': [
459             '../base/base.gyp:base',
460             '../base/base.gyp:base_i18n',
461             '<(icu_gyp_path):icudata',
462             '../net/net.gyp:net',
463             '../third_party/webrtc/modules/modules.gyp:desktop_capture',
464             'remoting_base',
465             'remoting_breakpad',
466             'remoting_host',
467             'remoting_infoplist_strings',
468             'remoting_me2me_host_static',
469             'remoting_protocol',
470           ],
471           'defines': [
472             'VERSION=<(version_full)',
473           ],
474           'sources': [
475             'host/host_main.cc',
476             'host/host_main.h',
477           ],
478           'conditions': [
479             ['OS=="mac"', {
480               'mac_bundle': 1,
481               'variables': {
482                  'host_bundle_id': '<!(python <(version_py_path) -f <(branding_path) -t "@MAC_HOST_BUNDLE_ID@")',
483               },
484               'xcode_settings': {
485                 'INFOPLIST_FILE': 'host/remoting_me2me_host-Info.plist',
486                 'INFOPLIST_PREPROCESS': 'YES',
487                 'INFOPLIST_PREPROCESSOR_DEFINITIONS': 'VERSION_FULL="<(version_full)" VERSION_SHORT="<(version_short)" BUNDLE_ID="<(host_bundle_id)"',
488               },
489               'mac_bundle_resources': [
490                 '<(PRODUCT_DIR)/icudtl.dat',
491                 'host/disconnect_window.xib',
492                 'host/remoting_me2me_host.icns',
493                 'host/remoting_me2me_host-Info.plist',
494                 '<!@pymod_do_main(remoting_copy_locales -o -p <(OS) -x <(PRODUCT_DIR) <(remoting_locales))',
496                 # Localized strings for 'Info.plist'
497                 '<!@pymod_do_main(remoting_localize --locale_output '
498                     '"<(SHARED_INTERMEDIATE_DIR)/remoting/remoting_me2me_host-InfoPlist.strings/@{json_suffix}.lproj/InfoPlist.strings" '
499                     '--print_only <(remoting_locales))',
500               ],
501               'mac_bundle_resources!': [
502                 'host/remoting_me2me_host-Info.plist',
503               ],
504               'conditions': [
505                 ['mac_breakpad==1', {
506                   'variables': {
507                     # A real .dSYM is needed for dump_syms to operate on.
508                     'mac_real_dsym': 1,
509                   },
510                   'copies': [
511                     {
512                       'destination': '<(PRODUCT_DIR)/$(CONTENTS_FOLDER_PATH)/Resources',
513                       'files': [
514                         '<(PRODUCT_DIR)/crash_inspector',
515                         '<(PRODUCT_DIR)/crash_report_sender.app'
516                       ],
517                     },
518                   ],
519                   'dependencies': [
520                     '../breakpad/breakpad.gyp:dump_syms',
521                   ],
522                   'postbuilds': [
523                     {
524                       'postbuild_name': 'Dump Symbols',
525                       'variables': {
526                         'dump_product_syms_path':
527                             'scripts/mac/dump_product_syms',
528                       },
529                       'action': [
530                         '<(dump_product_syms_path)',
531                         '<(version_full)',
532                       ],
533                     },  # end of postbuild 'dump_symbols'
534                   ],  # end of 'postbuilds'
535                 }],  # mac_breakpad==1
536               ],  # conditions
537             }],  # OS=mac
538             ['OS=="linux" and use_allocator!="none"', {
539               'dependencies': [
540                 '../base/allocator/allocator.gyp:allocator',
541               ],
542             }],  # OS=linux
543           ],  # end of 'conditions'
544         },  # end of target 'remoting_me2me_host'
545         {
546           'target_name': 'remoting_me2me_native_messaging_host',
547           'type': 'executable',
548           'product_name': 'native_messaging_host',
549           'variables': { 'enable_wexit_time_destructors': 1, },
550           'dependencies': [
551             '../base/base.gyp:base',
552             'remoting_breakpad',
553             'remoting_host',
554             'remoting_host_setup_base',
555             'remoting_infoplist_strings',
556             'remoting_native_messaging_base',
557           ],
558           'defines': [
559             'VERSION=<(version_full)',
560           ],
561           'sources': [
562             'host/setup/me2me_native_messaging_host_entry_point.cc',
563             'host/setup/me2me_native_messaging_host_main.cc',
564             'host/setup/me2me_native_messaging_host_main.h',
565           ],
566           'conditions': [
567             ['OS=="linux" and use_allocator!="none"', {
568               'dependencies': [
569                 '../base/allocator/allocator.gyp:allocator',
570               ],
571             }],
572             ['OS=="mac"', {
573               'mac_bundle': 1,
574               'variables': {
575                  'host_bundle_id': '<!(python <(version_py_path) -f <(branding_path) -t "@MAC_NATIVE_MESSAGING_HOST_BUNDLE_ID@")',
576               },
577               'xcode_settings': {
578                 'INFOPLIST_FILE': 'host/setup/native_messaging_host-Info.plist',
579                 'INFOPLIST_PREPROCESS': 'YES',
580                 'INFOPLIST_PREPROCESSOR_DEFINITIONS': 'VERSION_FULL="<(version_full)" VERSION_SHORT="<(version_short)" BUNDLE_ID="<(host_bundle_id)"',
581               },
582               'mac_bundle_resources': [
583                 'host/setup/native_messaging_host-Info.plist',
584                 '<!@pymod_do_main(remoting_copy_locales -o -p <(OS) -x <(PRODUCT_DIR) <(remoting_locales))',
586                 # Localized strings for 'Info.plist'
587                 '<!@pymod_do_main(remoting_localize --locale_output '
588                     '"<(SHARED_INTERMEDIATE_DIR)/remoting/native_messaging_host-InfoPlist.strings/@{json_suffix}.lproj/InfoPlist.strings" '
589                     '--print_only <(remoting_locales))',
590               ],
591               'mac_bundle_resources!': [
592                 'host/setup/native_messaging_host-Info.plist',
593               ],
594               'conditions': [
595                 ['mac_breakpad==1', {
596                   'variables': {
597                     # A real .dSYM is needed for dump_syms to operate on.
598                     'mac_real_dsym': 1,
599                   },
600                   'copies': [
601                     {
602                       'destination': '<(PRODUCT_DIR)/$(CONTENTS_FOLDER_PATH)/Resources',
603                       'files': [
604                         '<(PRODUCT_DIR)/crash_inspector',
605                         '<(PRODUCT_DIR)/crash_report_sender.app'
606                       ],
607                     },
608                   ],
609                   'dependencies': [
610                     '../breakpad/breakpad.gyp:dump_syms',
611                   ],
612                   'postbuilds': [
613                     {
614                       'postbuild_name': 'Dump Symbols',
615                       'variables': {
616                         'dump_product_syms_path':
617                             'scripts/mac/dump_product_syms',
618                       },
619                       'action': [
620                         '<(dump_product_syms_path)',
621                         '<(version_full)',
622                       ],
623                     },  # end of postbuild 'dump_symbols'
624                   ],  # end of 'postbuilds'
625                 }],  # mac_breakpad==1
626               ],  # conditions
627             }],  # OS=mac
628           ],
629         },  # end of target 'remoting_me2me_native_messaging_host'
630       ], # targets
631     }], # end of OS!="win" and enable_me2me_host==1
633     ['OS!="win" and enable_remoting_host==1', {
634       'conditions': [
635         ['chromeos==0', {
636           'targets': [
637             {
638               'target_name': 'remoting_it2me_native_messaging_host',
639               'type': 'executable',
640               'product_name': 'remote_assistance_host',
641               'variables': { 'enable_wexit_time_destructors': 1, },
642               'dependencies': [
643                 '../base/base.gyp:base',
644                 'remoting_base',
645                 'remoting_breakpad',
646                 'remoting_host',
647                 'remoting_it2me_host_static',
648                 'remoting_native_messaging_base',
649                 'remoting_protocol',
650               ],
651               'defines': [
652                 'VERSION=<(version_full)',
653               ],
654               'sources': [
655                 'host/it2me/it2me_native_messaging_host_entry_point.cc',
656                 'host/it2me/it2me_native_messaging_host_main.cc',
657                 'host/it2me/it2me_native_messaging_host_main.h',
658               ],
659               'conditions': [
660                 ['OS=="linux" and chromeos==0 and use_ozone==0', {
661                   'dependencies': [
662                     # Always use GTK on Linux, even for Aura builds.
663                     '../build/linux/system.gyp:gtk',
664                   ],
665                 }],
666                 ['OS=="linux" and use_allocator!="none"', {
667                   'dependencies': [
668                     '../base/allocator/allocator.gyp:allocator',
669                   ],
670                 }],
671                 ['OS=="mac"', {
672                   'mac_bundle': 1,
673                   'variables': {
674                     'host_bundle_id': '<!(python <(version_py_path) -f <(branding_path) -t "@MAC_REMOTE_ASSISTANCE_HOST_BUNDLE_ID@")',
675                   },
676                   'xcode_settings': {
677                     'INFOPLIST_FILE': 'host/it2me/remote_assistance_host-Info.plist',
678                     'INFOPLIST_PREPROCESS': 'YES',
679                     'INFOPLIST_PREPROCESSOR_DEFINITIONS': 'VERSION_FULL="<(version_full)" VERSION_SHORT="<(version_short)" BUNDLE_ID="<(host_bundle_id)"',
680                   },
681                   'mac_bundle_resources': [
682                     '<(PRODUCT_DIR)/icudtl.dat',
683                     'host/disconnect_window.xib',
684                     'host/it2me/remote_assistance_host-Info.plist',
685                     '<!@pymod_do_main(remoting_copy_locales -o -p <(OS) -x <(PRODUCT_DIR) <(remoting_locales))',
687                     # Localized strings for 'Info.plist'
688                     '<!@pymod_do_main(remoting_localize --locale_output '
689                     '"<(SHARED_INTERMEDIATE_DIR)/remoting/remote_assistance_host-InfoPlist.strings/@{json_suffix}.lproj/InfoPlist.strings" '
690                     '--print_only <(remoting_locales))',
691                   ],
692                   'mac_bundle_resources!': [
693                     'host/it2me/remote_assistance_host-Info.plist',
694                   ],
695                   'conditions': [
696                     ['mac_breakpad==1', {
697                       'variables': {
698                         # A real .dSYM is needed for dump_syms to operate on.
699                         'mac_real_dsym': 1,
700                       },
701                       'copies': [
702                         {
703                           'destination': '<(PRODUCT_DIR)/$(CONTENTS_FOLDER_PATH)/Resources',
704                           'files': [
705                             '<(PRODUCT_DIR)/crash_inspector',
706                             '<(PRODUCT_DIR)/crash_report_sender.app'
707                           ],
708                         },
709                       ],
710                       'dependencies': [
711                         '../breakpad/breakpad.gyp:dump_syms',
712                       ],
713                       'postbuilds': [
714                         {
715                           'postbuild_name': 'Dump Symbols',
716                           'variables': {
717                             'dump_product_syms_path':
718                             'scripts/mac/dump_product_syms',
719                           },
720                           'action': [
721                             '<(dump_product_syms_path)',
722                             '<(version_full)',
723                           ],
724                         },  # end of postbuild 'dump_symbols'
725                       ],  # end of 'postbuilds'
726                     }],  # mac_breakpad==1
727                   ],  # conditions
728                 }],  # OS=mac
729               ],  # end of conditions
730             },  # end of target 'remoting_it2me_native_messaging_host'
731           ],  # targets
732         }, {  # chromeos==0
733           'targets': [
734             {
735               # Dummy target for chromeos==1
736               'target_name': 'remoting_it2me_native_messaging_host',
737               'type': 'executable',
738             },
739           ],  # targets
740         }],  # end of chromeos==0
741       ],  # end of conditions
742     }],  # end of OS!="win" and enable_remoting_host==1
743   ],  # end of 'conditions'