andrew@webrtc.org | 19eefdc | 2011-09-14 17:02:44 +0000 | [diff] [blame] | 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': [ |
andrew@webrtc.org | 81cf5e4 | 2012-06-27 01:41:54 +0000 | [diff] [blame] | 12 | '../build/common.gypi', |
andrew@webrtc.org | 19eefdc | 2011-09-14 17:02:44 +0000 | [diff] [blame] | 13 | ], |
| 14 | 'targets': [ |
| 15 | { |
kjellander@webrtc.org | 6c35e0b | 2013-06-11 08:29:17 +0000 | [diff] [blame] | 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 | { |
andrew@webrtc.org | 19eefdc | 2011-09-14 17:02:44 +0000 | [diff] [blame] | 45 | 'target_name': 'test_support', |
| 46 | 'type': 'static_library', |
| 47 | 'dependencies': [ |
andrew@webrtc.org | 81cf5e4 | 2012-06-27 01:41:54 +0000 | [diff] [blame] | 48 | '<(DEPTH)/testing/gtest.gyp:gtest', |
| 49 | '<(DEPTH)/testing/gmock.gyp:gmock', |
andrew@webrtc.org | aa3d1c8 | 2013-09-05 21:16:29 +0000 | [diff] [blame] | 50 | '<(DEPTH)/third_party/gflags/gflags.gyp:gflags', |
andrew@webrtc.org | c1ffd33 | 2013-03-22 17:13:23 +0000 | [diff] [blame] | 51 | '<(webrtc_root)/system_wrappers/source/system_wrappers.gyp:system_wrappers', |
andrew@webrtc.org | 19eefdc | 2011-09-14 17:02:44 +0000 | [diff] [blame] | 52 | ], |
| 53 | 'sources': [ |
| 54 | 'test_suite.cc', |
| 55 | 'test_suite.h', |
henrike@webrtc.org | 34773d9 | 2013-07-08 14:55:23 +0000 | [diff] [blame] | 56 | 'testsupport/android/root_path_android.cc', |
| 57 | 'testsupport/android/root_path_android_chromium.cc', |
kjellander@webrtc.org | 7951e81 | 2011-10-13 12:24:41 +0000 | [diff] [blame] | 58 | 'testsupport/fileutils.cc', |
andrew@webrtc.org | 2009f6b | 2012-11-20 00:20:20 +0000 | [diff] [blame] | 59 | 'testsupport/fileutils.h', |
kjellander@webrtc.org | 5b97b12 | 2011-12-08 07:42:18 +0000 | [diff] [blame] | 60 | 'testsupport/frame_reader.cc', |
andrew@webrtc.org | 2009f6b | 2012-11-20 00:20:20 +0000 | [diff] [blame] | 61 | 'testsupport/frame_reader.h', |
kjellander@webrtc.org | 5b97b12 | 2011-12-08 07:42:18 +0000 | [diff] [blame] | 62 | 'testsupport/frame_writer.cc', |
andrew@webrtc.org | 2009f6b | 2012-11-20 00:20:20 +0000 | [diff] [blame] | 63 | 'testsupport/frame_writer.h', |
kjellander@webrtc.org | 51198f1 | 2012-02-21 17:53:46 +0000 | [diff] [blame] | 64 | 'testsupport/gtest_prod_util.h', |
phoglund@webrtc.org | d005468 | 2013-01-09 16:53:42 +0000 | [diff] [blame] | 65 | 'testsupport/gtest_disable.h', |
kjellander@webrtc.org | 5b97b12 | 2011-12-08 07:42:18 +0000 | [diff] [blame] | 66 | 'testsupport/mock/mock_frame_reader.h', |
| 67 | 'testsupport/mock/mock_frame_writer.h', |
andrew@webrtc.org | 2009f6b | 2012-11-20 00:20:20 +0000 | [diff] [blame] | 68 | 'testsupport/packet_reader.cc', |
| 69 | 'testsupport/packet_reader.h', |
| 70 | 'testsupport/perf_test.cc', |
| 71 | 'testsupport/perf_test.h', |
andrew@webrtc.org | b87cc85 | 2013-03-25 16:23:37 +0000 | [diff] [blame] | 72 | 'testsupport/trace_to_stderr.cc', |
| 73 | 'testsupport/trace_to_stderr.h', |
kjellander@webrtc.org | 7951e81 | 2011-10-13 12:24:41 +0000 | [diff] [blame] | 74 | ], |
henrike@webrtc.org | 34773d9 | 2013-07-08 14:55:23 +0000 | [diff] [blame] | 75 | 'conditions': [ |
| 76 | # TODO(henrike): remove build_with_chromium==1 when the bots are using |
| 77 | # Chromium's buildbots. |
| 78 | ['build_with_chromium==1 and OS=="android" and gtest_target_type=="shared_library"', { |
| 79 | 'dependencies': [ |
| 80 | '<(DEPTH)/base/base.gyp:base', |
| 81 | ], |
| 82 | 'sources!': [ |
| 83 | 'testsupport/android/root_path_android.cc', |
| 84 | ], |
henrike@webrtc.org | 34773d9 | 2013-07-08 14:55:23 +0000 | [diff] [blame] | 85 | }, { |
| 86 | 'sources!': [ |
| 87 | 'testsupport/android/root_path_android_chromium.cc', |
| 88 | ], |
| 89 | }], |
| 90 | ], |
kjellander@webrtc.org | 7951e81 | 2011-10-13 12:24:41 +0000 | [diff] [blame] | 91 | }, |
| 92 | { |
kjellander@webrtc.org | 1a8d08a | 2011-11-03 23:28:47 +0000 | [diff] [blame] | 93 | # Depend on this target when you want to have test_support but also the |
| 94 | # main method needed for gtest to execute! |
| 95 | 'target_name': 'test_support_main', |
| 96 | 'type': 'static_library', |
| 97 | 'dependencies': [ |
| 98 | 'test_support', |
| 99 | ], |
| 100 | 'sources': [ |
| 101 | 'run_all_unittests.cc', |
| 102 | ], |
| 103 | }, |
| 104 | { |
phoglund@webrtc.org | 54e22eb | 2012-08-08 08:27:46 +0000 | [diff] [blame] | 105 | # Depend on this target when you want to have test_support and a special |
| 106 | # main for mac which will run your test on a worker thread and consume |
| 107 | # events on the main thread. Useful if you want to access a webcam. |
| 108 | # This main will provide all the scaffolding and objective-c black magic |
| 109 | # for you. All you need to do is to implement a function in the |
| 110 | # run_threaded_main_mac.h file (ImplementThisToRunYourTest). |
| 111 | 'target_name': 'test_support_main_threaded_mac', |
| 112 | 'type': 'static_library', |
| 113 | 'dependencies': [ |
| 114 | 'test_support', |
| 115 | ], |
| 116 | 'sources': [ |
| 117 | 'testsupport/mac/run_threaded_main_mac.h', |
| 118 | 'testsupport/mac/run_threaded_main_mac.mm', |
| 119 | ], |
| 120 | }, |
| 121 | { |
kjellander@webrtc.org | 7951e81 | 2011-10-13 12:24:41 +0000 | [diff] [blame] | 122 | 'target_name': 'test_support_unittests', |
henrike@webrtc.org | 89c6740 | 2013-08-02 16:53:47 +0000 | [diff] [blame] | 123 | 'type': '<(gtest_target_type)', |
kjellander@webrtc.org | 7951e81 | 2011-10-13 12:24:41 +0000 | [diff] [blame] | 124 | 'dependencies': [ |
kjellander@webrtc.org | 6c35e0b | 2013-06-11 08:29:17 +0000 | [diff] [blame] | 125 | 'channel_transport', |
kjellander@webrtc.org | 1a8d08a | 2011-11-03 23:28:47 +0000 | [diff] [blame] | 126 | 'test_support_main', |
kjellander@webrtc.org | 6c35e0b | 2013-06-11 08:29:17 +0000 | [diff] [blame] | 127 | '<(DEPTH)/testing/gmock.gyp:gmock', |
andrew@webrtc.org | 81cf5e4 | 2012-06-27 01:41:54 +0000 | [diff] [blame] | 128 | '<(DEPTH)/testing/gtest.gyp:gtest', |
kjellander@webrtc.org | 7951e81 | 2011-10-13 12:24:41 +0000 | [diff] [blame] | 129 | ], |
kjellander@webrtc.org | 1a8d08a | 2011-11-03 23:28:47 +0000 | [diff] [blame] | 130 | 'sources': [ |
kjellander@webrtc.org | 6c35e0b | 2013-06-11 08:29:17 +0000 | [diff] [blame] | 131 | 'channel_transport/udp_transport_unittest.cc', |
| 132 | 'channel_transport/udp_socket_manager_unittest.cc', |
| 133 | 'channel_transport/udp_socket_wrapper_unittest.cc', |
kjellander@webrtc.org | 5b97b12 | 2011-12-08 07:42:18 +0000 | [diff] [blame] | 134 | 'testsupport/unittest_utils.h', |
kjellander@webrtc.org | 7951e81 | 2011-10-13 12:24:41 +0000 | [diff] [blame] | 135 | 'testsupport/fileutils_unittest.cc', |
kjellander@webrtc.org | 5b97b12 | 2011-12-08 07:42:18 +0000 | [diff] [blame] | 136 | 'testsupport/frame_reader_unittest.cc', |
| 137 | 'testsupport/frame_writer_unittest.cc', |
| 138 | 'testsupport/packet_reader_unittest.cc', |
andrew@webrtc.org | 2009f6b | 2012-11-20 00:20:20 +0000 | [diff] [blame] | 139 | 'testsupport/perf_test_unittest.cc', |
andrew@webrtc.org | 19eefdc | 2011-09-14 17:02:44 +0000 | [diff] [blame] | 140 | ], |
kjellander@webrtc.org | 6c35e0b | 2013-06-11 08:29:17 +0000 | [diff] [blame] | 141 | # Disable warnings to enable Win64 build, issue 1323. |
| 142 | 'msvs_disabled_warnings': [ |
| 143 | 4267, # size_t to int truncation. |
| 144 | ], |
henrike@webrtc.org | 89c6740 | 2013-08-02 16:53:47 +0000 | [diff] [blame] | 145 | 'conditions': [ |
| 146 | # TODO(henrike): remove build_with_chromium==1 when the bots are |
| 147 | # using Chromium's buildbots. |
| 148 | ['build_with_chromium==1 and OS=="android" and gtest_target_type=="shared_library"', { |
| 149 | 'dependencies': [ |
| 150 | '<(DEPTH)/testing/android/native_test.gyp:native_test_native_code', |
| 151 | ], |
| 152 | }], |
| 153 | ], |
andrew@webrtc.org | 19eefdc | 2011-09-14 17:02:44 +0000 | [diff] [blame] | 154 | }, |
andrew@webrtc.org | 19eefdc | 2011-09-14 17:02:44 +0000 | [diff] [blame] | 155 | ], |
henrike@webrtc.org | 89c6740 | 2013-08-02 16:53:47 +0000 | [diff] [blame] | 156 | 'conditions': [ |
kjellander@webrtc.org | 5b3b6b1 | 2013-10-10 08:48:16 +0000 | [diff] [blame] | 157 | ['build_with_chromium==0', { |
| 158 | 'targets': [ |
| 159 | { |
| 160 | 'target_name': 'buildbot_tests_scripts', |
| 161 | 'type': 'none', |
| 162 | 'copies': [ |
| 163 | { |
| 164 | 'destination': '<(PRODUCT_DIR)', |
| 165 | 'files': [ |
| 166 | 'buildbot_tests.py', |
| 167 | '<(webrtc_root)/tools/e2e_quality/audio/run_audio_test.py', |
| 168 | ], |
| 169 | }, |
| 170 | { |
| 171 | 'destination': '<(PRODUCT_DIR)/perf', |
| 172 | 'files': [ |
| 173 | '<(DEPTH)/tools/perf/__init__.py', |
| 174 | '<(DEPTH)/tools/perf/perf_utils.py', |
| 175 | ], |
| 176 | }, |
| 177 | ], |
| 178 | }, # target buildbot_tests_scripts |
| 179 | ], |
| 180 | }], |
henrike@webrtc.org | 89c6740 | 2013-08-02 16:53:47 +0000 | [diff] [blame] | 181 | # TODO(henrike): remove build_with_chromium==1 when the bots are using |
| 182 | # Chromium's buildbots. |
| 183 | ['include_tests==1 and build_with_chromium==1 and OS=="android" and gtest_target_type=="shared_library"', { |
| 184 | 'targets': [ |
| 185 | { |
| 186 | 'target_name': 'test_support_unittests_apk_target', |
| 187 | 'type': 'none', |
| 188 | 'dependencies': [ |
| 189 | '<(apk_tests_path):test_support_unittests_apk', |
| 190 | ], |
| 191 | }, |
| 192 | ], |
| 193 | }], |
kjellander@webrtc.org | 3365422 | 2013-08-22 07:57:00 +0000 | [diff] [blame] | 194 | ['test_isolation_mode != "noop"', { |
| 195 | 'targets': [ |
| 196 | { |
| 197 | 'target_name': 'test_support_unittests_run', |
| 198 | 'type': 'none', |
| 199 | 'dependencies': [ |
kjellander@webrtc.org | 3365422 | 2013-08-22 07:57:00 +0000 | [diff] [blame] | 200 | 'test_support_unittests', |
| 201 | ], |
| 202 | 'includes': [ |
kjellander@webrtc.org | 2a97317 | 2013-10-02 19:31:16 +0000 | [diff] [blame] | 203 | '../build/isolate.gypi', |
kjellander@webrtc.org | 3365422 | 2013-08-22 07:57:00 +0000 | [diff] [blame] | 204 | 'test_support_unittests.isolate', |
| 205 | ], |
| 206 | 'sources': [ |
| 207 | 'test_support_unittests.isolate', |
| 208 | ], |
| 209 | }, |
| 210 | ], |
| 211 | }], |
henrike@webrtc.org | 89c6740 | 2013-08-02 16:53:47 +0000 | [diff] [blame] | 212 | ], |
andrew@webrtc.org | 19eefdc | 2011-09-14 17:02:44 +0000 | [diff] [blame] | 213 | } |