Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / third_party / webrtc / test / test.gyp
1 # Copyright (c) 2011 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 # TODO(andrew): consider moving test_support to src/base/test.
10 {
11   'includes': [
12     '../build/common.gypi',
13   ],
14   'targets': [
15     {
16       'target_name': 'channel_transport',
17       'type': 'static_library',
18       'dependencies': [
19         '<(DEPTH)/testing/gtest.gyp:gtest',
20         '<(webrtc_root)/system_wrappers/source/system_wrappers.gyp:system_wrappers',
21       ],
22       'sources': [
23         'channel_transport/channel_transport.cc',
24         'channel_transport/include/channel_transport.h',
25         'channel_transport/traffic_control_win.cc',
26         'channel_transport/traffic_control_win.h',
27         'channel_transport/udp_socket_manager_posix.cc',
28         'channel_transport/udp_socket_manager_posix.h',
29         'channel_transport/udp_socket_manager_wrapper.cc',
30         'channel_transport/udp_socket_manager_wrapper.h',
31         'channel_transport/udp_socket_posix.cc',
32         'channel_transport/udp_socket_posix.h',
33         'channel_transport/udp_socket_wrapper.cc',
34         'channel_transport/udp_socket_wrapper.h',
35         'channel_transport/udp_socket2_manager_win.cc',
36         'channel_transport/udp_socket2_manager_win.h',
37         'channel_transport/udp_socket2_win.cc',
38         'channel_transport/udp_socket2_win.h',
39         'channel_transport/udp_transport.h',
40         'channel_transport/udp_transport_impl.cc',
41         'channel_transport/udp_transport_impl.h',
42       ],
43     },
44     {
45       'target_name': 'frame_generator',
46       'type': 'static_library',
47       'sources': [
48         'frame_generator.cc',
49         'frame_generator.h',
50       ],
51       'dependencies': [
52         '<(webrtc_root)/common_video/common_video.gyp:common_video',
53       ],
54     },
55     {
56       'target_name': 'rtcp_packet_parser',
57       'type': 'static_library',
58       'sources': [
59         'rtcp_packet_parser.cc',
60         'rtcp_packet_parser.h',
61       ],
62       'dependencies': [
63         '<(webrtc_root)/modules/modules.gyp:rtp_rtcp',
64       ],
65     },
66     {
67       'target_name': 'field_trial',
68       'type': 'static_library',
69       'sources': [
70         'field_trial.cc',
71         'field_trial.h',
72       ],
73       'dependencies': [
74         '<(webrtc_root)/system_wrappers/source/system_wrappers.gyp:system_wrappers',
75       ],
76     },
77     {
78       'target_name': 'test_main',
79       'type': 'static_library',
80       'sources': [
81         'test_main.cc',
82       ],
83       'dependencies': [
84         'field_trial',
85         '<(DEPTH)/testing/gtest.gyp:gtest',
86         '<(DEPTH)/third_party/gflags/gflags.gyp:gflags',
87       ],
88     },
89     {
90       'target_name': 'test_support',
91       'type': 'static_library',
92       'dependencies': [
93         '<(DEPTH)/testing/gtest.gyp:gtest',
94         '<(DEPTH)/testing/gmock.gyp:gmock',
95         '<(webrtc_root)/system_wrappers/source/system_wrappers.gyp:system_wrappers',
96       ],
97       'sources': [
98         'testsupport/android/root_path_android.cc',
99         'testsupport/android/root_path_android_chromium.cc',
100         'testsupport/fileutils.cc',
101         'testsupport/fileutils.h',
102         'testsupport/frame_reader.cc',
103         'testsupport/frame_reader.h',
104         'testsupport/frame_writer.cc',
105         'testsupport/frame_writer.h',
106         'testsupport/gtest_prod_util.h',
107         'testsupport/gtest_disable.h',
108         'testsupport/mock/mock_frame_reader.h',
109         'testsupport/mock/mock_frame_writer.h',
110         'testsupport/packet_reader.cc',
111         'testsupport/packet_reader.h',
112         'testsupport/perf_test.cc',
113         'testsupport/perf_test.h',
114         'testsupport/trace_to_stderr.cc',
115         'testsupport/trace_to_stderr.h',
116       ],
117       'conditions': [
118         ['OS=="android"', {
119           'dependencies': [
120             '<(DEPTH)/base/base.gyp:base',
121           ],
122           'sources!': [
123             'testsupport/android/root_path_android.cc',
124           ],
125         }, {
126           'sources!': [
127             'testsupport/android/root_path_android_chromium.cc',
128           ],
129         }],
130       ],
131     },
132     {
133       # Depend on this target when you want to have test_support but also the
134       # main method needed for gtest to execute!
135       'target_name': 'test_support_main',
136       'type': 'static_library',
137       'dependencies': [
138         'field_trial',
139         'test_support',
140         '<(DEPTH)/testing/gmock.gyp:gmock',
141         '<(DEPTH)/testing/gtest.gyp:gtest',
142         '<(DEPTH)/third_party/gflags/gflags.gyp:gflags',
143       ],
144       'sources': [
145         'run_all_unittests.cc',
146         'test_suite.cc',
147         'test_suite.h',
148       ],
149     },
150     {
151       # Depend on this target when you want to have test_support and a special
152       # main for mac which will run your test on a worker thread and consume
153       # events on the main thread. Useful if you want to access a webcam.
154       # This main will provide all the scaffolding and objective-c black magic
155       # for you. All you need to do is to implement a function in the
156       # run_threaded_main_mac.h file (ImplementThisToRunYourTest).
157       'target_name': 'test_support_main_threaded_mac',
158       'type': 'static_library',
159       'dependencies': [
160         'test_support',
161       ],
162       'sources': [
163         'testsupport/mac/run_threaded_main_mac.h',
164         'testsupport/mac/run_threaded_main_mac.mm',
165       ],
166     },
167     {
168       'target_name': 'test_support_unittests',
169       'type': '<(gtest_target_type)',
170       'dependencies': [
171         'channel_transport',
172         'test_support_main',
173         '<(DEPTH)/testing/gmock.gyp:gmock',
174         '<(DEPTH)/testing/gtest.gyp:gtest',
175       ],
176       'sources': [
177         'channel_transport/udp_transport_unittest.cc',
178         'channel_transport/udp_socket_manager_unittest.cc',
179         'channel_transport/udp_socket_wrapper_unittest.cc',
180         'testsupport/always_passing_unittest.cc',
181         'testsupport/unittest_utils.h',
182         'testsupport/fileutils_unittest.cc',
183         'testsupport/frame_reader_unittest.cc',
184         'testsupport/frame_writer_unittest.cc',
185         'testsupport/packet_reader_unittest.cc',
186         'testsupport/perf_test_unittest.cc',
187       ],
188       # Disable warnings to enable Win64 build, issue 1323.
189       'msvs_disabled_warnings': [
190         4267,  # size_t to int truncation.
191       ],
192       'conditions': [
193         ['OS=="android"', {
194           'dependencies': [
195             '<(DEPTH)/testing/android/native_test.gyp:native_test_native_code',
196           ],
197         }],
198       ],
199     },
200   ],
201   'conditions': [
202     ['include_tests==1 and OS=="android"', {
203       'targets': [
204         {
205           'target_name': 'test_support_unittests_apk_target',
206           'type': 'none',
207           'dependencies': [
208             '<(apk_tests_path):test_support_unittests_apk',
209           ],
210         },
211       ],
212     }],
213     ['test_isolation_mode != "noop"', {
214       'targets': [
215         {
216           'target_name': 'test_support_unittests_run',
217           'type': 'none',
218           'dependencies': [
219             'test_support_unittests',
220           ],
221           'includes': [
222             '../build/isolate.gypi',
223             'test_support_unittests.isolate',
224           ],
225           'sources': [
226             'test_support_unittests.isolate',
227           ],
228         },
229       ],
230     }],
231   ],
232 }