Recovery component: Use the correct key fingerprint
[chromium-blink-merge.git] / remoting / remoting.gyp
blob3f14491a87f1278a812f56752978f92c57622903
1 # Copyright (c) 2011 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   'variables': {
7     # TODO(dmaclach): can we pick this up some other way? Right now it's
8     # duplicated from chrome.gyp
9     'chromium_code': 1,
10     # Use a consistent MIME-type independent of branding.
11     'host_plugin_mime_type': 'application/vnd.chromium.remoting-host',
12     'conditions': [
13       ['OS=="mac"', {
14         'conditions': [
15           ['branding=="Chrome"', {
16             'mac_bundle_id': 'com.google.Chrome',
17             'mac_creator': 'rimZ',
18           }, {  # else: branding!="Chrome"
19             'mac_bundle_id': 'org.chromium.Chromium',
20             'mac_creator': 'Cr24',
21           }],  # branding
22         ],  # conditions
23         'host_plugin_extension': 'plugin',
24         'host_plugin_prefix': '',
25       }],
26       ['os_posix == 1 and OS != "mac" and target_arch == "ia32"', {
27         # linux 32 bit
28         'host_plugin_extension': 'ia32.so',
29         'host_plugin_prefix': 'lib',
30       }],
31       ['os_posix == 1 and OS != "mac" and target_arch == "x64"', {
32         # linux 64 bit
33         'host_plugin_extension': 'x64.so',
34         'host_plugin_prefix': 'lib',
35       }],
36       ['os_posix == 1 and OS != "mac" and target_arch == "arm"', {
37         # linux 64 bit
38         'host_plugin_extension': 'arm.so',
39         'host_plugin_prefix': 'lib',
40       }],
41       ['OS=="win"', {
42         'host_plugin_extension': 'dll',
43         'host_plugin_prefix': '',
44       }],
45       ['branding=="Chrome"', {
46         'remoting_it2me_locale_files': [
47           'webapp/me2mom/_locales.official/ar/messages.json',
48           'webapp/me2mom/_locales.official/bg/messages.json',
49           'webapp/me2mom/_locales.official/ca/messages.json',
50           'webapp/me2mom/_locales.official/cs/messages.json',
51           'webapp/me2mom/_locales.official/da/messages.json',
52           'webapp/me2mom/_locales.official/de/messages.json',
53           'webapp/me2mom/_locales.official/el/messages.json',
54           'webapp/me2mom/_locales.official/en/messages.json',
55           'webapp/me2mom/_locales.official/en_GB/messages.json',
56           'webapp/me2mom/_locales.official/es/messages.json',
57           'webapp/me2mom/_locales.official/es_419/messages.json',
58           'webapp/me2mom/_locales.official/et/messages.json',
59           'webapp/me2mom/_locales.official/fi/messages.json',
60           'webapp/me2mom/_locales.official/fil/messages.json',
61           'webapp/me2mom/_locales.official/fr/messages.json',
62           'webapp/me2mom/_locales.official/he/messages.json',
63           'webapp/me2mom/_locales.official/hi/messages.json',
64           'webapp/me2mom/_locales.official/hr/messages.json',
65           'webapp/me2mom/_locales.official/hu/messages.json',
66           'webapp/me2mom/_locales.official/id/messages.json',
67           'webapp/me2mom/_locales.official/it/messages.json',
68           'webapp/me2mom/_locales.official/ja/messages.json',
69           'webapp/me2mom/_locales.official/ko/messages.json',
70           'webapp/me2mom/_locales.official/lt/messages.json',
71           'webapp/me2mom/_locales.official/lv/messages.json',
72           'webapp/me2mom/_locales.official/nb/messages.json',
73           'webapp/me2mom/_locales.official/nl/messages.json',
74           'webapp/me2mom/_locales.official/pl/messages.json',
75           'webapp/me2mom/_locales.official/pt_BR/messages.json',
76           'webapp/me2mom/_locales.official/pt_PT/messages.json',
77           'webapp/me2mom/_locales.official/ro/messages.json',
78           'webapp/me2mom/_locales.official/ru/messages.json',
79           'webapp/me2mom/_locales.official/sk/messages.json',
80           'webapp/me2mom/_locales.official/sl/messages.json',
81           'webapp/me2mom/_locales.official/sr/messages.json',
82           'webapp/me2mom/_locales.official/sv/messages.json',
83           'webapp/me2mom/_locales.official/th/messages.json',
84           'webapp/me2mom/_locales.official/tr/messages.json',
85           'webapp/me2mom/_locales.official/uk/messages.json',
86           'webapp/me2mom/_locales.official/vi/messages.json',
87           'webapp/me2mom/_locales.official/zh_CN/messages.json',
88           'webapp/me2mom/_locales.official/zh_TW/messages.json',
89         ],
90       }, {  # else: branding!="Chrome"
91         'remoting_it2me_locale_files': [
92           'webapp/me2mom/_locales/en/messages.json',
93         ],
94       }],
95     ],
96     'remoting_it2me_files': [
97       'resources/icon_warning.png',
98       'webapp/me2mom/choice.css',
99       'webapp/me2mom/choice.html',
100       'webapp/me2mom/client_session.js',
101       'webapp/me2mom/cs_oauth2_trampoline.js',
102       'webapp/me2mom/debug_log.css',
103       'webapp/me2mom/debug_log.js',
104       'webapp/me2mom/dividerbottom.png',
105       'webapp/me2mom/dividertop.png',
106       'webapp/me2mom/l10n.js',
107       'webapp/me2mom/main.css',
108       'webapp/me2mom/manifest.json',
109       'webapp/me2mom/oauth2.js',
110       'webapp/me2mom/oauth2_callback.html',
111       'webapp/me2mom/plugin_settings.js',
112       'webapp/me2mom/remoting.js',
113       'webapp/me2mom/scale-to-fit.png',
114       'webapp/me2mom/spinner.gif',
115       'webapp/me2mom/toolbar.css',
116       'webapp/me2mom/wcs.js',
117       'webapp/me2mom/wcs_loader.js',
118       'webapp/me2mom/xhr.js',
119       'resources/chromoting16.png',
120       'resources/chromoting48.png',
121       'resources/chromoting128.png',
122     ],
123   },
125   'target_defaults': {
126     'defines': [
127     ],
128     'include_dirs': [
129       '..',  # Root of Chrome checkout
130     ],
131   },
133   'conditions': [
134     ['os_posix == 1', {
135       'targets': [
136         # Simple webserver for testing remoting client plugin.
137         {
138           'target_name': 'remoting_client_test_webserver',
139           'type': 'executable',
140           'sources': [
141             'tools/client_webserver/main.c',
142           ],
143         }
144       ],  # end of target 'remoting_client_test_webserver'
145     }],
146   ],  # end of 'conditions'
148   'targets': [
149     {
150       'target_name': 'remoting_client_plugin',
151       'type': 'static_library',
152       'defines': [
153         'HAVE_STDINT_H',  # Required by on2_integer.h
154       ],
155       'dependencies': [
156         'remoting_base',
157         'remoting_client',
158         'remoting_jingle_glue',
159         '../media/media.gyp:media',
160         '../ppapi/ppapi.gyp:ppapi_cpp_objects',
162         # TODO(sergeyu): This is a hack: plugin should not depend on
163         # webkit glue. Skia is needed here to add include path webkit glue
164         # depends on. See comments in chromoting_instance.cc for details.
165         # crbug.com/74951
166         '<(DEPTH)/webkit/support/webkit_support.gyp:glue',
167         '<(DEPTH)/skia/skia.gyp:skia',
168       ],
169       'sources': [
170         'client/plugin/chromoting_instance.cc',
171         'client/plugin/chromoting_instance.h',
172         'client/plugin/chromoting_scriptable_object.cc',
173         'client/plugin/chromoting_scriptable_object.h',
174         'client/plugin/pepper_entrypoints.cc',
175         'client/plugin/pepper_entrypoints.h',
176         'client/plugin/pepper_input_handler.cc',
177         'client/plugin/pepper_input_handler.h',
178         'client/plugin/pepper_plugin_thread_delegate.cc',
179         'client/plugin/pepper_plugin_thread_delegate.h',
180         'client/plugin/pepper_view.cc',
181         'client/plugin/pepper_view.h',
182         'client/plugin/pepper_view_proxy.cc',
183         'client/plugin/pepper_view_proxy.h',
184         'client/plugin/pepper_util.cc',
185         'client/plugin/pepper_util.h',
186         'client/plugin/pepper_xmpp_proxy.cc',
187         'client/plugin/pepper_xmpp_proxy.h',
188       ],
189     },  # end of target 'remoting_client_plugin'
190     {
191       'target_name': 'remoting_host_plugin',
192       'type': 'loadable_module',
193       'product_extension': '<(host_plugin_extension)',
194       'product_prefix': '<(host_plugin_prefix)',
195       'defines': [
196         'HOST_PLUGIN_MIME_TYPE=<(host_plugin_mime_type)',
197       ],
198       'dependencies': [
199         'remoting_base',
200         'remoting_host',
201         'remoting_jingle_glue',
202         '../third_party/npapi/npapi.gyp:npapi',
203       ],
204       'sources': [
205         'host/plugin/host_log_handler.cc',
206         'host/plugin/host_log_handler.h',
207         'host/plugin/host_plugin.cc',
208         'host/plugin/host_plugin.def',
209         'host/plugin/host_plugin.rc',
210         'host/plugin/host_plugin_resource.h',
211         'host/plugin/host_plugin_utils.cc',
212         'host/plugin/host_plugin_utils.h',
213         'host/plugin/host_script_object.cc',
214         'host/plugin/host_script_object.h',
215         'host/plugin/policy_hack/nat_policy.h',
216         'host/plugin/policy_hack/nat_policy.cc',
217         'host/plugin/policy_hack/nat_policy_linux.cc',
218         'host/plugin/policy_hack/nat_policy_mac.mm',
219         'host/plugin/policy_hack/nat_policy_win.cc',
220       ],
221       'conditions': [
222         ['OS=="mac"', {
223           'mac_bundle': 1,
224           'xcode_settings': {
225             'CHROMIUM_BUNDLE_ID': '<(mac_bundle_id)',
226             'INFOPLIST_FILE': 'host/plugin/host_plugin-Info.plist',
227             'INFOPLIST_PREPROCESS': 'YES',
228             'INFOPLIST_PREPROCESSOR_DEFINITIONS': 'HOST_PLUGIN_MIME_TYPE=<(host_plugin_mime_type)',
229           },
230           # TODO(mark): Come up with a fancier way to do this.  It should
231           # only be necessary to list host_plugin-Info.plist once, not the
232           # three times it is listed here.
233           'mac_bundle_resources': [
234             'host/disconnect_window.xib',
235             'host/plugin/host_plugin-Info.plist',
236             'resources/chromoting16.png',
237             'resources/chromoting48.png',
238             'resources/chromoting128.png',
239           ],
240           'mac_bundle_resources!': [
241             'host/plugin/host_plugin-Info.plist',
242           ],
243           'conditions': [
244             ['mac_breakpad==1', {
245               'variables': {
246                 # A real .dSYM is needed for dump_syms to operate on.
247                 'mac_real_dsym': 1,
248               },
249             }],
250           ],  # conditions
251         }],  # OS=="mac"
252         ['OS!="win"', {
253           'sources!': [
254             'host/plugin/host_plugin.def',
255             'host/plugin/host_plugin.rc',
256           ],
257         }],
258       ],
259     },  # end of target 'remoting_host_plugin'
260     {
261       'target_name': 'webapp_it2me',
262       'type': 'none',
263       'dependencies': [
264         'remoting_host_plugin',
265       ],
266       'sources': [
267         'webapp/build-webapp.py',
268         'webapp/verify-webapp.py',
269         '<@(remoting_it2me_files)',
270         '<@(remoting_it2me_locale_files)',
271       ],
272       # Can't use a 'copies' because we need to manipulate
273       # the manifest file to get the right plugin name.
274       # Also we need to move the plugin into the me2mom
275       # folder, which means 2 copies, and gyp doesn't
276       # seem to guarantee the ordering of 2 copies statements
277       # when the actual project is generated.
278       'actions': [
279         {
280           'action_name': 'Verify It2Me WebApp i18n',
281           'inputs': [
282             'webapp/verify-webapp.py',
283             'webapp/me2mom/_locales/en/messages.json',
284             'webapp/me2mom/choice.html',
285             'webapp/me2mom/manifest.json',
286             'webapp/me2mom/remoting.js',
287             'host/plugin/host_script_object.cc',
288           ],
289           'outputs': [
290             '<(PRODUCT_DIR)/remoting/it2me_verified.stamp',
291           ],
292           'action': [
293             'python',
294             'webapp/verify-webapp.py',
295             '<(PRODUCT_DIR)/remoting/it2me_verified.stamp',
296             'webapp/me2mom/_locales/en/messages.json',
297             'webapp/me2mom/choice.html',
298             'webapp/me2mom/manifest.json',
299             'webapp/me2mom/remoting.js',
300             'host/plugin/host_script_object.cc',
301          ],
302         },
303         {
304           'action_name': 'Build It2Me WebApp',
305           'output_dir': '<(PRODUCT_DIR)/remoting/it2me.webapp',
306           'plugin_path': '<(PRODUCT_DIR)/<(host_plugin_prefix)remoting_host_plugin.<(host_plugin_extension)',
307           'zip_path': '<(PRODUCT_DIR)/remoting-it2me.zip',
308           'inputs': [
309             'webapp/build-webapp.py',
310             '<(_plugin_path)',
311             '<@(remoting_it2me_files)',
312             '<@(remoting_it2me_locale_files)',
313           ],
314           'outputs': [
315             '<(_output_dir)',
316             '<(_zip_path)',
317           ],
318           'action': [
319             'python', 'webapp/build-webapp.py',
320             '<(buildtype)',
321             '<(host_plugin_mime_type)',
322             '<(_output_dir)',
323             '<(_zip_path)',
324             '<(_plugin_path)',
325             '<@(remoting_it2me_files)',
326             '--locales',
327             '<@(remoting_it2me_locale_files)',
328           ],
329         },
330       ],
331     }, # end of target 'webapp_it2me'
332     {
333       'target_name': 'remoting_base',
334       'type': 'static_library',
335       'dependencies': [
336         '../base/base.gyp:base',
337         '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
338         '../ui/ui.gyp:ui',
339         '../net/net.gyp:net',
340         '../skia/skia.gyp:skia',
341         '../third_party/libvpx/libvpx.gyp:libvpx',
342         '../third_party/protobuf/protobuf.gyp:protobuf_lite',
343         '../third_party/zlib/zlib.gyp:zlib',
344         '../media/media.gyp:yuv_convert',
345         'remoting_jingle_glue',
346         'proto/chromotocol.gyp:chromotocol_proto_lib',
347         'proto/trace.gyp:trace_proto_lib',
348       ],
349       'export_dependent_settings': [
350         '../base/base.gyp:base',
351         '../net/net.gyp:net',
352         '../skia/skia.gyp:skia',
353         '../third_party/protobuf/protobuf.gyp:protobuf_lite',
354         'proto/chromotocol.gyp:chromotocol_proto_lib',
355       ],
356       # This target needs a hard dependency because dependent targets
357       # depend on chromotocol_proto_lib for headers.
358       'hard_dependency': 1,
359       'sources': [
360         'base/auth_token_util.cc',
361         'base/auth_token_util.h',
362         'base/capture_data.cc',
363         'base/capture_data.h',
364         'base/compound_buffer.cc',
365         'base/compound_buffer.h',
366         'base/compressor.h',
367         'base/compressor_verbatim.cc',
368         'base/compressor_verbatim.h',
369         'base/compressor_zlib.cc',
370         'base/compressor_zlib.h',
371         'base/constants.cc',
372         'base/constants.h',
373         'base/decoder.h',
374         'base/decoder_vp8.cc',
375         'base/decoder_vp8.h',
376         'base/decoder_row_based.cc',
377         'base/decoder_row_based.h',
378         'base/decompressor.h',
379         'base/decompressor_verbatim.cc',
380         'base/decompressor_verbatim.h',
381         'base/decompressor_zlib.cc',
382         'base/decompressor_zlib.h',
383         'base/encoder.h',
384         'base/encoder_vp8.cc',
385         'base/encoder_vp8.h',
386         'base/encoder_row_based.cc',
387         'base/encoder_row_based.h',
388         'base/plugin_message_loop_proxy.cc',
389         'base/plugin_message_loop_proxy.h',
390         'base/rate_counter.cc',
391         'base/rate_counter.h',
392         'base/running_average.cc',
393         'base/running_average.h',
394         'base/scoped_thread_proxy.cc',
395         'base/scoped_thread_proxy.h',
396         'base/util.cc',
397         'base/util.h',
398       ],
399     },  # end of target 'remoting_base'
401     {
402       'target_name': 'remoting_host',
403       'type': 'static_library',
404       'dependencies': [
405         'remoting_base',
406         'remoting_jingle_glue',
407         'remoting_protocol',
408         'differ_block',
409         '../crypto/crypto.gyp:crypto',
410       ],
411       'sources': [
412         'host/access_verifier.h',
413         'host/capturer.h',
414         'host/capturer_helper.cc',
415         'host/capturer_helper.h',
416         'host/capturer_fake.cc',
417         'host/capturer_fake.h',
418         'host/capturer_linux.cc',
419         'host/capturer_mac.cc',
420         'host/capturer_win.cc',
421         'host/chromoting_host.cc',
422         'host/chromoting_host.h',
423         'host/chromoting_host_context.cc',
424         'host/chromoting_host_context.h',
425         'host/client_session.cc',
426         'host/client_session.h',
427         'host/continue_window.h',
428         'host/continue_window_mac.mm',
429         'host/continue_window_linux.cc',
430         'host/continue_window_win.cc',
431         'host/curtain.h',
432         'host/curtain_linux.cc',
433         'host/curtain_mac.cc',
434         'host/curtain_win.cc',
435         'host/desktop_environment.cc',
436         'host/desktop_environment.h',
437         'host/differ.h',
438         'host/differ.cc',
439         'host/disconnect_window.h',
440         'host/disconnect_window_linux.cc',
441         'host/disconnect_window_mac.h',
442         'host/disconnect_window_mac.mm',
443         'host/disconnect_window_win.cc',
444         'host/event_executor.h',
445         'host/event_executor_linux.cc',
446         'host/event_executor_mac.cc',
447         'host/event_executor_win.cc',
448         'host/heartbeat_sender.cc',
449         'host/heartbeat_sender.h',
450         'host/host_config.cc',
451         'host/host_config.h',
452         'host/host_key_pair.cc',
453         'host/host_key_pair.h',
454         'host/host_status_observer.h',
455         'host/in_memory_host_config.cc',
456         'host/in_memory_host_config.h',
457         'host/json_host_config.cc',
458         'host/json_host_config.h',
459         'host/local_input_monitor.h',
460         'host/local_input_monitor_linux.cc',
461         'host/local_input_monitor_mac.mm',
462         'host/local_input_monitor_thread_linux.cc',
463         'host/local_input_monitor_thread_linux.h',
464         'host/local_input_monitor_thread_win.cc',
465         'host/local_input_monitor_thread_win.h',
466         'host/local_input_monitor_win.cc',
467         'host/register_support_host_request.cc',
468         'host/register_support_host_request.h',
469         'host/self_access_verifier.cc',
470         'host/self_access_verifier.h',
471         'host/screen_recorder.cc',
472         'host/screen_recorder.h',
473         'host/support_access_verifier.cc',
474         'host/support_access_verifier.h',
475         'host/ui_strings.cc',
476         'host/ui_strings.h',
477         'host/user_authenticator.h',
478         'host/user_authenticator_linux.cc',
479         'host/user_authenticator_mac.cc',
480         'host/user_authenticator_win.cc',
481       ],
482       'conditions': [
483         ['toolkit_uses_gtk == 1', {
484           'dependencies': [
485             '../build/linux/system.gyp:gtk',
486           ],
487           'sources': [
488             'host/x_server_pixel_buffer.cc',
489             'host/x_server_pixel_buffer.h',
490           ],
491           'link_settings': {
492             'libraries': [
493               '-lX11',
494               '-lXdamage',
495               '-lXtst',
496               '-lpam',
497               '-lXext'
498             ],
499           },
500         }],
501         ['OS=="mac"', {
502           'sources': [
503             '../third_party/GTM/AppKit/GTMCarbonEvent.h',
504             '../third_party/GTM/AppKit/GTMCarbonEvent.m',
505             '../third_party/GTM/DebugUtils/GTMDebugSelectorValidation.h',
506             '../third_party/GTM/DebugUtils/GTMTypeCasting.h',
507             '../third_party/GTM/Foundation/GTMObjectSingleton.h',
508             '../third_party/GTM/GTMDefines.h',
509           ],
510           'include_dirs': [
511             '../third_party/GTM',
512             '../third_party/GTM/AppKit',
513             '../third_party/GTM/DebugUtils',
514             '../third_party/GTM/Foundation',
515           ],
516           'link_settings': {
517             'libraries': [
518               '$(SDKROOT)/System/Library/Frameworks/OpenGL.framework',
519             ],
520           },
521         }],
522       ],
523     },  # end of target 'remoting_host'
525     {
526       'target_name': 'remoting_client',
527       'type': 'static_library',
528       'dependencies': [
529         'remoting_base',
530         'remoting_jingle_glue',
531         'remoting_protocol',
532       ],
533       'sources': [
534         'client/chromoting_client.cc',
535         'client/chromoting_client.h',
536         'client/chromoting_stats.cc',
537         'client/chromoting_stats.h',
538         'client/chromoting_view.cc',
539         'client/chromoting_view.h',
540         'client/client_config.cc',
541         'client/client_config.h',
542         'client/client_context.cc',
543         'client/client_context.h',
544         'client/frame_consumer.h',
545         'client/input_handler.cc',
546         'client/input_handler.h',
547         'client/rectangle_update_decoder.cc',
548         'client/rectangle_update_decoder.h',
549       ],
550     },  # end of target 'remoting_client'
552     {
553       'target_name': 'remoting_simple_host',
554       'type': 'executable',
555       'dependencies': [
556         'remoting_base',
557         'remoting_host',
558         'remoting_jingle_glue',
559         '../base/base.gyp:base',
560         '../base/base.gyp:base_i18n',
561         '../media/media.gyp:media',
562       ],
563       'sources': [
564         'host/capturer_fake_ascii.cc',
565         'host/capturer_fake_ascii.h',
566         'host/continue_window.h',
567         'host/continue_window_mac.mm',
568         'host/continue_window_linux.cc',
569         'host/continue_window_win.cc',
570         'host/disconnect_window_linux.cc',
571         'host/disconnect_window_mac.h',
572         'host/disconnect_window_mac.mm',
573         'host/disconnect_window_win.cc',
574         'host/simple_host_process.cc',
575         '../base/test/mock_chrome_application_mac.mm',
576         '../base/test/mock_chrome_application_mac.h',
577       ],
578     },  # end of target 'remoting_simple_host'
580     {
581       'target_name': 'remoting_host_keygen',
582       'type': 'executable',
583       'dependencies': [
584         'remoting_base',
585         '../base/base.gyp:base',
586         '../base/base.gyp:base_i18n',
587         '../crypto/crypto.gyp:crypto',
588       ],
589       'sources': [
590         'host/keygen_main.cc',
591       ],
592     },  # end of target 'remoting_host_keygen'
594     {
595       'target_name': 'remoting_jingle_glue',
596       'type': 'static_library',
597       'dependencies': [
598         '../base/base.gyp:base',
599         '../jingle/jingle.gyp:jingle_glue',
600         '../jingle/jingle.gyp:notifier',
601         '../third_party/libjingle/libjingle.gyp:libjingle',
602         '../third_party/libjingle/libjingle.gyp:libjingle_p2p',
603       ],
604       'export_dependent_settings': [
605         '../third_party/libjingle/libjingle.gyp:libjingle',
606         '../third_party/libjingle/libjingle.gyp:libjingle_p2p',
607       ],
608       'sources': [
609         'jingle_glue/iq_request.cc',
610         'jingle_glue/iq_request.h',
611         'jingle_glue/javascript_iq_request.cc',
612         'jingle_glue/javascript_iq_request.h',
613         'jingle_glue/javascript_signal_strategy.cc',
614         'jingle_glue/javascript_signal_strategy.h',
615         'jingle_glue/jingle_info_request.cc',
616         'jingle_glue/jingle_info_request.h',
617         'jingle_glue/jingle_signaling_connector.cc',
618         'jingle_glue/jingle_signaling_connector.h',
619         'jingle_glue/jingle_thread.cc',
620         'jingle_glue/jingle_thread.h',
621         'jingle_glue/signal_strategy.h',
622         'jingle_glue/ssl_adapter.h',
623         'jingle_glue/ssl_adapter.cc',
624         'jingle_glue/ssl_socket_adapter.cc',
625         'jingle_glue/ssl_socket_adapter.h',
626         'jingle_glue/xmpp_iq_request.cc',
627         'jingle_glue/xmpp_iq_request.h',
628         'jingle_glue/xmpp_proxy.h',
629         'jingle_glue/xmpp_signal_strategy.cc',
630         'jingle_glue/xmpp_signal_strategy.h',
631         'jingle_glue/xmpp_socket_adapter.cc',
632         'jingle_glue/xmpp_socket_adapter.h',
633       ],
634     },  # end of target 'remoting_jingle_glue'
636     {
637       'target_name': 'remoting_protocol',
638       'type': 'static_library',
639       'dependencies': [
640         'remoting_base',
641         'remoting_jingle_glue',
642         '../crypto/crypto.gyp:crypto',
643         '../jingle/jingle.gyp:jingle_glue',
644         '../net/net.gyp:net',
645       ],
646       'export_dependent_settings': [
647         'remoting_jingle_glue',
648       ],
649       'sources': [
650         'protocol/auth_token_utils.cc',
651         'protocol/auth_token_utils.h',
652         'protocol/buffered_socket_writer.cc',
653         'protocol/buffered_socket_writer.h',
654         'protocol/channel_authenticator.cc',
655         'protocol/channel_authenticator.h',
656         'protocol/client_control_sender.cc',
657         'protocol/client_control_sender.h',
658         'protocol/client_message_dispatcher.cc',
659         'protocol/client_message_dispatcher.h',
660         'protocol/client_stub.h',
661         'protocol/connection_to_client.cc',
662         'protocol/connection_to_client.h',
663         'protocol/connection_to_host.cc',
664         'protocol/connection_to_host.h',
665         'protocol/content_description.cc',
666         'protocol/content_description.h',
667         'protocol/host_control_sender.cc',
668         'protocol/host_control_sender.h',
669         'protocol/host_message_dispatcher.cc',
670         'protocol/host_message_dispatcher.h',
671         'protocol/host_stub.h',
672         'protocol/input_sender.cc',
673         'protocol/input_sender.h',
674         'protocol/input_stub.h',
675         'protocol/jingle_channel_connector.h',
676         'protocol/jingle_datagram_connector.cc',
677         'protocol/jingle_datagram_connector.h',
678         'protocol/jingle_messages.cc',
679         'protocol/jingle_messages.h',
680         'protocol/jingle_session.cc',
681         'protocol/jingle_session.h',
682         'protocol/jingle_session_manager.cc',
683         'protocol/jingle_session_manager.h',
684         'protocol/jingle_stream_connector.cc',
685         'protocol/jingle_stream_connector.h',
686         'protocol/message_decoder.cc',
687         'protocol/message_decoder.h',
688         'protocol/message_reader.cc',
689         'protocol/message_reader.h',
690         'protocol/pepper_channel.h',
691         'protocol/pepper_session.cc',
692         'protocol/pepper_session.h',
693         'protocol/pepper_session_manager.cc',
694         'protocol/pepper_session_manager.h',
695         'protocol/pepper_stream_channel.cc',
696         'protocol/pepper_stream_channel.h',
697         'protocol/pepper_transport_socket_adapter.cc',
698         'protocol/pepper_transport_socket_adapter.h',
699         'protocol/protobuf_video_reader.cc',
700         'protocol/protobuf_video_reader.h',
701         'protocol/protobuf_video_writer.cc',
702         'protocol/protobuf_video_writer.h',
703         'protocol/rtcp_writer.cc',
704         'protocol/rtcp_writer.h',
705         'protocol/rtp_reader.cc',
706         'protocol/rtp_reader.h',
707         'protocol/rtp_utils.cc',
708         'protocol/rtp_utils.h',
709         'protocol/rtp_video_reader.cc',
710         'protocol/rtp_video_reader.h',
711         'protocol/rtp_video_writer.cc',
712         'protocol/rtp_video_writer.h',
713         'protocol/rtp_writer.cc',
714         'protocol/rtp_writer.h',
715         'protocol/secure_p2p_socket.cc',
716         'protocol/secure_p2p_socket.h',
717         'protocol/session.h',
718         'protocol/session_config.cc',
719         'protocol/session_config.h',
720         'protocol/session_manager.h',
721         'protocol/socket_reader_base.cc',
722         'protocol/socket_reader_base.h',
723         'protocol/transport_config.cc',
724         'protocol/transport_config.h',
725         'protocol/util.cc',
726         'protocol/util.h',
727         'protocol/video_reader.cc',
728         'protocol/video_reader.h',
729         'protocol/video_stub.h',
730         'protocol/video_writer.cc',
731         'protocol/video_writer.h',
732       ],
733     },  # end of target 'remoting_protocol'
735     {
736       'target_name': 'differ_block',
737       'type': 'static_library',
738       'dependencies': [
739         '../media/media.gyp:cpu_features',
740       ],
741       'conditions': [
742         [ 'target_arch == "ia32" or target_arch == "x64"', {
743           'dependencies': [
744             'differ_block_sse2',
745           ],
746         }],
747       ],
748       'sources': [
749         'host/differ_block.cc',
750         'host/differ_block.h',
751       ],
752     }, # end of target differ_block
754     {
755       'target_name': 'differ_block_sse2',
756       'type': 'static_library',
757       'conditions': [
758         [ 'os_posix == 1 and OS != "mac"', {
759           'cflags': [
760             '-msse2',
761           ],
762         }],
763       ],
764       'sources': [
765         'host/differ_block_sse2.cc',
766       ],
767     }, # end of target differ_block_sse2
769     {
770       'target_name': 'chromotocol_test_client',
771       'type': 'executable',
772       'dependencies': [
773         'remoting_base',
774         'remoting_protocol',
775       ],
776       'sources': [
777         'protocol/protocol_test_client.cc',
778         '../base/test/mock_chrome_application_mac.mm',
779         '../base/test/mock_chrome_application_mac.h',
780       ],
781     },  # end of target 'chromotocol_test_client'
783     # Remoting unit tests
784     {
785       'target_name': 'remoting_unittests',
786       'type': 'executable',
787       'dependencies': [
788         'remoting_base',
789         'remoting_client',
790         'remoting_host',
791         'remoting_jingle_glue',
792         'remoting_protocol',
793         '../base/base.gyp:base',
794         '../base/base.gyp:base_i18n',
795         '../base/base.gyp:test_support_base',
796         '../media/media.gyp:media',
797         '../ui/ui.gyp:ui',
798         '../testing/gmock.gyp:gmock',
799         '../testing/gtest.gyp:gtest',
800       ],
801       'include_dirs': [
802         '../testing/gmock/include',
803       ],
804       'sources': [
805         'base/auth_token_util_unittest.cc',
806         'base/codec_test.cc',
807         'base/codec_test.h',
808         'base/compound_buffer_unittest.cc',
809         'base/compressor_zlib_unittest.cc',
810         'base/decoder_vp8_unittest.cc',
811         'base/decompressor_zlib_unittest.cc',
812         'base/encode_decode_unittest.cc',
813         'base/encoder_vp8_unittest.cc',
814         'base/encoder_row_based_unittest.cc',
815         'base/base_mock_objects.cc',
816         'base/base_mock_objects.h',
817 # BUG57351        'client/chromoting_view_unittest.cc',
818         'host/capturer_linux_unittest.cc',
819         'host/capturer_mac_unittest.cc',
820         'host/capturer_win_unittest.cc',
821         'host/chromoting_host_context_unittest.cc',
822         'host/chromoting_host_unittest.cc',
823         'host/client_session_unittest.cc',
824         'host/differ_block_unittest.cc',
825         'host/differ_unittest.cc',
826         'host/heartbeat_sender_unittest.cc',
827         'host/host_key_pair_unittest.cc',
828         'host/host_mock_objects.cc',
829         'host/host_mock_objects.h',
830         'host/json_host_config_unittest.cc',
831         'host/register_support_host_request_unittest.cc',
832         'host/self_access_verifier_unittest.cc',
833         'host/screen_recorder_unittest.cc',
834         'host/test_key_pair.h',
835         'jingle_glue/fake_signal_strategy.cc',
836         'jingle_glue/fake_signal_strategy.h',
837         'jingle_glue/iq_request_unittest.cc',
838         'jingle_glue/jingle_thread_unittest.cc',
839         'jingle_glue/mock_objects.cc',
840         'jingle_glue/mock_objects.h',
841         'protocol/connection_to_client_unittest.cc',
842         'protocol/fake_session.cc',
843         'protocol/fake_session.h',
844         'protocol/jingle_messages_unittest.cc',
845         'protocol/jingle_session_unittest.cc',
846         'protocol/message_decoder_unittest.cc',
847         'protocol/message_reader_unittest.cc',
848         'protocol/protocol_mock_objects.cc',
849         'protocol/protocol_mock_objects.h',
850         'protocol/rtp_video_reader_unittest.cc',
851         'protocol/rtp_video_writer_unittest.cc',
852         'protocol/secure_p2p_socket_unittest.cc',
853         'run_all_unittests.cc',
854       ],
855       'conditions': [
856         ['toolkit_uses_gtk == 1', {
857           'dependencies': [
858             # Needed for the following #include chain:
859             #   base/run_all_unittests.cc
860             #   ../base/test_suite.h
861             #   gtk/gtk.h
862             '../build/linux/system.gyp:gtk',
863             '../build/linux/system.gyp:ssl',
864           ],
865           'conditions': [
866             [ 'linux_use_tcmalloc==1', {
867                 'dependencies': [
868                   '../base/allocator/allocator.gyp:allocator',
869                 ],
870               },
871             ],
872           ],
873         }],
874       ],  # end of 'conditions'
875     },  # end of target 'remoting_unittests'
876   ],  # end of targets