• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2013 The WebRTC project authors. All Rights Reserved.
2#
3# Use of this source code is governed by a BSD-style license
4# that can be found in the LICENSE file in the root of the source
5# tree. An additional intellectual property rights grant can be found
6# in the file PATENTS.  All contributing project authors may
7# be found in the AUTHORS file in the root of the source tree.
8{
9  'includes': [
10    '../build/common.gypi',
11  ],
12  'targets': [
13    {
14      'target_name': 'webrtc_test_common',
15      'type': 'static_library',
16      'sources': [
17        'configurable_frame_size_encoder.cc',
18        'configurable_frame_size_encoder.h',
19        'direct_transport.cc',
20        'direct_transport.h',
21        'encoder_settings.cc',
22        'encoder_settings.h',
23        'fake_audio_device.cc',
24        'fake_audio_device.h',
25        'fake_decoder.cc',
26        'fake_decoder.h',
27        'fake_encoder.cc',
28        'fake_encoder.h',
29        'fake_network_pipe.cc',
30        'fake_network_pipe.h',
31        'frame_generator_capturer.cc',
32        'frame_generator_capturer.h',
33        'mock_transport.h',
34        'null_transport.cc',
35        'null_transport.h',
36        'rtp_rtcp_observer.h',
37        'run_loop.cc',
38        'run_loop.h',
39        'statistics.cc',
40        'statistics.h',
41        'vcm_capturer.cc',
42        'vcm_capturer.h',
43        'video_capturer.cc',
44        'video_capturer.h',
45        'win/run_loop_win.cc',
46      ],
47      'conditions': [
48        ['OS=="win"', {
49          'sources!': [
50            'run_loop.cc',
51          ],
52        }],
53      ],
54      'dependencies': [
55        '<(DEPTH)/testing/gtest.gyp:gtest',
56        '<(DEPTH)/third_party/gflags/gflags.gyp:gflags',
57        '<(webrtc_root)/modules/modules.gyp:video_capture_module',
58        '<(webrtc_root)/modules/modules.gyp:media_file',
59        '<(webrtc_root)/test/test.gyp:frame_generator',
60        '<(webrtc_root)/test/test.gyp:test_support',
61      ],
62    },
63    {
64      'target_name': 'webrtc_test_renderer',
65      'type': 'static_library',
66      'sources': [
67        'gl/gl_renderer.cc',
68        'gl/gl_renderer.h',
69        'linux/glx_renderer.cc',
70        'linux/glx_renderer.h',
71        'linux/video_renderer_linux.cc',
72        'mac/video_renderer_mac.h',
73        'mac/video_renderer_mac.mm',
74        'null_platform_renderer.cc',
75        'video_renderer.cc',
76        'video_renderer.h',
77        'win/d3d_renderer.cc',
78        'win/d3d_renderer.h',
79      ],
80      'conditions': [
81        ['OS=="linux"', {
82          'sources!': [
83            'null_platform_renderer.cc',
84          ],
85        }],
86        ['OS=="mac"', {
87          'sources!': [
88            'null_platform_renderer.cc',
89          ],
90        }],
91        ['OS!="linux" and OS!="mac"', {
92          'sources!' : [
93            'gl/gl_renderer.cc',
94            'gl/gl_renderer.h',
95          ],
96        }],
97        ['OS=="win"', {
98          'sources!': [
99            'null_platform_renderer.cc',
100          ],
101        }],
102      ],
103      'dependencies': [
104        '<(DEPTH)/testing/gtest.gyp:gtest',
105        '<(webrtc_root)/modules/modules.gyp:video_capture_module',
106        '<(webrtc_root)/modules/modules.gyp:media_file',
107        '<(webrtc_root)/test/test.gyp:frame_generator',
108        '<(webrtc_root)/test/test.gyp:test_support',
109      ],
110      'direct_dependent_settings': {
111        'conditions': [
112          ['OS=="linux"', {
113            'libraries': [
114              '-lXext',
115              '-lX11',
116              '-lGL',
117            ],
118          }],
119          ['OS=="android"', {
120            'libraries' : [
121              '-lGLESv2', '-llog',
122            ],
123          }],
124          ['OS=="mac"', {
125            'xcode_settings' : {
126              'OTHER_LDFLAGS' : [
127                '-framework Cocoa',
128                '-framework OpenGL',
129                '-framework CoreVideo',
130              ],
131            },
132          }],
133        ],
134      },
135    },
136    {
137      # This target is only needed since the video render module builds platform
138      # specific code and depends on these libraries. This target should be
139      # removed as soon as the new video API doesn't depend on the module.
140      # TODO(mflodman) Remove this target as described above.
141      'target_name': 'webrtc_test_video_render_dependencies',
142      'type': 'static_library',
143      'direct_dependent_settings': {
144        'conditions': [
145          ['OS=="linux"', {
146            'libraries': [
147              '-lXext',
148              '-lX11',
149              '-lGL',
150            ],
151          }],
152          ['OS=="android"', {
153            'libraries' : [
154              '-lGLESv2', '-llog',
155            ],
156          }],
157          ['OS=="mac"', {
158            'xcode_settings' : {
159              'OTHER_LDFLAGS' : [
160                '-framework Cocoa',
161                '-framework OpenGL',
162                '-framework CoreVideo',
163              ],
164            },
165          }],
166        ],
167      },
168    },
169  ],
170  'conditions': [
171    ['include_tests==1', {
172      'targets': [
173        {
174          'target_name': 'webrtc_test_common_unittests',
175          'type': '<(gtest_target_type)',
176          'dependencies': [
177            'webrtc_test_common',
178            '<(DEPTH)/testing/gtest.gyp:gtest',
179            '<(DEPTH)/testing/gmock.gyp:gmock',
180            '<(webrtc_root)/test/test.gyp:test_support_main',
181          ],
182          'sources': [
183            'fake_network_pipe_unittest.cc',
184          ],
185        },
186      ],  #targets
187    }],  # include_tests
188  ],  # conditions
189}
190