fyn 1.1.20 → 1.1.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/addon.gypi +185 -0
  2. package/bin/node-gyp.js +3 -0
  3. package/dist/Find-VisualStudio.cs +250 -0
  4. package/dist/fyn.js +84722 -60935
  5. package/gyp/AUTHORS +16 -0
  6. package/gyp/LICENSE +28 -0
  7. package/gyp/data/win/large-pdb-shim.cc +12 -0
  8. package/gyp/gyp +8 -0
  9. package/gyp/gyp.bat +5 -0
  10. package/gyp/gyp_main.py +45 -0
  11. package/gyp/pylib/gyp/MSVSNew.py +367 -0
  12. package/gyp/pylib/gyp/MSVSProject.py +206 -0
  13. package/gyp/pylib/gyp/MSVSSettings.py +1270 -0
  14. package/gyp/pylib/gyp/MSVSSettings_test.py +1547 -0
  15. package/gyp/pylib/gyp/MSVSToolFile.py +59 -0
  16. package/gyp/pylib/gyp/MSVSUserFile.py +153 -0
  17. package/gyp/pylib/gyp/MSVSUtil.py +271 -0
  18. package/gyp/pylib/gyp/MSVSVersion.py +574 -0
  19. package/gyp/pylib/gyp/__init__.py +666 -0
  20. package/gyp/pylib/gyp/common.py +654 -0
  21. package/gyp/pylib/gyp/common_test.py +78 -0
  22. package/gyp/pylib/gyp/easy_xml.py +165 -0
  23. package/gyp/pylib/gyp/easy_xml_test.py +109 -0
  24. package/gyp/pylib/gyp/flock_tool.py +55 -0
  25. package/gyp/pylib/gyp/generator/__init__.py +0 -0
  26. package/gyp/pylib/gyp/generator/analyzer.py +808 -0
  27. package/gyp/pylib/gyp/generator/android.py +1173 -0
  28. package/gyp/pylib/gyp/generator/cmake.py +1321 -0
  29. package/gyp/pylib/gyp/generator/compile_commands_json.py +120 -0
  30. package/gyp/pylib/gyp/generator/dump_dependency_json.py +103 -0
  31. package/gyp/pylib/gyp/generator/eclipse.py +464 -0
  32. package/gyp/pylib/gyp/generator/gypd.py +89 -0
  33. package/gyp/pylib/gyp/generator/gypsh.py +58 -0
  34. package/gyp/pylib/gyp/generator/make.py +2518 -0
  35. package/gyp/pylib/gyp/generator/msvs.py +3978 -0
  36. package/gyp/pylib/gyp/generator/msvs_test.py +44 -0
  37. package/gyp/pylib/gyp/generator/ninja.py +2936 -0
  38. package/gyp/pylib/gyp/generator/ninja_test.py +55 -0
  39. package/gyp/pylib/gyp/generator/xcode.py +1394 -0
  40. package/gyp/pylib/gyp/generator/xcode_test.py +25 -0
  41. package/gyp/pylib/gyp/input.py +3137 -0
  42. package/gyp/pylib/gyp/input_test.py +98 -0
  43. package/gyp/pylib/gyp/mac_tool.py +771 -0
  44. package/gyp/pylib/gyp/msvs_emulation.py +1271 -0
  45. package/gyp/pylib/gyp/ninja_syntax.py +174 -0
  46. package/gyp/pylib/gyp/simple_copy.py +61 -0
  47. package/gyp/pylib/gyp/win_tool.py +374 -0
  48. package/gyp/pylib/gyp/xcode_emulation.py +1939 -0
  49. package/gyp/pylib/gyp/xcode_ninja.py +302 -0
  50. package/gyp/pylib/gyp/xcodeproj_file.py +3197 -0
  51. package/gyp/pylib/gyp/xml_fix.py +65 -0
  52. package/gyp/requirements_dev.txt +2 -0
  53. package/gyp/setup.py +42 -0
  54. package/gyp/test_gyp.py +260 -0
  55. package/gyp/tools/README +15 -0
  56. package/gyp/tools/Xcode/README +5 -0
  57. package/gyp/tools/Xcode/Specifications/gyp.pbfilespec +27 -0
  58. package/gyp/tools/Xcode/Specifications/gyp.xclangspec +226 -0
  59. package/gyp/tools/emacs/README +12 -0
  60. package/gyp/tools/emacs/gyp-tests.el +63 -0
  61. package/gyp/tools/emacs/gyp.el +275 -0
  62. package/gyp/tools/emacs/run-unit-tests.sh +7 -0
  63. package/gyp/tools/emacs/testdata/media.gyp +1105 -0
  64. package/gyp/tools/emacs/testdata/media.gyp.fontified +1107 -0
  65. package/gyp/tools/graphviz.py +102 -0
  66. package/gyp/tools/pretty_gyp.py +156 -0
  67. package/gyp/tools/pretty_sln.py +181 -0
  68. package/gyp/tools/pretty_vcproj.py +339 -0
  69. package/node-gyp-bin/node-gyp +6 -0
  70. package/node-gyp-bin/node-gyp.cmd +5 -0
  71. package/package.json +7 -3
  72. package/src/win_delay_load_hook.cc +39 -0
