webrtc_m130/webrtc/webrtc_tests.gypi
kjellander 00984ff688 Reland of move {media,p2p,pc,xmllite,xmpp}_tests.gypi files. (patchset #1 id:1 of https://codereview.webrtc.org/1846693002/ )
The re-land moves the isolate build targets for media.gyp
and pc.gyp into the include_tests==1 condition.
This has been tested in a Chromium checkout and no longer
causes the error that was seen after landing
https://codereview.webrtc.org/1839763004/

Original issue's description:
> Revert of Remove {media,p2p,pc,xmllite,xmpp}_tests.gypi files. (patchset #1 id:1 of https://codereview.webrtc.org/1839763004/ )
>
> Reason for revert:
> Breaks Chromium: https://build.chromium.org/p/chromium.webrtc.fyi/builders/Mac%20Builder/builds/11313/steps/gclient%20runhooks/logs/stdio:
>
> Updating projects from gyp files...
> Using overrides found in /Users/chrome-bot/.gyp/include.gypi
> Traceback (most recent call last):
>   File "src/build/gyp_chromium", line 12, in <module>
>     execfile(__file__ + '.py')
>   File "src/build/gyp_chromium.py", line 341, in <module>
>     sys.exit(main())
>   File "src/build/gyp_chromium.py", line 328, in main
>     gyp_rc = gyp.main(args)
>   File "/b/build/slave/Mac_Builder/build/src/tools/gyp/pylib/gyp/__init__.py", line 538, in main
>     return gyp_main(args)
>   File "/b/build/slave/Mac_Builder/build/src/tools/gyp/pylib/gyp/__init__.py", line 514, in gyp_main
>     options.duplicate_basename_check)
>   File "/b/build/slave/Mac_Builder/build/src/tools/gyp/pylib/gyp/__init__.py", line 130, in Load
>     params['parallel'], params['root_targets'])
>   File "/b/build/slave/Mac_Builder/build/src/tools/gyp/pylib/gyp/input.py", line 2800, in Load
>     RemoveLinkDependenciesFromNoneTargets(targets)
>   File "/b/build/slave/Mac_Builder/build/src/tools/gyp/pylib/gyp/input.py", line 1510, in RemoveLinkDependenciesFromNoneTargets
>     if targets[t].get('variables', {}).get('link_dependency', 0):
> KeyError: '/b/build/slave/Mac_Builder/build/src/third_party/webrtc/media/media.gyp:rtc_media_unittests#target'
> Error: Command '/usr/bin/python src/build/gyp_chromium' returned non-zero exit status 1 in /b/build/slave/Mac_Builder/build
> Hook '/usr/bin/python src/build/gyp_chromium' took 20.29 secs
>
> Original issue's description:
> > Remove {media,p2p,pc,xmllite,xmpp}_tests.gypi files.
> >
> > These contributes to circular dependency problems in WebRTC
> > since one have to depend on webrtc.gyp in order to depend on
> > a target in them.
> >
> > This reduces the number of cyclic dependencies in WebRTC from 21
> > to 16.
> >
> > BUG=webrtc:4243
> > NOTRY=True
> > NOPRESUBMIT=True
> >
> > Committed: https://crrev.com/231b69f28dd22f4e2d98e5048f8eaae7b20915e6
> > Cr-Commit-Position: refs/heads/master@{#12166}
>
> TBR=pthatcher@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:4243
>
> Committed: https://crrev.com/72644d2cf6b14bbc4a107f79158eaa225f3196b5
> Cr-Commit-Position: refs/heads/master@{#12167}

TBR=pthatcher@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:4243

Review URL: https://codereview.webrtc.org/1843193002

Cr-Commit-Position: refs/heads/master@{#12180}
2016-03-31 14:23:52 +00:00

405 lines
12 KiB
Python

# Copyright (c) 2013 The WebRTC project authors. All Rights Reserved.
#
# Use of this source code is governed by a BSD-style license
# that can be found in the LICENSE file in the root of the source
# tree. An additional intellectual property rights grant can be found
# in the file PATENTS. All contributing project authors may
# be found in the AUTHORS file in the root of the source tree.
{
'targets': [
{
'target_name': 'rtc_unittests',
'type': '<(gtest_target_type)',
'dependencies': [
'base/base.gyp:rtc_base',
'base/base_tests.gyp:rtc_base_tests_utils',
'base/base_tests.gyp:rtc_base_tests',
'libjingle/xmllite/xmllite.gyp:rtc_xmllite',
'libjingle/xmpp/xmpp.gyp:rtc_xmpp',
'p2p/p2p.gyp:rtc_p2p',
'p2p/p2p.gyp:libstunprober',
'p2p/p2p.gyp:rtc_p2p_unittest',
'libjingle/xmllite/xmllite.gyp:rtc_xmllite_unittest',
'libjingle/xmpp/xmpp.gyp:rtc_xmpp_unittest',
'<(DEPTH)/testing/gtest.gyp:gtest',
'<(DEPTH)/testing/gmock.gyp:gmock',
],
'conditions': [
['OS=="android"', {
'dependencies': [
'<(DEPTH)/testing/android/native_test.gyp:native_test_native_code',
],
}],
['OS=="ios"', {
'dependencies': [
'api/api_tests.gyp:rtc_api_objc_tests',
]
}]
],
},
{
'target_name': 'webrtc_tests',
'type': 'none',
'dependencies': [
'video_engine_tests',
'video_loopback',
'video_replay',
'webrtc_perf_tests',
'webrtc_nonparallel_tests',
],
},
{
'target_name': 'video_quality_test',
'type': 'static_library',
'sources': [
'video/video_quality_test.cc',
'video/video_quality_test.h',
],
'dependencies': [
'<(DEPTH)/testing/gtest.gyp:gtest',
'<(webrtc_root)/modules/modules.gyp:video_render',
'<(webrtc_root)/modules/modules.gyp:video_capture_module_internal_impl',
'<(webrtc_root)/system_wrappers/system_wrappers.gyp:system_wrappers',
'webrtc',
],
'conditions': [
['OS=="android"', {
'dependencies!': [
'<(webrtc_root)/modules/modules.gyp:video_capture_module_internal_impl',
],
}],
],
},
{
'target_name': 'video_loopback',
'type': 'executable',
'sources': [
'test/mac/run_test.mm',
'test/run_test.cc',
'test/run_test.h',
'video/video_loopback.cc',
],
'conditions': [
['OS=="mac"', {
'sources!': [
'test/run_test.cc',
],
}],
],
'dependencies': [
'video_quality_test',
'<(DEPTH)/testing/gtest.gyp:gtest',
'<(DEPTH)/third_party/gflags/gflags.gyp:gflags',
'test/test.gyp:test_common',
'test/test.gyp:test_main',
'test/test.gyp:test_renderer',
'webrtc',
],
},
{
'target_name': 'screenshare_loopback',
'type': 'executable',
'sources': [
'test/mac/run_test.mm',
'test/run_test.cc',
'test/run_test.h',
'video/screenshare_loopback.cc',
],
'conditions': [
['OS=="mac"', {
'sources!': [
'test/run_test.cc',
],
}],
],
'dependencies': [
'video_quality_test',
'<(DEPTH)/testing/gtest.gyp:gtest',
'<(DEPTH)/third_party/gflags/gflags.gyp:gflags',
'test/test.gyp:test_common',
'test/test.gyp:test_main',
'test/test.gyp:test_renderer',
'webrtc',
],
},
{
'target_name': 'video_replay',
'type': 'executable',
'sources': [
'test/mac/run_test.mm',
'test/run_test.cc',
'test/run_test.h',
'video/replay.cc',
],
'conditions': [
['OS=="mac"', {
'sources!': [
'test/run_test.cc',
],
}],
],
'dependencies': [
'<(DEPTH)/testing/gtest.gyp:gtest',
'<(DEPTH)/third_party/gflags/gflags.gyp:gflags',
'test/test.gyp:test_common',
'test/test.gyp:test_renderer',
'<(webrtc_root)/modules/modules.gyp:video_capture',
'<(webrtc_root)/modules/modules.gyp:video_render',
'<(webrtc_root)/system_wrappers/system_wrappers.gyp:system_wrappers_default',
'webrtc',
],
},
{
# TODO(solenberg): Rename to webrtc_call_tests.
'target_name': 'video_engine_tests',
'type': '<(gtest_target_type)',
'sources': [
'audio/audio_receive_stream_unittest.cc',
'audio/audio_send_stream_unittest.cc',
'audio/audio_state_unittest.cc',
'call/bitrate_allocator_unittest.cc',
'call/bitrate_estimator_tests.cc',
'call/call_unittest.cc',
'call/packet_injection_tests.cc',
'test/common_unittest.cc',
'test/testsupport/metrics/video_metrics_unittest.cc',
'video/call_stats_unittest.cc',
'video/encoder_state_feedback_unittest.cc',
'video/end_to_end_tests.cc',
'video/overuse_frame_detector_unittest.cc',
'video/payload_router_unittest.cc',
'video/report_block_stats_unittest.cc',
'video/send_statistics_proxy_unittest.cc',
'video/stream_synchronization_unittest.cc',
'video/video_capture_input_unittest.cc',
'video/video_decoder_unittest.cc',
'video/video_encoder_unittest.cc',
'video/video_send_stream_tests.cc',
'video/vie_remb_unittest.cc',
],
'dependencies': [
'<(DEPTH)/testing/gmock.gyp:gmock',
'<(DEPTH)/testing/gtest.gyp:gtest',
'<(webrtc_root)/common.gyp:webrtc_common',
'<(webrtc_root)/modules/modules.gyp:rtp_rtcp',
'<(webrtc_root)/modules/modules.gyp:video_capture',
'<(webrtc_root)/modules/modules.gyp:video_render',
'<(webrtc_root)/test/test.gyp:channel_transport',
'<(webrtc_root)/voice_engine/voice_engine.gyp:voice_engine',
'test/metrics.gyp:metrics',
'test/test.gyp:test_common',
'test/test.gyp:test_main',
'webrtc',
],
'conditions': [
['rtc_use_h264==1', {
'defines': [
'WEBRTC_END_TO_END_H264_TESTS',
],
}],
['OS=="android"', {
'dependencies': [
'<(DEPTH)/testing/android/native_test.gyp:native_test_native_code',
],
}],
['OS=="ios"', {
'mac_bundle_resources': [
'<(DEPTH)/resources/foreman_cif_short.yuv',
'<(DEPTH)/resources/voice_engine/audio_long16.pcm',
],
}],
['enable_protobuf==1', {
'defines': [
'ENABLE_RTC_EVENT_LOG',
],
'dependencies': [
'webrtc.gyp:rtc_event_log',
'webrtc.gyp:rtc_event_log_proto',
],
'sources': [
'call/rtc_event_log_unittest.cc',
],
}],
],
},
{
'target_name': 'webrtc_perf_tests',
'type': '<(gtest_target_type)',
'sources': [
'call/call_perf_tests.cc',
'call/rampup_tests.cc',
'call/rampup_tests.h',
'modules/audio_coding/neteq/test/neteq_performance_unittest.cc',
'modules/audio_processing/audio_processing_performance_unittest.cc',
'modules/remote_bitrate_estimator/remote_bitrate_estimators_test.cc',
'video/full_stack.cc',
],
'dependencies': [
'<(DEPTH)/testing/gmock.gyp:gmock',
'<(DEPTH)/testing/gtest.gyp:gtest',
'<(webrtc_root)/modules/modules.gyp:audio_processing',
'<(webrtc_root)/modules/modules.gyp:audioproc_test_utils',
'<(webrtc_root)/modules/modules.gyp:video_capture',
'<(webrtc_root)/test/test.gyp:channel_transport',
'<(webrtc_root)/voice_engine/voice_engine.gyp:voice_engine',
'video_quality_test',
'modules/modules.gyp:neteq_test_support',
'modules/modules.gyp:bwe_simulator',
'modules/modules.gyp:rtp_rtcp',
'test/test.gyp:test_common',
'test/test.gyp:test_main',
'test/test.gyp:test_renderer',
'webrtc',
],
'conditions': [
['OS=="android"', {
'dependencies': [
'<(DEPTH)/testing/android/native_test.gyp:native_test_native_code',
],
}],
],
},
{
'target_name': 'webrtc_nonparallel_tests',
'type': '<(gtest_target_type)',
'sources': [
'base/nullsocketserver_unittest.cc',
'base/physicalsocketserver_unittest.cc',
'base/socket_unittest.cc',
'base/socket_unittest.h',
'base/socketaddress_unittest.cc',
'base/virtualsocket_unittest.cc',
],
'defines': [
'GTEST_RELATIVE_PATH',
],
'dependencies': [
'<(DEPTH)/testing/gtest.gyp:gtest',
'base/base.gyp:rtc_base',
'test/test.gyp:test_main',
],
'conditions': [
['OS=="android"', {
'dependencies': [
'<(DEPTH)/testing/android/native_test.gyp:native_test_native_code',
],
}],
['OS=="win"', {
'sources': [
'base/win32socketserver_unittest.cc',
],
'sources!': [
# TODO(ronghuawu): Fix TestUdpReadyToSendIPv6 on windows bot
# then reenable these tests.
# TODO(pbos): Move test disabling to ifdefs within the test files
# instead of here.
'base/physicalsocketserver_unittest.cc',
'base/socket_unittest.cc',
'base/win32socketserver_unittest.cc',
],
}],
['OS=="mac"', {
'sources': [
'base/macsocketserver_unittest.cc',
],
}],
['OS=="ios" or (OS=="mac" and target_arch!="ia32")', {
'defines': [
'CARBON_DEPRECATED=YES',
],
}],
],
},
],
'conditions': [
['OS=="android"', {
'targets': [
{
'target_name': 'rtc_unittests_apk_target',
'type': 'none',
'dependencies': [
'<(apk_tests_path):rtc_unittests_apk',
],
},
{
'target_name': 'video_engine_tests_apk_target',
'type': 'none',
'dependencies': [
'<(apk_tests_path):video_engine_tests_apk',
],
},
{
'target_name': 'webrtc_perf_tests_apk_target',
'type': 'none',
'dependencies': [
'<(apk_tests_path):webrtc_perf_tests_apk',
],
},
{
'target_name': 'webrtc_nonparallel_tests_apk_target',
'type': 'none',
'dependencies': [
'<(apk_tests_path):webrtc_nonparallel_tests_apk',
],
},
],
}],
['test_isolation_mode != "noop"', {
'targets': [
{
'target_name': 'rtc_unittests_run',
'type': 'none',
'dependencies': [
'rtc_unittests',
],
'includes': [
'build/isolate.gypi',
],
'sources': [
'rtc_unittests.isolate',
],
},
{
'target_name': 'video_engine_tests_run',
'type': 'none',
'dependencies': [
'video_engine_tests',
],
'includes': [
'build/isolate.gypi',
],
'sources': [
'video_engine_tests.isolate',
],
},
{
'target_name': 'webrtc_nonparallel_tests_run',
'type': 'none',
'dependencies': [
'webrtc_nonparallel_tests',
],
'includes': [
'build/isolate.gypi',
],
'sources': [
'webrtc_nonparallel_tests.isolate',
],
},
{
'target_name': 'webrtc_perf_tests_run',
'type': 'none',
'dependencies': [
'webrtc_perf_tests',
],
'includes': [
'build/isolate.gypi',
],
'sources': [
'webrtc_perf_tests.isolate',
],
},
],
}],
],
}