@@ -0,0 +1,1105 @@
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.
4
+
5
+ {
6
+ 'variables': {
7
+ 'chromium_code': 1,
8
+ # Override to dynamically link the PulseAudio library.
9
+ 'use_pulseaudio%': 0,
10
+ # Override to dynamically link the cras (ChromeOS audio) library.
11
+ 'use_cras%': 0,
12
+ },
13
+ 'targets': [
14
+ {
15
+ 'target_name': 'media',
16
+ 'type': '<(component)',
17
+ 'dependencies': [
18
+ 'yuv_convert',
19
+ '../base/base.gyp:base',
20
+ '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
21
+ '../build/temp_gyp/googleurl.gyp:googleurl',
22
+ '../crypto/crypto.gyp:crypto',
23
+ '../third_party/openmax/openmax.gyp:il',
24
+ '../ui/ui.gyp:ui',
25
+ ],
26
+ 'defines': [
27
+ 'MEDIA_IMPLEMENTATION',
28
+ ],
29
+ 'include_dirs': [
30
+ '..',
31
+ ],
32
+ 'sources': [
33
+ 'audio/android/audio_manager_android.cc',
34
+ 'audio/android/audio_manager_android.h',
35
+ 'audio/android/audio_track_output_android.cc',
36
+ 'audio/android/audio_track_output_android.h',
37
+ 'audio/android/opensles_input.cc',
38
+ 'audio/android/opensles_input.h',
39
+ 'audio/android/opensles_output.cc',
40
+ 'audio/android/opensles_output.h',
41
+ 'audio/async_socket_io_handler.h',
42
+ 'audio/async_socket_io_handler_posix.cc',
43
+ 'audio/async_socket_io_handler_win.cc',
44
+ 'audio/audio_buffers_state.cc',
45
+ 'audio/audio_buffers_state.h',
46
+ 'audio/audio_io.h',
47
+ 'audio/audio_input_controller.cc',
48
+ 'audio/audio_input_controller.h',
49
+ 'audio/audio_input_stream_impl.cc',
50
+ 'audio/audio_input_stream_impl.h',
51
+ 'audio/audio_device_name.cc',
52
+ 'audio/audio_device_name.h',
53
+ 'audio/audio_manager.cc',
54
+ 'audio/audio_manager.h',
55
+ 'audio/audio_manager_base.cc',
56
+ 'audio/audio_manager_base.h',
57
+ 'audio/audio_output_controller.cc',
58
+ 'audio/audio_output_controller.h',
59
+ 'audio/audio_output_dispatcher.cc',
60
+ 'audio/audio_output_dispatcher.h',
61
+ 'audio/audio_output_dispatcher_impl.cc',
62
+ 'audio/audio_output_dispatcher_impl.h',
63
+ 'audio/audio_output_mixer.cc',
64
+ 'audio/audio_output_mixer.h',
65
+ 'audio/audio_output_proxy.cc',
66
+ 'audio/audio_output_proxy.h',
67
+ 'audio/audio_parameters.cc',
68
+ 'audio/audio_parameters.h',
69
+ 'audio/audio_util.cc',
70
+ 'audio/audio_util.h',
71
+ 'audio/cross_process_notification.cc',
72
+ 'audio/cross_process_notification.h',
73
+ 'audio/cross_process_notification_win.cc',
74
+ 'audio/cross_process_notification_posix.cc',
75
+ 'audio/fake_audio_input_stream.cc',
76
+ 'audio/fake_audio_input_stream.h',
77
+ 'audio/fake_audio_output_stream.cc',
78
+ 'audio/fake_audio_output_stream.h',
79
+ 'audio/linux/audio_manager_linux.cc',
80
+ 'audio/linux/audio_manager_linux.h',
81
+ 'audio/linux/alsa_input.cc',
82
+ 'audio/linux/alsa_input.h',
83
+ 'audio/linux/alsa_output.cc',
84
+ 'audio/linux/alsa_output.h',
85
+ 'audio/linux/alsa_util.cc',
86
+ 'audio/linux/alsa_util.h',
87
+ 'audio/linux/alsa_wrapper.cc',
88
+ 'audio/linux/alsa_wrapper.h',
89
+ 'audio/linux/cras_output.cc',
90
+ 'audio/linux/cras_output.h',
91
+ 'audio/openbsd/audio_manager_openbsd.cc',
92
+ 'audio/openbsd/audio_manager_openbsd.h',
93
+ 'audio/mac/audio_input_mac.cc',
94
+ 'audio/mac/audio_input_mac.h',
95
+ 'audio/mac/audio_low_latency_input_mac.cc',
96
+ 'audio/mac/audio_low_latency_input_mac.h',
97
+ 'audio/mac/audio_low_latency_output_mac.cc',
98
+ 'audio/mac/audio_low_latency_output_mac.h',
99
+ 'audio/mac/audio_manager_mac.cc',
100
+ 'audio/mac/audio_manager_mac.h',
101
+ 'audio/mac/audio_output_mac.cc',
102
+ 'audio/mac/audio_output_mac.h',
103
+ 'audio/null_audio_sink.cc',
104
+ 'audio/null_audio_sink.h',
105
+ 'audio/pulse/pulse_output.cc',
106
+ 'audio/pulse/pulse_output.h',
107
+ 'audio/sample_rates.cc',
108
+ 'audio/sample_rates.h',
109
+ 'audio/simple_sources.cc',
110
+ 'audio/simple_sources.h',
111
+ 'audio/win/audio_low_latency_input_win.cc',
112
+ 'audio/win/audio_low_latency_input_win.h',
113
+ 'audio/win/audio_low_latency_output_win.cc',
114
+ 'audio/win/audio_low_latency_output_win.h',
115
+ 'audio/win/audio_manager_win.cc',
116
+ 'audio/win/audio_manager_win.h',
117
+ 'audio/win/avrt_wrapper_win.cc',
118
+ 'audio/win/avrt_wrapper_win.h',
119
+ 'audio/win/device_enumeration_win.cc',
120
+ 'audio/win/device_enumeration_win.h',
121
+ 'audio/win/wavein_input_win.cc',
122
+ 'audio/win/wavein_input_win.h',
123
+ 'audio/win/waveout_output_win.cc',
124
+ 'audio/win/waveout_output_win.h',
125
+ 'base/android/media_jni_registrar.cc',
126
+ 'base/android/media_jni_registrar.h',
127
+ 'base/audio_decoder.cc',
128
+ 'base/audio_decoder.h',
129
+ 'base/audio_decoder_config.cc',
130
+ 'base/audio_decoder_config.h',
131
+ 'base/audio_renderer.h',
132
+ 'base/audio_renderer_mixer.cc',
133
+ 'base/audio_renderer_mixer.h',
134
+ 'base/audio_renderer_mixer_input.cc',
135
+ 'base/audio_renderer_mixer_input.h',
136
+ 'base/bitstream_buffer.h',
137
+ 'base/buffers.cc',
138
+ 'base/buffers.h',
139
+ 'base/byte_queue.cc',
140
+ 'base/byte_queue.h',
141
+ 'base/channel_layout.cc',
142
+ 'base/channel_layout.h',
143
+ 'base/clock.cc',
144
+ 'base/clock.h',
145
+ 'base/composite_filter.cc',
146
+ 'base/composite_filter.h',
147
+ 'base/data_buffer.cc',
148
+ 'base/data_buffer.h',
149
+ 'base/data_source.cc',
150
+ 'base/data_source.h',
151
+ 'base/decoder_buffer.cc',
152
+ 'base/decoder_buffer.h',
153
+ 'base/decrypt_config.cc',
154
+ 'base/decrypt_config.h',
155
+ 'base/decryptor.h',
156
+ 'base/decryptor_client.h',
157
+ 'base/demuxer.cc',
158
+ 'base/demuxer.h',
159
+ 'base/demuxer_stream.cc',
160
+ 'base/demuxer_stream.h',
161
+ 'base/djb2.cc',
162
+ 'base/djb2.h',
163
+ 'base/filter_collection.cc',
164
+ 'base/filter_collection.h',
165
+ 'base/filter_host.h',
166
+ 'base/filters.cc',
167
+ 'base/filters.h',
168
+ 'base/h264_bitstream_converter.cc',
169
+ 'base/h264_bitstream_converter.h',
170
+ 'base/media.h',
171
+ 'base/media_android.cc',
172
+ 'base/media_export.h',
173
+ 'base/media_log.cc',
174
+ 'base/media_log.h',
175
+ 'base/media_log_event.h',
176
+ 'base/media_posix.cc',
177
+ 'base/media_switches.cc',
178
+ 'base/media_switches.h',
179
+ 'base/media_win.cc',
180
+ 'base/message_loop_factory.cc',
181
+ 'base/message_loop_factory.h',
182
+ 'base/pipeline.cc',
183
+ 'base/pipeline.h',
184
+ 'base/pipeline_status.cc',
185
+ 'base/pipeline_status.h',
186
+ 'base/ranges.cc',
187
+ 'base/ranges.h',
188
+ 'base/seekable_buffer.cc',
189
+ 'base/seekable_buffer.h',
190
+ 'base/state_matrix.cc',
191
+ 'base/state_matrix.h',
192
+ 'base/stream_parser.cc',
193
+ 'base/stream_parser.h',
194
+ 'base/stream_parser_buffer.cc',
195
+ 'base/stream_parser_buffer.h',
196
+ 'base/video_decoder.cc',
197
+ 'base/video_decoder.h',
198
+ 'base/video_decoder_config.cc',
199
+ 'base/video_decoder_config.h',
200
+ 'base/video_frame.cc',
201
+ 'base/video_frame.h',
202
+ 'base/video_renderer.h',
203
+ 'base/video_util.cc',
204
+ 'base/video_util.h',
205
+ 'crypto/aes_decryptor.cc',
206
+ 'crypto/aes_decryptor.h',
207
+ 'ffmpeg/ffmpeg_common.cc',
208
+ 'ffmpeg/ffmpeg_common.h',
209
+ 'ffmpeg/file_protocol.cc',
210
+ 'ffmpeg/file_protocol.h',
211
+ 'filters/audio_file_reader.cc',
212
+ 'filters/audio_file_reader.h',
213
+ 'filters/audio_renderer_algorithm.cc',
214
+ 'filters/audio_renderer_algorithm.h',
215
+ 'filters/audio_renderer_impl.cc',
216
+ 'filters/audio_renderer_impl.h',
217
+ 'filters/bitstream_converter.cc',
218
+ 'filters/bitstream_converter.h',
219
+ 'filters/chunk_demuxer.cc',
220
+ 'filters/chunk_demuxer.h',
221
+ 'filters/chunk_demuxer_client.h',
222
+ 'filters/dummy_demuxer.cc',
223
+ 'filters/dummy_demuxer.h',
224
+ 'filters/ffmpeg_audio_decoder.cc',
225
+ 'filters/ffmpeg_audio_decoder.h',
226
+ 'filters/ffmpeg_demuxer.cc',
227
+ 'filters/ffmpeg_demuxer.h',
228
+ 'filters/ffmpeg_h264_bitstream_converter.cc',
229
+ 'filters/ffmpeg_h264_bitstream_converter.h',
230
+ 'filters/ffmpeg_glue.cc',
231
+ 'filters/ffmpeg_glue.h',
232
+ 'filters/ffmpeg_video_decoder.cc',
233
+ 'filters/ffmpeg_video_decoder.h',
234
+ 'filters/file_data_source.cc',
235
+ 'filters/file_data_source.h',
236
+ 'filters/gpu_video_decoder.cc',
237
+ 'filters/gpu_video_decoder.h',
238
+ 'filters/in_memory_url_protocol.cc',
239
+ 'filters/in_memory_url_protocol.h',
240
+ 'filters/source_buffer_stream.cc',
241
+ 'filters/source_buffer_stream.h',
242
+ 'filters/video_frame_generator.cc',
243
+ 'filters/video_frame_generator.h',
244
+ 'filters/video_renderer_base.cc',
245
+ 'filters/video_renderer_base.h',
246
+ 'video/capture/fake_video_capture_device.cc',
247
+ 'video/capture/fake_video_capture_device.h',
248
+ 'video/capture/linux/video_capture_device_linux.cc',
249
+ 'video/capture/linux/video_capture_device_linux.h',
250
+ 'video/capture/mac/video_capture_device_mac.h',
251
+ 'video/capture/mac/video_capture_device_mac.mm',
252
+ 'video/capture/mac/video_capture_device_qtkit_mac.h',
253
+ 'video/capture/mac/video_capture_device_qtkit_mac.mm',
254
+ 'video/capture/video_capture.h',
255
+ 'video/capture/video_capture_device.h',
256
+ 'video/capture/video_capture_device_dummy.cc',
257
+ 'video/capture/video_capture_device_dummy.h',
258
+ 'video/capture/video_capture_proxy.cc',
259
+ 'video/capture/video_capture_proxy.h',
260
+ 'video/capture/video_capture_types.h',
261
+ 'video/capture/win/filter_base_win.cc',
262
+ 'video/capture/win/filter_base_win.h',
263
+ 'video/capture/win/pin_base_win.cc',
264
+ 'video/capture/win/pin_base_win.h',
265
+ 'video/capture/win/sink_filter_observer_win.h',
266
+ 'video/capture/win/sink_filter_win.cc',
267
+ 'video/capture/win/sink_filter_win.h',
268
+ 'video/capture/win/sink_input_pin_win.cc',
269
+ 'video/capture/win/sink_input_pin_win.h',
270
+ 'video/capture/win/video_capture_device_win.cc',
271
+ 'video/capture/win/video_capture_device_win.h',
272
+ 'video/picture.cc',
273
+ 'video/picture.h',
274
+ 'video/video_decode_accelerator.cc',
275
+ 'video/video_decode_accelerator.h',
276
+ 'webm/webm_constants.h',
277
+ 'webm/webm_cluster_parser.cc',
278
+ 'webm/webm_cluster_parser.h',
279
+ 'webm/webm_content_encodings.cc',
280
+ 'webm/webm_content_encodings.h',
281
+ 'webm/webm_content_encodings_client.cc',
282
+ 'webm/webm_content_encodings_client.h',
283
+ 'webm/webm_info_parser.cc',
284
+ 'webm/webm_info_parser.h',
285
+ 'webm/webm_parser.cc',
286
+ 'webm/webm_parser.h',
287
+ 'webm/webm_stream_parser.cc',
288
+ 'webm/webm_stream_parser.h',
289
+ 'webm/webm_tracks_parser.cc',
290
+ 'webm/webm_tracks_parser.h',
291
+ ],
292
+ 'direct_dependent_settings': {
293
+ 'include_dirs': [
294
+ '..',
295
+ ],
296
+ },
297
+ 'conditions': [
298
+ # Android doesn't use ffmpeg, so make the dependency conditional
299
+ # and exclude the sources which depend on ffmpeg.
300
+ ['OS != "android"', {
301
+ 'dependencies': [
302
+ '../third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
303
+ ],
304
+ }],
305
+ ['OS == "android"', {
306
+ 'sources!': [
307
+ 'base/media_posix.cc',
308
+ 'ffmpeg/ffmpeg_common.cc',
309
+ 'ffmpeg/ffmpeg_common.h',
310
+ 'ffmpeg/file_protocol.cc',
311
+ 'ffmpeg/file_protocol.h',
312
+ 'filters/audio_file_reader.cc',
313
+ 'filters/audio_file_reader.h',
314
+ 'filters/bitstream_converter.cc',
315
+ 'filters/bitstream_converter.h',
316
+ 'filters/chunk_demuxer.cc',
317
+ 'filters/chunk_demuxer.h',
318
+ 'filters/chunk_demuxer_client.h',
319
+ 'filters/ffmpeg_audio_decoder.cc',
320
+ 'filters/ffmpeg_audio_decoder.h',
321
+ 'filters/ffmpeg_demuxer.cc',
322
+ 'filters/ffmpeg_demuxer.h',
323
+ 'filters/ffmpeg_h264_bitstream_converter.cc',
324
+ 'filters/ffmpeg_h264_bitstream_converter.h',
325
+ 'filters/ffmpeg_glue.cc',
326
+ 'filters/ffmpeg_glue.h',
327
+ 'filters/ffmpeg_video_decoder.cc',
328
+ 'filters/ffmpeg_video_decoder.h',
329
+ 'filters/gpu_video_decoder.cc',
330
+ 'filters/gpu_video_decoder.h',
331
+ 'webm/webm_cluster_parser.cc',
332
+ 'webm/webm_cluster_parser.h',
333
+ 'webm/webm_stream_parser.cc',
334
+ 'webm/webm_stream_parser.h',
335
+ ],
336
+ }],
337
+ # The below 'android' condition were added temporarily and should be
338
+ # removed in downstream, because there is no Java environment setup in
339
+ # upstream yet.
340
+ ['OS == "android"', {
341
+ 'sources!':[
342
+ 'audio/android/audio_track_output_android.cc',
343
+ ],
344
+ 'sources':[
345
+ 'audio/android/audio_track_output_stub_android.cc',
346
+ ],
347
+ 'link_settings': {
348
+ 'libraries': [
349
+ '-lOpenSLES',
350
+ ],
351
+ },
352
+ }],
353
+ ['OS=="linux" or OS=="freebsd" or OS=="solaris"', {
354
+ 'link_settings': {
355
+ 'libraries': [
356
+ '-lasound',
357
+ ],
358
+ },
359
+ }],
360
+ ['OS=="openbsd"', {
361
+ 'sources/': [ ['exclude', '/alsa_' ],
362
+ ['exclude', '/audio_manager_linux' ] ],
363
+ 'link_settings': {
364
+ 'libraries': [
365
+ ],
366
+ },
367
+ }],
368
+ ['OS!="openbsd"', {
369
+ 'sources!': [
370
+ 'audio/openbsd/audio_manager_openbsd.cc',
371
+ 'audio/openbsd/audio_manager_openbsd.h',
372
+ ],
373
+ }],
374
+ ['OS=="linux"', {
375
+ 'variables': {
376
+ 'conditions': [
377
+ ['sysroot!=""', {
378
+ 'pkg-config': '../build/linux/pkg-config-wrapper "<(sysroot)" "<(target_arch)"',
379
+ }, {
380
+ 'pkg-config': 'pkg-config'
381
+ }],
382
+ ],
383
+ },
384
+ 'conditions': [
385
+ ['use_cras == 1', {
386
+ 'cflags': [
387
+ '<!@(<(pkg-config) --cflags libcras)',
388
+ ],
389
+ 'link_settings': {
390
+ 'libraries': [
391
+ '<!@(<(pkg-config) --libs libcras)',
392
+ ],
393
+ },
394
+ 'defines': [
395
+ 'USE_CRAS',
396
+ ],
397
+ }, { # else: use_cras == 0
398
+ 'sources!': [
399
+ 'audio/linux/cras_output.cc',
400
+ 'audio/linux/cras_output.h',
401
+ ],
402
+ }],
403
+ ],
404
+ }],
405
+ ['os_posix == 1', {
406
+ 'conditions': [
407
+ ['use_pulseaudio == 1', {
408
+ 'cflags': [
409
+ '<!@(pkg-config --cflags libpulse)',
410
+ ],
411
+ 'link_settings': {
412
+ 'libraries': [
413
+ '<!@(pkg-config --libs-only-l libpulse)',
414
+ ],
415
+ },
416
+ 'defines': [
417
+ 'USE_PULSEAUDIO',
418
+ ],
419
+ }, { # else: use_pulseaudio == 0
420
+ 'sources!': [
421
+ 'audio/pulse/pulse_output.cc',
422
+ 'audio/pulse/pulse_output.h',
423
+ ],
424
+ }],
425
+ ],
426
+ }],
427
+ ['os_posix == 1 and OS != "android"', {
428
+ # Video capture isn't supported in Android yet.
429
+ 'sources!': [
430
+ 'video/capture/video_capture_device_dummy.cc',
431
+ 'video/capture/video_capture_device_dummy.h',
432
+ ],
433
+ }],
434
+ ['OS=="mac"', {
435
+ 'link_settings': {
436
+ 'libraries': [
437
+ '$(SDKROOT)/System/Library/Frameworks/AudioUnit.framework',
438
+ '$(SDKROOT)/System/Library/Frameworks/AudioToolbox.framework',
439
+ '$(SDKROOT)/System/Library/Frameworks/CoreAudio.framework',
440
+ '$(SDKROOT)/System/Library/Frameworks/CoreVideo.framework',
441
+ '$(SDKROOT)/System/Library/Frameworks/QTKit.framework',
442
+ ],
443
+ },
444
+ }],
445
+ ['OS=="win"', {
446
+ 'sources!': [
447
+ 'audio/pulse/pulse_output.cc',
448
+ 'audio/pulse/pulse_output.h',
449
+ 'video/capture/video_capture_device_dummy.cc',
450
+ 'video/capture/video_capture_device_dummy.h',
451
+ ],
452
+ }],
453
+ ['proprietary_codecs==1 or branding=="Chrome"', {
454
+ 'sources': [
455
+ 'mp4/avc.cc',
456
+ 'mp4/avc.h',
457
+ 'mp4/box_definitions.cc',
458
+ 'mp4/box_definitions.h',
459
+ 'mp4/box_reader.cc',
460
+ 'mp4/box_reader.h',
461
+ 'mp4/cenc.cc',
462
+ 'mp4/cenc.h',
463
+ 'mp4/mp4_stream_parser.cc',
464
+ 'mp4/mp4_stream_parser.h',
465
+ 'mp4/offset_byte_queue.cc',
466
+ 'mp4/offset_byte_queue.h',
467
+ 'mp4/track_run_iterator.cc',
468
+ 'mp4/track_run_iterator.h',
469
+ ],
470
+ }],
471
+ ],
472
+ },
473
+ {
474
+ 'target_name': 'yuv_convert',
475
+ 'type': 'static_library',
476
+ 'include_dirs': [
477
+ '..',
478
+ ],
479
+ 'conditions': [
480
+ ['order_profiling != 0', {
481
+ 'target_conditions' : [
482
+ ['_toolset=="target"', {
483
+ 'cflags!': [ '-finstrument-functions' ],
484
+ }],
485
+ ],
486
+ }],
487
+ [ 'target_arch == "ia32" or target_arch == "x64"', {
488
+ 'dependencies': [
489
+ 'yuv_convert_simd_x86',
490
+ ],
491
+ }],
492
+ [ 'target_arch == "arm"', {
493
+ 'dependencies': [
494
+ 'yuv_convert_simd_arm',
495
+ ],
496
+ }],
497
+ ],
498
+ 'sources': [
499
+ 'base/yuv_convert.cc',
500
+ 'base/yuv_convert.h',
501
+ ],
502
+ },
503
+ {
504
+ 'target_name': 'yuv_convert_simd_x86',
505
+ 'type': 'static_library',
506
+ 'include_dirs': [
507
+ '..',
508
+ ],
509
+ 'sources': [
510
+ 'base/simd/convert_rgb_to_yuv_c.cc',
511
+ 'base/simd/convert_rgb_to_yuv_sse2.cc',
512
+ 'base/simd/convert_rgb_to_yuv_ssse3.asm',
513
+ 'base/simd/convert_rgb_to_yuv_ssse3.cc',
514
+ 'base/simd/convert_rgb_to_yuv_ssse3.inc',
515
+ 'base/simd/convert_yuv_to_rgb_c.cc',
516
+ 'base/simd/convert_yuv_to_rgb_x86.cc',
517
+ 'base/simd/convert_yuv_to_rgb_mmx.asm',
518
+ 'base/simd/convert_yuv_to_rgb_mmx.inc',
519
+ 'base/simd/convert_yuv_to_rgb_sse.asm',
520
+ 'base/simd/filter_yuv.h',
521
+ 'base/simd/filter_yuv_c.cc',
522
+ 'base/simd/filter_yuv_mmx.cc',
523
+ 'base/simd/filter_yuv_sse2.cc',
524
+ 'base/simd/linear_scale_yuv_to_rgb_mmx.asm',
525
+ 'base/simd/linear_scale_yuv_to_rgb_mmx.inc',
526
+ 'base/simd/linear_scale_yuv_to_rgb_sse.asm',
527
+ 'base/simd/scale_yuv_to_rgb_mmx.asm',
528
+ 'base/simd/scale_yuv_to_rgb_mmx.inc',
529
+ 'base/simd/scale_yuv_to_rgb_sse.asm',
530
+ 'base/simd/yuv_to_rgb_table.cc',
531
+ 'base/simd/yuv_to_rgb_table.h',
532
+ ],
533
+ 'conditions': [
534
+ ['order_profiling != 0', {
535
+ 'target_conditions' : [
536
+ ['_toolset=="target"', {
537
+ 'cflags!': [ '-finstrument-functions' ],
538
+ }],
539
+ ],
540
+ }],
541
+ [ 'target_arch == "x64"', {
542
+ # Source files optimized for X64 systems.
543
+ 'sources': [
544
+ 'base/simd/linear_scale_yuv_to_rgb_mmx_x64.asm',
545
+ 'base/simd/scale_yuv_to_rgb_sse2_x64.asm',
546
+ ],
547
+ }],
548
+ [ 'os_posix == 1 and OS != "mac" and OS != "android"', {
549
+ 'cflags': [
550
+ '-msse2',
551
+ ],
552
+ }],
553
+ [ 'OS == "mac"', {
554
+ 'configurations': {
555
+ 'Debug': {
556
+ 'xcode_settings': {
557
+ # gcc on the mac builds horribly unoptimized sse code in debug
558
+ # mode. Since this is rarely going to be debugged, run with full
559
+ # optimizations in Debug as well as Release.
560
+ 'GCC_OPTIMIZATION_LEVEL': '3', # -O3
561
+ },
562
+ },
563
+ },
564
+ }],
565
+ [ 'OS=="win"', {
566
+ 'variables': {
567
+ 'yasm_flags': [
568
+ '-DWIN32',
569
+ '-DMSVC',
570
+ '-DCHROMIUM',
571
+ '-Isimd',
572
+ ],
573
+ },
574
+ }],
575
+ [ 'OS=="mac"', {
576
+ 'variables': {
577
+ 'yasm_flags': [
578
+ '-DPREFIX',
579
+ '-DMACHO',
580
+ '-DCHROMIUM',
581
+ '-Isimd',
582
+ ],
583
+ },
584
+ }],
585
+ [ 'os_posix==1 and OS!="mac"', {
586
+ 'variables': {
587
+ 'conditions': [
588
+ [ 'target_arch=="ia32"', {
589
+ 'yasm_flags': [
590
+ '-DX86_32',
591
+ '-DELF',
592
+ '-DCHROMIUM',
593
+ '-Isimd',
594
+ ],
595
+ }, {
596
+ 'yasm_flags': [
597
+ '-DARCH_X86_64',
598
+ '-DELF',
599
+ '-DPIC',
600
+ '-DCHROMIUM',
601
+ '-Isimd',
602
+ ],
603
+ }],
604
+ ],
605
+ },
606
+ }],
607
+ ],
608
+ 'variables': {
609
+ 'yasm_output_path': '<(SHARED_INTERMEDIATE_DIR)/media',
610
+ },
611
+ 'msvs_2010_disable_uldi_when_referenced': 1,
612
+ 'includes': [
613
+ '../third_party/yasm/yasm_compile.gypi',
614
+ ],
615
+ },
616
+ {
617
+ 'target_name': 'yuv_convert_simd_arm',
618
+ 'type': 'static_library',
619
+ 'include_dirs': [
620
+ '..',
621
+ ],
622
+ 'sources': [
623
+ 'base/simd/convert_rgb_to_yuv_c.cc',
624
+ 'base/simd/convert_rgb_to_yuv.h',
625
+ 'base/simd/convert_yuv_to_rgb_c.cc',
626
+ 'base/simd/convert_yuv_to_rgb.h',
627
+ 'base/simd/filter_yuv.h',
628
+ 'base/simd/filter_yuv_c.cc',
629
+ 'base/simd/yuv_to_rgb_table.cc',
630
+ 'base/simd/yuv_to_rgb_table.h',
631
+ ],
632
+ },
633
+ {
634
+ 'target_name': 'media_unittests',
635
+ 'type': 'executable',
636
+ 'dependencies': [
637
+ 'media',
638
+ 'media_test_support',
639
+ 'yuv_convert',
640
+ '../base/base.gyp:base',
641
+ '../base/base.gyp:base_i18n',
642
+ '../base/base.gyp:test_support_base',
643
+ '../testing/gmock.gyp:gmock',
644
+ '../testing/gtest.gyp:gtest',
645
+ '../ui/ui.gyp:ui',
646
+ ],
647
+ 'sources': [
648
+ 'audio/async_socket_io_handler_unittest.cc',
649
+ 'audio/audio_input_controller_unittest.cc',
650
+ 'audio/audio_input_device_unittest.cc',
651
+ 'audio/audio_input_unittest.cc',
652
+ 'audio/audio_input_volume_unittest.cc',
653
+ 'audio/audio_low_latency_input_output_unittest.cc',
654
+ 'audio/audio_output_controller_unittest.cc',
655
+ 'audio/audio_output_proxy_unittest.cc',
656
+ 'audio/audio_parameters_unittest.cc',
657
+ 'audio/audio_util_unittest.cc',
658
+ 'audio/cross_process_notification_unittest.cc',
659
+ 'audio/linux/alsa_output_unittest.cc',
660
+ 'audio/mac/audio_low_latency_input_mac_unittest.cc',
661
+ 'audio/mac/audio_output_mac_unittest.cc',
662
+ 'audio/simple_sources_unittest.cc',
663
+ 'audio/win/audio_low_latency_input_win_unittest.cc',
664
+ 'audio/win/audio_low_latency_output_win_unittest.cc',
665
+ 'audio/win/audio_output_win_unittest.cc',
666
+ 'base/audio_renderer_mixer_unittest.cc',
667
+ 'base/audio_renderer_mixer_input_unittest.cc',
668
+ 'base/buffers_unittest.cc',
669
+ 'base/clock_unittest.cc',
670
+ 'base/composite_filter_unittest.cc',
671
+ 'base/data_buffer_unittest.cc',
672
+ 'base/decoder_buffer_unittest.cc',
673
+ 'base/djb2_unittest.cc',
674
+ 'base/fake_audio_render_callback.cc',
675
+ 'base/fake_audio_render_callback.h',
676
+ 'base/filter_collection_unittest.cc',
677
+ 'base/h264_bitstream_converter_unittest.cc',
678
+ 'base/pipeline_unittest.cc',
679
+ 'base/ranges_unittest.cc',
680
+ 'base/run_all_unittests.cc',
681
+ 'base/seekable_buffer_unittest.cc',
682
+ 'base/state_matrix_unittest.cc',
683
+ 'base/test_data_util.cc',
684
+ 'base/test_data_util.h',
685
+ 'base/video_frame_unittest.cc',
686
+ 'base/video_util_unittest.cc',
687
+ 'base/yuv_convert_unittest.cc',
688
+ 'crypto/aes_decryptor_unittest.cc',
689
+ 'ffmpeg/ffmpeg_common_unittest.cc',
690
+ 'filters/audio_renderer_algorithm_unittest.cc',
691
+ 'filters/audio_renderer_impl_unittest.cc',
692
+ 'filters/bitstream_converter_unittest.cc',
693
+ 'filters/chunk_demuxer_unittest.cc',
694
+ 'filters/ffmpeg_audio_decoder_unittest.cc',
695
+ 'filters/ffmpeg_decoder_unittest.h',
696
+ 'filters/ffmpeg_demuxer_unittest.cc',
697
+ 'filters/ffmpeg_glue_unittest.cc',
698
+ 'filters/ffmpeg_h264_bitstream_converter_unittest.cc',
699
+ 'filters/ffmpeg_video_decoder_unittest.cc',
700
+ 'filters/file_data_source_unittest.cc',
701
+ 'filters/pipeline_integration_test.cc',
702
+ 'filters/pipeline_integration_test_base.cc',
703
+ 'filters/source_buffer_stream_unittest.cc',
704
+ 'filters/video_renderer_base_unittest.cc',
705
+ 'video/capture/video_capture_device_unittest.cc',
706
+ 'webm/cluster_builder.cc',
707
+ 'webm/cluster_builder.h',
708
+ 'webm/webm_cluster_parser_unittest.cc',
709
+ 'webm/webm_content_encodings_client_unittest.cc',
710
+ 'webm/webm_parser_unittest.cc',
711
+ ],
712
+ 'conditions': [
713
+ ['os_posix==1 and OS!="mac"', {
714
+ 'conditions': [
715
+ ['linux_use_tcmalloc==1', {
716
+ 'dependencies': [
717
+ '../base/allocator/allocator.gyp:allocator',
718
+ ],
719
+ }],
720
+ ],
721
+ }],
722
+ ['OS != "android"', {
723
+ 'dependencies': [
724
+ '../third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
725
+ ],
726
+ }],
727
+ ['OS == "android"', {
728
+ 'sources!': [
729
+ 'audio/audio_input_volume_unittest.cc',
730
+ 'base/test_data_util.cc',
731
+ 'base/test_data_util.h',
732
+ 'ffmpeg/ffmpeg_common_unittest.cc',
733
+ 'filters/ffmpeg_audio_decoder_unittest.cc',
734
+ 'filters/bitstream_converter_unittest.cc',
735
+ 'filters/chunk_demuxer_unittest.cc',
736
+ 'filters/ffmpeg_demuxer_unittest.cc',
737
+ 'filters/ffmpeg_glue_unittest.cc',
738
+ 'filters/ffmpeg_h264_bitstream_converter_unittest.cc',
739
+ 'filters/ffmpeg_video_decoder_unittest.cc',
740
+ 'filters/pipeline_integration_test.cc',
741
+ 'filters/pipeline_integration_test_base.cc',
742
+ 'mp4/mp4_stream_parser_unittest.cc',
743
+ 'webm/webm_cluster_parser_unittest.cc',
744
+ ],
745
+ }],
746
+ ['OS == "linux"', {
747
+ 'conditions': [
748
+ ['use_cras == 1', {
749
+ 'sources': [
750
+ 'audio/linux/cras_output_unittest.cc',
751
+ ],
752
+ 'defines': [
753
+ 'USE_CRAS',
754
+ ],
755
+ }],
756
+ ],
757
+ }],
758
+ [ 'target_arch=="ia32" or target_arch=="x64"', {
759
+ 'sources': [
760
+ 'base/simd/convert_rgb_to_yuv_unittest.cc',
761
+ ],
762
+ }],
763
+ ['proprietary_codecs==1 or branding=="Chrome"', {
764
+ 'sources': [
765
+ 'mp4/avc_unittest.cc',
766
+ 'mp4/box_reader_unittest.cc',
767
+ 'mp4/mp4_stream_parser_unittest.cc',
768
+ 'mp4/offset_byte_queue_unittest.cc',
769
+ ],
770
+ }],
771
+ ],
772
+ },
773
+ {
774
+ 'target_name': 'media_test_support',
775
+ 'type': 'static_library',
776
+ 'dependencies': [
777
+ 'media',
778
+ '../base/base.gyp:base',
779
+ '../testing/gmock.gyp:gmock',
780
+ '../testing/gtest.gyp:gtest',
781
+ ],
782
+ 'sources': [
783
+ 'audio/test_audio_input_controller_factory.cc',
784
+ 'audio/test_audio_input_controller_factory.h',
785
+ 'base/mock_callback.cc',
786
+ 'base/mock_callback.h',
787
+ 'base/mock_data_source_host.cc',
788
+ 'base/mock_data_source_host.h',
789
+ 'base/mock_demuxer_host.cc',
790
+ 'base/mock_demuxer_host.h',
791
+ 'base/mock_filter_host.cc',
792
+ 'base/mock_filter_host.h',
793
+ 'base/mock_filters.cc',
794
+ 'base/mock_filters.h',
795
+ ],
796
+ },
797
+ {
798
+ 'target_name': 'scaler_bench',
799
+ 'type': 'executable',
800
+ 'dependencies': [
801
+ 'media',
802
+ 'yuv_convert',
803
+ '../base/base.gyp:base',
804
+ '../skia/skia.gyp:skia',
805
+ ],
806
+ 'sources': [
807
+ 'tools/scaler_bench/scaler_bench.cc',
808
+ ],
809
+ },
810
+ {
811
+ 'target_name': 'qt_faststart',
812
+ 'type': 'executable',
813
+ 'sources': [
814
+ 'tools/qt_faststart/qt_faststart.c'
815
+ ],
816
+ },
817
+ {
818
+ 'target_name': 'seek_tester',
819
+ 'type': 'executable',
820
+ 'dependencies': [
821
+ 'media',
822
+ '../base/base.gyp:base',
823
+ ],
824
+ 'sources': [
825
+ 'tools/seek_tester/seek_tester.cc',
826
+ ],
827
+ },
828
+ ],
829
+ 'conditions': [
830
+ ['OS=="win"', {
831
+ 'targets': [
832
+ {
833
+ 'target_name': 'player_wtl',
834
+ 'type': 'executable',
835
+ 'dependencies': [
836
+ 'media',
837
+ 'yuv_convert',
838
+ '../base/base.gyp:base',
839
+ '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
840
+ '../ui/ui.gyp:ui',
841
+ ],
842
+ 'include_dirs': [
843
+ '<(DEPTH)/third_party/wtl/include',
844
+ ],
845
+ 'sources': [
846
+ 'tools/player_wtl/list.h',
847
+ 'tools/player_wtl/mainfrm.h',
848
+ 'tools/player_wtl/movie.cc',
849
+ 'tools/player_wtl/movie.h',
850
+ 'tools/player_wtl/player_wtl.cc',
851
+ 'tools/player_wtl/player_wtl.rc',
852
+ 'tools/player_wtl/props.h',
853
+ 'tools/player_wtl/seek.h',
854
+ 'tools/player_wtl/resource.h',
855
+ 'tools/player_wtl/view.h',
856
+ ],
857
+ 'msvs_settings': {
858
+ 'VCLinkerTool': {
859
+ 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS
860
+ },
861
+ },
862
+ 'defines': [
863
+ '_CRT_SECURE_NO_WARNINGS=1',
864
+ ],
865
+ },
866
+ ],
867
+ }],
868
+ ['OS == "win" or toolkit_uses_gtk == 1', {
869
+ 'targets': [
870
+ {
871
+ 'target_name': 'shader_bench',
872
+ 'type': 'executable',
873
+ 'dependencies': [
874
+ 'media',
875
+ 'yuv_convert',
876
+ '../base/base.gyp:base',
877
+ '../ui/gl/gl.gyp:gl',
878
+ ],
879
+ 'sources': [
880
+ 'tools/shader_bench/shader_bench.cc',
881
+ 'tools/shader_bench/cpu_color_painter.cc',
882
+ 'tools/shader_bench/cpu_color_painter.h',
883
+ 'tools/shader_bench/gpu_color_painter.cc',
884
+ 'tools/shader_bench/gpu_color_painter.h',
885
+ 'tools/shader_bench/gpu_painter.cc',
886
+ 'tools/shader_bench/gpu_painter.h',
887
+ 'tools/shader_bench/painter.cc',
888
+ 'tools/shader_bench/painter.h',
889
+ 'tools/shader_bench/window.cc',
890
+ 'tools/shader_bench/window.h',
891
+ ],
892
+ 'conditions': [
893
+ ['toolkit_uses_gtk == 1', {
894
+ 'dependencies': [
895
+ '../build/linux/system.gyp:gtk',
896
+ ],
897
+ 'sources': [
898
+ 'tools/shader_bench/window_linux.cc',
899
+ ],
900
+ }],
901
+ ['OS=="win"', {
902
+ 'dependencies': [
903
+ '../third_party/angle/src/build_angle.gyp:libEGL',
904
+ '../third_party/angle/src/build_angle.gyp:libGLESv2',
905
+ ],
906
+ 'sources': [
907
+ 'tools/shader_bench/window_win.cc',
908
+ ],
909
+ }],
910
+ ],
911
+ },
912
+ ],
913
+ }],
914
+ ['OS == "linux" and target_arch != "arm"', {
915
+ 'targets': [
916
+ {
917
+ 'target_name': 'tile_render_bench',
918
+ 'type': 'executable',
919
+ 'dependencies': [
920
+ '../base/base.gyp:base',
921
+ '../ui/gl/gl.gyp:gl',
922
+ ],
923
+ 'libraries': [
924
+ '-lGL',
925
+ '-ldl',
926
+ ],
927
+ 'sources': [
928
+ 'tools/tile_render_bench/tile_render_bench.cc',
929
+ ],
930
+ },
931
+ ],
932
+ }],
933
+ ['os_posix == 1 and OS != "mac" and OS != "android"', {
934
+ 'targets': [
935
+ {
936
+ 'target_name': 'player_x11',
937
+ 'type': 'executable',
938
+ 'dependencies': [
939
+ 'media',
940
+ 'yuv_convert',
941
+ '../base/base.gyp:base',
942
+ '../ui/gl/gl.gyp:gl',
943
+ ],
944
+ 'link_settings': {
945
+ 'libraries': [
946
+ '-ldl',
947
+ '-lX11',
948
+ '-lXrender',
949
+ '-lXext',
950
+ ],
951
+ },
952
+ 'sources': [
953
+ 'tools/player_x11/data_source_logger.cc',
954
+ 'tools/player_x11/data_source_logger.h',
955
+ 'tools/player_x11/gl_video_renderer.cc',
956
+ 'tools/player_x11/gl_video_renderer.h',
957
+ 'tools/player_x11/player_x11.cc',
958
+ 'tools/player_x11/x11_video_renderer.cc',
959
+ 'tools/player_x11/x11_video_renderer.h',
960
+ ],
961
+ },
962
+ ],
963
+ }],
964
+ ['OS == "android"', {
965
+ 'targets': [
966
+ {
967
+ 'target_name': 'player_android',
968
+ 'type': 'static_library',
969
+ 'sources': [
970
+ 'base/android/media_player_bridge.cc',
971
+ 'base/android/media_player_bridge.h',
972
+ ],
973
+ 'dependencies': [
974
+ '../base/base.gyp:base',
975
+ ],
976
+ 'include_dirs': [
977
+ '<(SHARED_INTERMEDIATE_DIR)/media',
978
+ ],
979
+ 'actions': [
980
+ {
981
+ 'action_name': 'generate-jni-headers',
982
+ 'inputs': [
983
+ '../base/android/jni_generator/jni_generator.py',
984
+ 'base/android/java/src/org/chromium/media/MediaPlayerListener.java',
985
+ ],
986
+ 'outputs': [
987
+ '<(SHARED_INTERMEDIATE_DIR)/media/jni/media_player_listener_jni.h',
988
+ ],
989
+ 'action': [
990
+ 'python',
991
+ '<(DEPTH)/base/android/jni_generator/jni_generator.py',
992
+ '-o',
993
+ '<@(_inputs)',
994
+ '<@(_outputs)',
995
+ ],
996
+ },
997
+ ],
998
+ },
999
+ {
1000
+ 'target_name': 'media_java',
1001
+ 'type': 'none',
1002
+ 'dependencies': [ '../base/base.gyp:base_java' ],
1003
+ 'variables': {
1004
+ 'package_name': 'media',
1005
+ 'java_in_dir': 'base/android/java',
1006
+ },
1007
+ 'includes': [ '../build/java.gypi' ],
1008
+ },
1009
+
1010
+ ],
1011
+ }, { # OS != "android"'
1012
+ # Android does not use ffmpeg, so disable the targets which require it.
1013
+ 'targets': [
1014
+ {
1015
+ 'target_name': 'ffmpeg_unittests',
1016
+ 'type': 'executable',
1017
+ 'dependencies': [
1018
+ 'media',
1019
+ 'media_test_support',
1020
+ '../base/base.gyp:base',
1021
+ '../base/base.gyp:base_i18n',
1022
+ '../base/base.gyp:test_support_base',
1023
+ '../base/base.gyp:test_support_perf',
1024
+ '../testing/gtest.gyp:gtest',
1025
+ '../third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
1026
+ ],
1027
+ 'sources': [
1028
+ 'ffmpeg/ffmpeg_unittest.cc',
1029
+ ],
1030
+ 'conditions': [
1031
+ ['toolkit_uses_gtk == 1', {
1032
+ 'dependencies': [
1033
+ # Needed for the following #include chain:
1034
+ # base/run_all_unittests.cc
1035
+ # ../base/test_suite.h
1036
+ # gtk/gtk.h
1037
+ '../build/linux/system.gyp:gtk',
1038
+ ],
1039
+ 'conditions': [
1040
+ ['linux_use_tcmalloc==1', {
1041
+ 'dependencies': [
1042
+ '../base/allocator/allocator.gyp:allocator',
1043
+ ],
1044
+ }],
1045
+ ],
1046
+ }],
1047
+ ],
1048
+ },
1049
+ {
1050
+ 'target_name': 'ffmpeg_regression_tests',
1051
+ 'type': 'executable',
1052
+ 'dependencies': [
1053
+ 'media',
1054
+ 'media_test_support',
1055
+ '../base/base.gyp:test_support_base',
1056
+ '../testing/gmock.gyp:gmock',
1057
+ '../testing/gtest.gyp:gtest',
1058
+ '../third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
1059
+ ],
1060
+ 'sources': [
1061
+ 'base/test_data_util.cc',
1062
+ 'base/run_all_unittests.cc',
1063
+ 'ffmpeg/ffmpeg_regression_tests.cc',
1064
+ 'filters/pipeline_integration_test_base.cc',
1065
+ ],
1066
+ 'conditions': [
1067
+ ['os_posix==1 and OS!="mac"', {
1068
+ 'conditions': [
1069
+ ['linux_use_tcmalloc==1', {
1070
+ 'dependencies': [
1071
+ '../base/allocator/allocator.gyp:allocator',
1072
+ ],
1073
+ }],
1074
+ ],
1075
+ }],
1076
+ ],
1077
+ },
1078
+ {
1079
+ 'target_name': 'ffmpeg_tests',
1080
+ 'type': 'executable',
1081
+ 'dependencies': [
1082
+ 'media',
1083
+ '../base/base.gyp:base',
1084
+ '../third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
1085
+ ],
1086
+ 'sources': [
1087
+ 'test/ffmpeg_tests/ffmpeg_tests.cc',
1088
+ ],
1089
+ },
1090
+ {
1091
+ 'target_name': 'media_bench',
1092
+ 'type': 'executable',
1093
+ 'dependencies': [
1094
+ 'media',
1095
+ '../base/base.gyp:base',
1096
+ '../third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
1097
+ ],
1098
+ 'sources': [
1099
+ 'tools/media_bench/media_bench.cc',
1100
+ ],
1101
+ },
1102
+ ],
1103
+ }]
1104
+ ],
1105
+ }